This document discusses various aspects of software development processes. It begins with an overview of traditional waterfall software development processes versus more modern agile processes. It then covers source code management tools and how they have evolved from centralized version control to distributed version control. Next, it discusses important software development processes such as determining origin of code, export controls, licensing, and copyright. Finally, it briefly outlines different levels of software support and how client self-assist is evolving to provide more automated support capabilities.
This document discusses various aspects of software development processes. It begins with an overview of traditional waterfall software development processes versus more modern agile processes. It then covers source code management tools and how they have evolved from centralized version control to distributed version control. Next, it discusses important software development processes such as determining origin of code, export controls, licensing, and copyright. Finally, it briefly outlines different levels of software support and how client self-assist is evolving to provide more automated support capabilities.
Culture, Economy, Community: A Cultural Plan for Chatham-KentEmily Robson
Presentation delivered by Anne Gilbert, Councilor, Municipality of Chatham-Kent at November 27 2008 "Economies in Transition" forum in Chatham, Ontario.
This document discusses using Go and microservices for building a notification service for a delivery application. It covers concepts of monoliths and microservices, why Go is suited for microservices, and how to implement a notification service using Go interfaces, goroutines, channels, and concurrency. It also discusses deployment with Docker, error handling, and analyzing metrics and data flow between services.
The document discusses HIV and its impacts in Malawi, including on education. Some key points:
- HIV highly prevalent in Malawi, affecting 12% of people aged 15-49 on average and up to 30-35% of pregnant women. Nearly 1 million people are living with HIV.
- HIV impacts education through orphanhood, students caring for ill family members, absenteeism of students and teachers. Promotion and dropout rates are significantly worse for females and those in the poorest areas.
- Reasons for dropout include sickness, pregnancy, marriage, family needs, employment, and death. Strategies are outlined to improve school health, nutrition, and management of these programs in Malawi.
The document discusses integration and integration techniques. It defines integration as connecting different applications within an enterprise so they can exchange data and interoperate as needed. Integration can occur at the process, application, or data level. Common integration techniques include standard data definitions, databases, middleware, message-based integration using buses or brokers, and software-based integration using adapters or RPCs. The document also discusses common software architectures like layered systems, client-server, and service-oriented architecture and how they support integration.
Presentation about learning English in the virtual world of Second Life. A proven way to help motivate learners and create immersive learning opportunities.
Bloom Filter Based Routing for Content-Based Publish/SubscribeZbigniew Jerzak
Achieving expressive and efficient content-based
routing in publish/subscribe systems is a difficult problem. Traditional
approaches prove to be either inefficient or severely limited in their
expressiveness and flexibility. We present a novel routing method, based on
Bloom filters, which shows high efficiency while simultaneously preserving
the flexibility of content-based schemes. The resulting implementation is a
fast, flexible and fully decoupled content-based publish/subscribe system.
This document discusses three Photoshop tools: Blur, which allows setting the size to blur areas; Sharpen, which allows setting the size to sharpen selected areas; and Smudge, which allows setting the size to smudge or smear areas. The document ends lesson number 3.
This document outlines different components of permaculture food systems, including:
1. Various food groups like fruits, vegetables, legumes, and animal foods that can be grown.
2. Elements that support the soil like nitrogen-fixing legumes, compost, mulch, and deep-rooted plants.
3. Vertical elements like climbers, trees, and structures that other plants can be supported on.
4. Ground covers and plants that protect the system from pests.
5. Integrated approaches that combine elements like fish ponds, water features, and animals.
This document discusses Second Life and its potential business applications for human resources (HR) functions. It notes that Second Life has over 16 million members and aspects like socializing and economic activity are migrating to virtual worlds. The document argues that as new digital generations who are comfortable with gaming and virtual worlds enter the workforce, virtual worlds will become increasingly important platforms for HR activities like recruiting, onboarding, training and career development. It provides some examples of how companies like IBM are using Second Life for various HR functions.
The document outlines 10 qualities of an ideal future marketing researcher: having a passion to improve, challenging conventions, caring about raw data, delivering unique analyses, focusing on detail, prioritizing customer experiences, believing in teamwork, making the industry more appealing, maintaining an open mind, and drawing inspiration from various sources. It encourages those with these traits to apply for open positions at the company by visiting the provided website or contacting them directly.
This document discusses three Photoshop tools: Blur, which allows setting the size to blur areas; Sharpen, which allows setting the size to sharpen selected areas; and Smudge, which allows setting the size to smudge or smear areas. The document ends lesson number 3.
The document summarizes the landmark 1954 polio vaccine trial led by Jonas Salk. It discusses:
- The urgency to develop an effective polio vaccine due to rising polio cases
- Debate over trial design, with some opposing randomization on ethical grounds
- Unprecedented scale of trial involving 1.8 million children across 44 states
- Results showing the inactivated polio vaccine was safe and effective at preventing paralytic polio
- Trial's impact in accelerating vaccine development and approval, and establishing the importance of randomized controlled trials in medicine
Saint Valentine's Day originated from a 5th century Roman festival where young men would draw girls' names from a box to be their partner for the year. Pope Gelasius replaced this pagan festival with having people draw saints' names to emulate. Valentine, a Catholic bishop, secretly married couples against the emperor's orders and was executed. He healed his jailer's daughter before his death, signing a message to her that started the tradition of exchanging love messages on Valentine's Day.
Economies in Transition: Leveraing Cultural Assets for Prosperityes In Transi...Emily Robson
Presentation delivered by Peter Kenyon, Director of Bank of I.D.E.A.S in Perth, Australia. The presentation explores asset-based community development projects in rural and remote Australia and New Zealand. The presentation was delivered to The Ontario Rural Council's municipal cultural planning forum
Culture, Economy, Community: A Cultural Plan for Chatham-KentEmily Robson
Presentation delivered by Anne Gilbert, Councilor, Municipality of Chatham-Kent at November 27 2008 "Economies in Transition" forum in Chatham, Ontario.
This document discusses using Go and microservices for building a notification service for a delivery application. It covers concepts of monoliths and microservices, why Go is suited for microservices, and how to implement a notification service using Go interfaces, goroutines, channels, and concurrency. It also discusses deployment with Docker, error handling, and analyzing metrics and data flow between services.
The document discusses HIV and its impacts in Malawi, including on education. Some key points:
- HIV highly prevalent in Malawi, affecting 12% of people aged 15-49 on average and up to 30-35% of pregnant women. Nearly 1 million people are living with HIV.
- HIV impacts education through orphanhood, students caring for ill family members, absenteeism of students and teachers. Promotion and dropout rates are significantly worse for females and those in the poorest areas.
- Reasons for dropout include sickness, pregnancy, marriage, family needs, employment, and death. Strategies are outlined to improve school health, nutrition, and management of these programs in Malawi.
The document discusses integration and integration techniques. It defines integration as connecting different applications within an enterprise so they can exchange data and interoperate as needed. Integration can occur at the process, application, or data level. Common integration techniques include standard data definitions, databases, middleware, message-based integration using buses or brokers, and software-based integration using adapters or RPCs. The document also discusses common software architectures like layered systems, client-server, and service-oriented architecture and how they support integration.
Presentation about learning English in the virtual world of Second Life. A proven way to help motivate learners and create immersive learning opportunities.
Bloom Filter Based Routing for Content-Based Publish/SubscribeZbigniew Jerzak
Achieving expressive and efficient content-based
routing in publish/subscribe systems is a difficult problem. Traditional
approaches prove to be either inefficient or severely limited in their
expressiveness and flexibility. We present a novel routing method, based on
Bloom filters, which shows high efficiency while simultaneously preserving
the flexibility of content-based schemes. The resulting implementation is a
fast, flexible and fully decoupled content-based publish/subscribe system.
This document discusses three Photoshop tools: Blur, which allows setting the size to blur areas; Sharpen, which allows setting the size to sharpen selected areas; and Smudge, which allows setting the size to smudge or smear areas. The document ends lesson number 3.
This document outlines different components of permaculture food systems, including:
1. Various food groups like fruits, vegetables, legumes, and animal foods that can be grown.
2. Elements that support the soil like nitrogen-fixing legumes, compost, mulch, and deep-rooted plants.
3. Vertical elements like climbers, trees, and structures that other plants can be supported on.
4. Ground covers and plants that protect the system from pests.
5. Integrated approaches that combine elements like fish ponds, water features, and animals.
This document discusses Second Life and its potential business applications for human resources (HR) functions. It notes that Second Life has over 16 million members and aspects like socializing and economic activity are migrating to virtual worlds. The document argues that as new digital generations who are comfortable with gaming and virtual worlds enter the workforce, virtual worlds will become increasingly important platforms for HR activities like recruiting, onboarding, training and career development. It provides some examples of how companies like IBM are using Second Life for various HR functions.
The document outlines 10 qualities of an ideal future marketing researcher: having a passion to improve, challenging conventions, caring about raw data, delivering unique analyses, focusing on detail, prioritizing customer experiences, believing in teamwork, making the industry more appealing, maintaining an open mind, and drawing inspiration from various sources. It encourages those with these traits to apply for open positions at the company by visiting the provided website or contacting them directly.
This document discusses three Photoshop tools: Blur, which allows setting the size to blur areas; Sharpen, which allows setting the size to sharpen selected areas; and Smudge, which allows setting the size to smudge or smear areas. The document ends lesson number 3.
The document summarizes the landmark 1954 polio vaccine trial led by Jonas Salk. It discusses:
- The urgency to develop an effective polio vaccine due to rising polio cases
- Debate over trial design, with some opposing randomization on ethical grounds
- Unprecedented scale of trial involving 1.8 million children across 44 states
- Results showing the inactivated polio vaccine was safe and effective at preventing paralytic polio
- Trial's impact in accelerating vaccine development and approval, and establishing the importance of randomized controlled trials in medicine
Saint Valentine's Day originated from a 5th century Roman festival where young men would draw girls' names from a box to be their partner for the year. Pope Gelasius replaced this pagan festival with having people draw saints' names to emulate. Valentine, a Catholic bishop, secretly married couples against the emperor's orders and was executed. He healed his jailer's daughter before his death, signing a message to her that started the tradition of exchanging love messages on Valentine's Day.
Economies in Transition: Leveraing Cultural Assets for Prosperityes In Transi...Emily Robson
Presentation delivered by Peter Kenyon, Director of Bank of I.D.E.A.S in Perth, Australia. The presentation explores asset-based community development projects in rural and remote Australia and New Zealand. The presentation was delivered to The Ontario Rural Council's municipal cultural planning forum
Veselin Nikolov has been a developer since 1998 and has worked at Automattic since 2011 where he currently leads the Store Developers team. As a technical leader, he faces more communication, interruptions, pressure, responsibilities and dealing with people not doing what is expected compared to his previous role as an individual contributor. Effective management of other technical people requires maintaining technical skills, clear communication of tasks and responsibilities within the team, and understanding different roles within the organization. Good communication, listening, appreciation and avoiding criticism or micromanagement are principles the author follows as a technical manager.
This document provides an overview of security best practices for WordPress sites. It discusses topics like passwords, plugins, themes, code review, and more. The document also includes examples of common vulnerabilities like XSS, SQL injection, and open redirects. Through a series of questions and answers, it demonstrates how to identify and fix security issues, emphasizing the importance of input validation, output encoding, and using built-in WordPress functions correctly.
Veselin Nikolov shared lessons he learned from working on WordPress.com. Some key lessons included keeping things simple with queries, code, and classes; avoiding repetition which can introduce errors; thoroughly testing features with A/B testing and unit tests before deployment; and not launching big projects on Fridays due to increased likelihood of encountering unexpected issues. He told stories of incidents where violating these principles led to broken functionality and unexpected outcomes.
Veselin Nikolov shared lessons he learned from working on WordPress.com. He discussed stories about adding a new ID which led to legacy code issues and no unit tests. Another story involved sending millions of emails and coupons that broke things due to large queries and offsets. An A/B test story highlighted keeping code simple. Simple queries, atomic commits, testing, and avoiding large launches on Fridays were some of the key lessons learned.
20 начина да си убиеш блога, без да се усетишVeselin Nikolov
Презентацията е посветена на това да ви накара да се замислите, преди да "подобрите" нещо. Подобренията често имат фатални тъмни страни, които могат да загробят вашия блог или сайт.
17. XSS
Често срещани проблеми:
1. Липса на esc_*
2. Погрешна употреба на esc_* функция
3. Липса или неправилна валидация
4. Typos
18. XSS
Погрешна употреба на esc_*
<script>
var a = '<?php echo esc_html( $a ) ?>'
var b = <?php echo json_encode( $b ) ?>
19. XSS
Употреба на esc_* без валидация:
<script src=”<?php echo esc_url( $js ) ?>”>
където
$js = 'http://evil-project.com/js';
20. XSS
Неправилна валидация на ID-та
1. Проверка вместо cast
if ( intval( $myfield ) )
echo $myfield;
// $myfield = '1 <script...';
21. XSS
Неправилна валидация на ID-та
2. Липса на ^ и $ в regexp
if ( ! preg_match( '/[a-z0-9_-]/i', $myfield ) )
return 'You are trying to hack me!';
// $myfield = '<script ...'
22. XSS
Неправилна валидация на URL
1. . е wildcard.
if ( preg_match ( '!^https?://(www.)*good-host.com/js/!i',
$myjs) ...
// $myjs = http://wwwwgoodhost.com/js
23. XSS
Неправилна валидация на URL
2. Липсващ /
if ( preg_match ( '!^https?://(www.)?good-host.com!i',
$myjs)
// $myjs = 'http://www.good-host.com.dzver.com/'
24. XSS
Неправилна валидация на URL
3. Липсващ ^
if ( preg_match ( '!https?://(www.)*good-host.com/js/!i',
$myjs)
// $myjs = 'http://dzver.com/bad.js?http://good-host.com/js/'
25. XSS
Неправилна валидация на URL
4. Позволен / в хост-а
if ( ! preg_match( '!^https?://[^.]+.whatever.com/.+$!i',
$url ) )
// $myjs = 'http://3254656436/or.whatever.com/evil.js'
// $myjs = '<script.../.whatever.com/'
31. Защита
● VaultPress
● Exploit Scanner
http://wordpress.org/extend/plugins/exploit-scanner/
32. Защита
● Не вярвайте на юзърски инпут
● Man-in-the-middle HTTPS
● Внимавайте с редиректите. wp_safe_redirect.
● Extract може да препокрива променливи
● Внимавайте с call_user_func, $obj->$var, eval
● `` винаги с escape_shell_args