Slide deck for the 45-60-minute introduction to Python session talk delivered at Silicon Valley CodeCamp 2015: https://www.siliconvalley-codecamp.com/Session/2015/what-is-python
ABSTRACT
Python is an agile object-oriented programming language that continues to build momentum. It can do everything Java, C/C++/C#, Ruby, PHP, and Perl can do, but it's also fun & intuitive! Enjoy coding as fast as you think with a simple yet robust syntax that encourages group collaboration. It is known for several popular web frameworks, including Django (Python's equivalent to Ruby on Rails), Pyramid, and web2py. There is also Google App Engine, where Python was the first supported runtime. Users supporting Zope, Plone, Trac, and Mailman will also benefit from knowing some Python. Python can do XML/ReST/XSLT, multithreading, SQL/databases, GUIs, hardcore math/science, Internet client/server systems & networking (heard of Twisted?), GIS/ESRI, QA/test, automation frameworks, plus system administration tasks too! On the education front, it's a great tool to teach programming with (especially those who have done Scratch or Tynker already) as well as a solid (first) language to learn for non-programmers and other technical staff. Finally, if Python doesn't do what you want, you can extend it in C/C++, Java, or C# (even VB.NET)! Have you noticed the huge growth in the number of jobs on Monster & Dice that list Python as a desired skill? Come find out why Google, Yahoo!, Disney, Cisco, YouTube, LinkedIn, Yelp, LucasFilm/ILM, Pixar, NASA, Ubuntu, Bank of America, and Red Hat all use Python!
Python for Science and Engineering: a presentation to A*STAR and the Singapor...pythoncharmers
An introduction to Python in science and engineering.
The presentation was given by Dr Edward Schofield of Python Charmers (www.pythoncharmers.com) to A*STAR and the Singapore Computational Sciences Club in June 2011.
Python programming | Fundamentals of Python programming KrishnaMildain
Basic Fundamentals of Python Programming.
What is Python, History of python, Advantages, Disadvantages, feature of python, scope, and many more.
Data Structure using Python, Object Oriented Programming using
Introduction to the new Tensorflow 2.x and the Coral AI Edge TPU hardware. The presentation introduces Tensorflow main features such as Sequential and Functional APIs, mobile support with Tensorflow Lite, web support with TensorflowJS and Google Cloud support with TFX.
In addition, the presentation introduces the new edge TPU architecture coming from Coral AI, including its main hardware features and description of the compiling flow.
Python for Science and Engineering: a presentation to A*STAR and the Singapor...pythoncharmers
An introduction to Python in science and engineering.
The presentation was given by Dr Edward Schofield of Python Charmers (www.pythoncharmers.com) to A*STAR and the Singapore Computational Sciences Club in June 2011.
Python programming | Fundamentals of Python programming KrishnaMildain
Basic Fundamentals of Python Programming.
What is Python, History of python, Advantages, Disadvantages, feature of python, scope, and many more.
Data Structure using Python, Object Oriented Programming using
Introduction to the new Tensorflow 2.x and the Coral AI Edge TPU hardware. The presentation introduces Tensorflow main features such as Sequential and Functional APIs, mobile support with Tensorflow Lite, web support with TensorflowJS and Google Cloud support with TFX.
In addition, the presentation introduces the new edge TPU architecture coming from Coral AI, including its main hardware features and description of the compiling flow.
Intro to Python Workshop San Diego, CA (January 19, 2013)Kendall
These slides were presented at the Intro to Python Workshop in San Diego, California on January 19, 2013. This workshop was for absolute beginners in Python, and builds from the ground up. There were two projectors used in the presentation, one for showing these slides and one with a command-line Python prompt to show the execution of example code throughout the presentation.
The presenters were David Neiss and Kendall Chuang of the San Diego Python Users Group.
Python Scripting Tutorial for Beginners | Python Tutorial | Python Training |...Edureka!
( Python Training : https://www.edureka.co/python-scripting )
This "Python Scripting Tutorial" will introduce you to python which is a scripting language and using python you can build powerful applications easily. This video helps you to learn the below topics:
1. Scripting language Vs Programming language
2. Introduction to Python
3. Modules in Python
4. AWS scripting Using Boto Module
5. GUI Programming
Subscribe to our channel to get video updates. Hit the subscribe button and click on the bell icon.
30-minute talk front-loading a hack session teaching people how to use Google APIs with Python. Similar to the "Exploring Google APIs with Python" talk, this one is much shorter because the code samples are only discussed during the coding session.
This is a 45-60-minute tech talk introducing developers to coding new projects using Google APIs with Python. While most of the examples use G Suite APIs, they work for most Google APIs in general.
Intro to Python Workshop San Diego, CA (January 19, 2013)Kendall
These slides were presented at the Intro to Python Workshop in San Diego, California on January 19, 2013. This workshop was for absolute beginners in Python, and builds from the ground up. There were two projectors used in the presentation, one for showing these slides and one with a command-line Python prompt to show the execution of example code throughout the presentation.
The presenters were David Neiss and Kendall Chuang of the San Diego Python Users Group.
Python Scripting Tutorial for Beginners | Python Tutorial | Python Training |...Edureka!
( Python Training : https://www.edureka.co/python-scripting )
This "Python Scripting Tutorial" will introduce you to python which is a scripting language and using python you can build powerful applications easily. This video helps you to learn the below topics:
1. Scripting language Vs Programming language
2. Introduction to Python
3. Modules in Python
4. AWS scripting Using Boto Module
5. GUI Programming
Subscribe to our channel to get video updates. Hit the subscribe button and click on the bell icon.
30-minute talk front-loading a hack session teaching people how to use Google APIs with Python. Similar to the "Exploring Google APIs with Python" talk, this one is much shorter because the code samples are only discussed during the coding session.
This is a 45-60-minute tech talk introducing developers to coding new projects using Google APIs with Python. While most of the examples use G Suite APIs, they work for most Google APIs in general.
Half-hour talk introducing Google APIs. Primarily covers the Google Cloud Platform, it's products & services, focused on Google App Engine, and to some extent, Google Compute Engine, and all Google services as a whole.
Power your apps with Gmail, Google Drive, Calendar, Sheets, Slides, Apps Scri...wesley chun
~45-minute technical introduction to G Suite/Google Apps developer tools & APIs. Code samples are in Python+JS. Motivation: encourage developers to write apps integrating with G Suite APIs so they can monetize, taking advantage of the many schools & enterprises that are G Suite users. Delivered as session talks at Google Cloud Summit, São Paulo (Nov 2017), DevFest DC (May 2017), DevFest NYC (Nov 2016), and GDG LA DevFest (Dec 2016).
10-15 minute introduction to the Google Cloud Platform as delivered at PyCon in Apr 2014. It walks you briefly through each of the Cloud Platform's products & services. The talk unfortunately wasn't recorded like the formal sessions at PyCon, but you *can* watch a video of a shorter version of this talk at http://youtu.be/xuPKrjJ8Ijs
Introduction to coding with Google, accessing Google technologies from outside of Google, intro to Google Apps Script, teacher tools like Flubaroo and GFormIt
Exploring Google APIs with Python & JavaScriptwesley chun
Tech talk given at Silicon Valley CodeCamp in Oct 2015 and GDG New York in Nov 2016 to introduce developers to integrating with Google APIs from Python or JavaScript: https://www.siliconvalley-codecamp.com/Session/2015/exploring-google-apis-with-python-and-javascript
ABSTRACT
Want to integrate Google technologies into the web+mobile apps that you build? Google has various open source libraries & developer tools that help you do exactly that. Users who have run into roadblocks like authentication or found our APIs confusing/challenging, are welcome to come and make these non-issues moving forward. The first half of the talk covers the Google APIs Client Library, specifically with Python, although you could use any of the other languages supported. We'll then describe the steps necessary to create projects & enable Google APIs from the Google Developers Console. Then we discuss how to create & access the needed credentials. Code demos will show you how to use this code to talk to a variety of Google APIs. While you do the same thing using JavaScript, there is another developer tool that gives you access to Google APIs but in a slightly different way. The second half of the talk covers Google Apps Script, a self-contained JavaScript environment in the Google cloud. You'll learn what Apps Script is and how it's more like using "services" than traditional APIs. We'll show you how to use its development environment and create a Google Sheets spreadsheet that talks to several Google APIs. The applications you build, whether they use the Client Library or Apps Script are reachable by any client, browser, desktop/laptop or mobile. Learn how to leverage the power of Google technologies in the next apps you build!!
The following PPT is an Introduction to Python as a Programming Language and its Applications. It covers all the basic info about python and its applications. This is an interactive presentation created using PowerPoint Online.
Vision Academy is a well known Computer Training Institute in Hadapsar Pune from 2005.This institute was started by its visionary director Mr Sachin Zurange. Mr Sachin Zurange was completed MSc(Scientific Computing) From Interdisciplinary School Of Scientific Computing, University of Pune. It also clear SET exam in May 2018. We provides BCS, BCA, BBA(Comp.App), MCS, MCA, Dip(Comp), BE(Comp/IT) Coaching Classes in Hadapsar Pune. We mainly impart training in programming languages C,C++, Java, Advanced Java, Php, Phyton, .NET,HTML, Java Script, jQuery, Angular Js. Database Languages such as Oracle, Postgres, Mysql, SQL Server & focus on key subjects like Data Structure, Operating System,Rdbms. We provides career oriented programs in Web Design, WordPress, Digital Marketing courses. More then 10,000 students was trained from Vision Academy. We provide 100% practical oriented training program with 100% job placement.
Vision Academy’s Python Certification Training not only focuses on fundamentals of Python, Statistics and Machine Learning but also helps one gain expertise in applied Data Science at scale using Python. The training is a step by step guide to Python and Data Science with extensive hands on.
Vision Academe Pune is a leading institute in Pune conducting training programs for various software fields & provides certification for both individuals and organizations.Training Institute Pune is subsidiary of Optimized Infotech which offers IT services and training.
The Vision Phyton Institute Hands Over You The Best phyton Course In Pune. With 12 Years of Proficiency In Ecommerce, Phyton, Block Chain, Big Data, Data Science, and Many More. Trained Over 5000+ Placed Phyton . With The Help Of Our Highly Qualified Experienced Faculty Members And there Endless Efforts to bring the best out of every Student With us. As We provide Relevant Information, Data From Various Experts With Additional Reference Content, And Unconditional Practical Knowledge.
POWERED BY -- teachersduniya.com
This is the based on python programming language which is the very power full language . you can also learn whole about overview python.
Vision Academy is a well known Computer Training Institute in Hadapsar Pune from 2005.This institute was started by its visionary director Mr Sachin Zurange. Mr Sachin Zurange was completed MSc(Scientific Computing) From Interdisciplinary School Of Scientific Computing, University of Pune. It also clear SET exam in May 2018. We provides BCS, BCA, BBA(Comp.App), MCS, MCA, Dip(Comp), BE(Comp/IT) Coaching Classes in Hadapsar Pune. We mainly impart training in programming languages C,C++, Java, Advanced Java, Php, Phyton, .NET,HTML, Java Script, jQuery, Angular Js. Database Languages such as Oracle, Postgres, Mysql, SQL Server & focus on key subjects like Data Structure, Operating System,Rdbms. We provides career oriented programs in Web Design, WordPress, Digital Marketing courses. More then 10,000 students was trained from Vision Academy. We provide 100% practical oriented training program with 100% job placement.
Tweepy is an open source Python package that gives you a very convenient way to access the Twitter API with Python. Tweepy includes a set of classes and methods that represent Twitter's models and API endpoints, and it transparently handles various implementation details, such as: Data encoding and decoding.
Python is an interpreted, object oriented , high level programming language with dynamic semantics. It provides instructions to teach the computer how to perform a task.
Python is one of the most powerful programming languages out there due to its versatility and the prevalence of libraries to achieve all sorts of interesting things.
It offers efficient high-level data structures and an object-oriented programming style that is simple yet effective. A high-grade language is a computer programming language that is meant to represent the needs of a problem and mimics natural language or mathematical notation.
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
This presentations targets students or working professionals. You may know Google for search, YouTube, Android, Chrome, and Gmail, but did you know Google has many developer tools, platforms & APIs? This comprehensive yet still high-level overview outlines the most impactful tools for where to run your code, store & analyze your data. It will also inspire you as to what's possible. This talk is 50 minutes in length.
Easy path to machine learning (2023-2024)wesley chun
1-hr tech talk introducing Machine Learning and the GCP ML APIs and other Google Cloud developer tools to a technical audience:
Easier onramp to getting into AI/ML by using GCP AI/ML APIs (Vision, Video Intelligence, Natural Language, Speech-to-Text, Text-to-Speech, Translation) backed by single-task pre-trained models found in Vertex AI, AutoML for finetuning those pre-trained models, and other "friends of AI/ML" Google dev tools & platforms that can help: BigQuery (data warehouse & analysis), Cloud SQL+AlloyDB & Firestore (SQL & NoSQL databases), serverless platforms (App Engine, Cloud Functions, Cloud Run), and introducing the Gemini API (from both Google AI and GCP Vertex AI)
Powerful Google developer tools for immediate impact! (2023-24 B)wesley chun
This is one of two presentations to students or working professionals. You may know Google for search, YouTube, Android, Chrome, and Gmail, but did you know Google has many other cloud services? In this comprehensive yet still high-level overview of Google Cloud tools & APIs with the purpose of inspiring you as to what's possible. The session introduces Google's serverless platforms and machine learning & other APIs, tools that have an immediate impact on projects, alleviating the need to think about computing infrastructure as well as dispensing with the need to have machine learning expertise. We'll wrap up w/online resources like videos & hands-on tutorials to get you started! The main takeaways are where to run your code, store your data, and analyze your data, all in the cloud!
This talk is 1-hr in length.
The other version of this talk ("A") is an 45-mins long and focuses more on APIs platforms.
30-45-min tech talk given at user groups or technical conferences to introducing developers to integrating with Google APIs from Python .
ABSTRACT
Want to integrate Google technologies into the web+mobile apps that you build? Google has various open source libraries & developer tools that help you do exactly that. Users who have run into roadblocks like authentication or found our APIs confusing/challenging, are welcome to come and make these non-issues moving forward. Learn how to leverage the power of Google technologies in the next apps you build!!
Serverless computing with Google Cloud (2023-24)wesley chun
This is a half-hour technical talk on serverless computing with Google Cloud (Platform). It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, and shows inspirational examples of apps built using these technologies.
Powerful Google developer tools for immediate impact! (2023-24 A)wesley chun
This is one of two 45-60-min presentations to students or working professionals. You may know Google for search, YouTube, Android, Chrome, and Gmail, but did you know Google has many other cloud services? In this comprehensive yet still high-level overview of Google Cloud tools & APIs with the purpose of inspiring you as to what's possible. The session introduces Google's machine learning & other APIs, tools that have an immediate impact on projects, alleviating the need to think about computing infrastructure as well as dispensing with the need to have machine learning expertise. We'll wrap up w/online resources like videos & hands-on tutorials to get you started! The main takeaways are where to run your code, store your data, and analyze your data, all in the cloud!
The other version of this talk ("B") focuses more on serverless platforms.
Build an AI/ML-driven image archive processing workflow: Image archive, analy...wesley chun
Google provides a diverse array of services to realize the ambition of solving real business problems, like constrained resources. An image archive & analysis plus report generation use-case can be realized with just GWS (Google Workspace) & GCP (Google Cloud) APIs. The principle of mixing-and-matching Google technologies is applicable to many other challenges faced by you, your organization, or your customers. These slides are from the half-hour presentation about this case study.
Exploring Google APIs 102: Cloud vs. non-GCP Google APIswesley chun
As a follow-up to his "Exploring Google APIs" talk in 2019 (https://www.youtube.com/watch?v=ri8Bfptgo9Q) on Google APIs and running code on Google Cloud, tech consultant Wesley Chun dives deeper into using the REST APIs available for many Google services, Cloud and otherwise. While developers should expect a common user experience across all Google APIs, this isn't the case, so Wesley, who has spent 13+ years working on different Google API teams, will walk you through the differences you need to know if any of your current or future projects plan on using any Google API, esp. Cloud vs. non-GCP Google APIs. Two of the key topics in this session include an overview of the different client libraries available as well as what's required for authorizing your app's access to Google APIs. Knowledge of accessing APIs from Python or Javascript may be helpful but not necessary.
This is a 45-min technical talk on serverless computing with Python featuring products from the Google Cloud. It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, then shows inspirational examples of apps built using these technologies.
This is an inspirational lightning talk on how developers can take on the future with Google Cloud and other non-Cloud Google tools. It presents various application ideas that are meant to both inspire what's possible as well as show what some of those tools could be.
You may know Google for search, YouTube, Android, Chrome, and Gmail, but that's only as an end-user of OUR apps. Did you know you can also integrate Google technologies into YOUR apps? We have many APIs and open source libraries that help you do that! If you have tried and found it challenging, didn't find not enough examples, run into roadblocks, got confused, or just curious about what Google APIs can offer, join us to resolve any blockers. Code samples will be in Python and/or Node.js/JavaScript. This session focuses on showing you how to access Google Cloud APIs from one of Google Cloud's compute platforms, whether serverless or otherwise.
This is a one hour technical talk by @wescpy on serverless computing with Google Cloud (Platform). It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, and shows inspirational examples of apps built using these technologies. There is a bonus section covering serverless in-practice featuring how to think about app development, common use cases, flexibility, best practices, and local dev & testing.
This is a one hour technical talk on serverless computing with Google Cloud (Platform). It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, and shows inspirational examples of apps built using these technologies.
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Runwesley chun
Many people ask, "Which one is better for me: App Engine, Cloud Functions, or Cloud Run?" To help you learn more about them, understand their differences, appropriate use cases, etc., why not deploy the same app to all 3? With this "test drive," you only need to make minor config changes between platforms. You'll also learn one of Google Cloud's AI/ML "building block" APIs as a bonus as the sample app is a simple "mini" Google Translate "MVP". This is a 45- 60-minute talk that reviews the Google Cloud serverless compute platforms then walks through the same app and its deployments. The code is maintained at https://github.com/googlecodelabs/cloud-nebulous-serverless-python
Image archive, analysis & report generation with Google Cloudwesley chun
Google Cloud provides a diverse array of services to realize the ambition of solving real business problems, like constrained resources. An image archive & analysis plus report generation use-case can be realized with just Google Workspace & GCP APIs. The principle of mixing-and-matching Google technologies is applicable to many other challenges faced by you, your organization, or your customers. These slides are from a half- to 1-hour presentation about this case study.
Half-hour tech talk given at user groups or technical conferences to introducing developers to integrating with Google (Cloud) APIs from Python .
ABSTRACT
Want to integrate Google technologies into the web+mobile apps that you build? Google has various open source libraries & developer tools that help you do exactly that. Users who have run into roadblocks like authentication or found our APIs confusing/challenging, are welcome to come and make these non-issues moving forward. Learn how to leverage the power of Google technologies in the next apps you build!!
This is a half-hour technical talk on serverless computing with Google Cloud (Platform). It starts with a review of all of cloud computing then dives into serverless computing, demonstrates multiple products, and shows inspirational examples of apps built using these technologies.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
PHP Frameworks: I want to break free (IPC Berlin 2024)
What is Python? (Silicon Valley CodeCamp 2015)
1. 1
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
What is Python?
An Introduction
"Perl is worse than Python because people wanted it worse."
- Larry Wall (14 Oct 1998 15:46:10 -0700, Perl Users mailing list)
"Life is better without braces." and "Python fits your brain."
- Bruce Eckel, author of Thinking in C++ , Thinking in Java
"Python is an excellent language [and makes] sensible compromises."
- Peter Norvig (Google), author of Artificial Intelligence
+Wesley Chun, Principal
CyberWeb Consulting
cyberwebconsulting.com
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Python
is
Fun!
(I've used it at lots of places!)
2. 2
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
I'm here to give
you an idea of
what it is!
(I've written a lot about it!)
3. 3
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
I've taught it at
lots of places!
(companies, schools, etc.)
4. 4
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
About You
SW/HW Engineer/Lead
Sys Admin/IS/IT/Ops
Web/Flash Developer
QA/Testing/Automation
Scientist/Mathematician
Toolsmith, Hobbyist
Release Engineer/SCM
Artist/Designer/UE/UI/UX
Student/Teacher
Familiar with…
Java, C, C++, C#
PHP, JavaScript
(Visual) Basic
Perl, Tcl, Ruby
any other high-
level language…
Django, Pyramid, web2py, Flask, Fabric, Plone, Trac, Mailman, App Engine
5. 5
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Why are you here? You…
Have heard good word-of-mouth
Came via Django, App Engine, Plone, etc.
Discovered Google, Yahoo!, et al. use it
Already know but want formal training
Were forced by your boss
Safari Books Online: Top 5, Apr 2009
1. iPhone
2. Java
3. Python
4. C#
5. PHP
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
source: TIOBE Programming Community Index for April 2009 (tiobe.com)
6. 6
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
For New Programmers
Programming should be easy enough
to teach like reading & writing (CP4E)
What you need to be good
Some math background
Algebra, physics (problem solving)
Buddy who already is a developer
Even better if they know Python
Tinkerer, curious, itch-scratcher
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
About this Talk
Goal: Introduce as much Python as one can in an hour
Seminar Topics
Language Introduction
Python Object Types
Loops and Conditionals
Files, Functions, Modules
Object-Oriented Programming
Errors and Exception Handling
Miscellaneous
7. 7
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Background
Guido van Rossum: began late '89, released early '91
Inherits from ABC, Modula, C/C++, LISP, ALGOL, Perl, Java, etc.
Named after Monty Python, not the snake
Cross-platform (Mac, PC, *ix; only need a C compiler)
Alternate implementations: Jython, IronPython, Stackless, PyPy, etc.
Philosophy, Concepts and Syntax
Robust Enough "batteries included" to get job done
Simple Clean, easy-to-read, easier than VB?!?
Modular Plug-n-play, use only what you need
Extensible Can extend language to meet your needs
Intuitive "Python fits your brain."
OOP Object-oriented when you need it (not req'd)
"Pythonic" "There's only one way to do it…."
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Disadvantages?
Generally slower than
compiled languages
Obscure syntax? Naaah!
Typing requires discipline
Some idiosyncrasies
and required idioms
May not have your feature
Memory management
No marketing force…
mostly word-of-mouth
No world domination… yet!
Why (not) Python?
Advantages
Simple syntax
Rapid development
High-level data structures
Object-oriented
Exception handling
Functional programming
Memory management
Extensible (C/C++/Java)
Many libraries: NW, DB,
GUI, MT, XML/JSON/CSV,
RE, OS/FS, Math, Web;
plus 3rd-party
Community
www.tiobe.com/index.php/
content/paperinfo/tpci
8. 8
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Built for Non-Programmers
Educational language syntax
Scratch (Tynker, Blockly, App Inventor) , Alice, Python, HTML
Works well for school-aged children
Syntax, memory mgmt, data structures, OOP…
Obstacles to learning concepts, deters interest
Python: retention, morale, understanding
Probably the "best" 1st language
What about professional developers?
C/C++, Java, PHP, Python, Ruby, JavaScript
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Some Newbie Resources
Published Books
Hello World! Computer Programming for Kids & Other Beginners
(Sande, Sande: 2013)
Invent Your Own Computer Games with Python (Sweigart: 2015)
Python for Kids (Briggs: 2012; see Snake Wrangling for Kids)
Automate the Boring Stuff with Python: Practical Programming for
Total Beginners (Sweigart: 2015)
Learning with Python: How to Think Like a Computer Scientist
(Downey, Elkner, Meyers: 2002)
Online Books, Tutorials, Environments, etc.
How to Think Like a Computer Scientist (Downey, Elkner, Meyers)
Learning to Program (Gauld)
LiveWires Python course
A Byte of Python (Swaroop)
Instant Hacking: Learning to Program with Python (Hetland)
Snake Wrangling for Kids (Briggs)
Computer Programming is Fun! (Handy)
Karel the Robot clones: Guido van Robot, RUR-PLE
9. 9
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Run Python interactive interpreter from default IDE: IDLE
Or do it from the cmd-line or DOS command shell
$ python # or C:> python
Python 2.7.10 (default, Jul 27 2015, 11:35:10)
[GCC 4.2.1 Compatible Apple LLVM 6.1.0 (clang-602.0.53)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> print 'Hello World!'
Hello World!
Interactive Interpreter
To exit: Ctrl-D in IDLE or *ix
cmd line; or Ctrl-Z in DOS
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
What You Just Saw
>>> this is the Python prompt
Enter any Python command after it
Use print to display output to users
Use print() in Python 3
To exit interactive interpreter
Ctrl-D from IDLE or *ix command-line
Ctrl-Z from a DOS/command shell
Interactive Interpreter: testing, debugging, hacking,
experimenting regardless of IDE use or otherwise
10. 10
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Getting Python
POSIX (Mac OS, *nix): already installed
PC, source, and other downloads
python.org or corepython.com
Other IDEs
SPE (pictured)
PythonWin
Eclipse & PyDev
PyCharm/intelliJ
Komodo
WingIDE
IPython Notebook
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Online Python interpreters/shells
• Can't or don't wish to install Python locally?
• Run Python from just a web browser
•ideone.com
•colabv6.dan.co.jp/lleval.html
•doc.pyschools.com/console
•repl.it/languages/Python
•skulpt.org (pure JS implementation; allows turtle)
•pythonwebconsole.thomnichols.org
•shell.appspot.com (Google App Engine + libraries)
•codepad.org
•lotrepls.appspot.com
•datamech.com/devan/trypython/trypython.py
• Most are 2.x, some (top pair) do 3.x
• Some support multiple languages
11. 11
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Online learning systems
•Learn & code Python with these learning environments
•Codecademy
•codecademy.com/tracks/python
•PySchools
•pyschools.com
•Online Python Tutor
•pythontutor.com
•Online Python course
•Udacity
•udacity.com/course/cs101
•Coursera
•coursera.org/course/interactivepython
•coursera.org/course/programming1
•LearnPython.org
•learnpython.org
•CodingBat (login optional)
•codingbat.com/python
•SingPath (login required)
•singpath.com
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Hello World!
Using print statement or function
print 'Hello World!' # 2.x
print('Hello World!') # 3.x
Or for 3.x compatibility & "futureproofing:"
from __future__ import print_function
# works in both 2.x and 3.x
print('Hello World!')
12. 12
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Common Beginner Gotchas
Code delimited by indentation not braces { }
if x > 10:
return "'x' is greater than 10"
else:
return "'x' is less than 10"
No extraneous characters ( ; , $, ……)
No switch-case, private class members, ++/--,
static type checking, anonymous blocks, etc.
Freaky-looking floats*: 1.1 1.10000000001
Single element tuple needs comma: (None,)
3.x-only: print() & true div: 1/2 == 0.5
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Variables and Expressions
>>> 4 + 6 * 5 # math ops like other langs
34
>>> a = 4 + 6 ** 2 # no declaration needed
>>> a
40
>>> a = 'Python' # auto garbage collection
>>> b = 'is cool'
>>> a + b # ops can be overloaded
'Pythonis cool'
>>> a = a + ' ' + b # reassignment no problem
>>> a
'Python is cool'
>>> # useful interactive tool
13. 13
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Objects
Standard Data Types
Numbers (3-8)
Strings (2-3)
Lists
Tuples
Dictionaries
Sets (2)
Other Types
None
Files, Modules
Functions/Methods
Iterators/Generators
Type/Classes
miscellaneous
Allocated on assignment: Dynamic/Duck Typing
Memory Management: Reference Counting
Variables not declared: type inferred on assignment
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Standard Operators
+ - * / // % **
<< >> & | ^ ~
== >= <= < > !=
is is not and or not
•Grouping expressions in ( ) okay as usual
•** means exponentiation, % means modulus/remainder
•/ means true division in 3.x and classic division in 2.x
•Use // for standard integer floor division
•Assignment using single equals ( = )
•Augmented assignment +=, -=, *=, etc. (no ++ though)
14. 14
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Numbers
integers (no size limit except for VM)
-680, 0o237, 0xDEADBEEF, 64-0x41, 0b110
floating point real numbers (IEEE-754 C double)
-97.65, -3.14159, -6e2, 0.1
complex numbers
Composed of real and imaginary parts (floats)
11.65-5.55J, 4J, -3e2+8.73J, 0.1-2.3e4J
Also long, bool, Decimal, Fraction, Rational, etc.
Other modules: math, cmath, random, operator
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Strings ' ' " " ''' '''
Strings are sequences of characters (single/double quotes)
No 'char' type… strings of length 1
Format operator ( % ) for printf()-like functionality
Flexible alternative: string format() method (new in 2.6)
Triple quotes allow special characters like newlines
>>> x = 'Python'
>>> x * 2
'PythonPython'
>>> x *= 2
>>> x
'PythonPython'
>>> x[-1]
'n'
>>> x[-4:-1]
'tho'
>>> 'ton' in x
False
>>> '%s is number %d' % (x[:6], 1)
'Python is number 1'
>>> '{0} is #{1}'.format(x[:6], 1)
'Python is #1'
>>>
>>> hi = '''hi
there'''
>>> hi
'hinthere'
>>> print(hi)
hi
there
15. 15
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Lists [ ] and Tuples ( )
Lists: ordered sequences of arbitrary objects
Mutable (values can be updated)
Can have lists of lists, i.e., multidimensional indexing
Tuples similar but immutable (no value updates allowed)
"List comprehensions" allows for quick logical building of lists
Common list methods:
list.sort() # "sort" list contents in-place
list.reverse() # reverse a list in-place
list.append() # append item to list
list.insert() # insert items in list
list.remove/pop() # remove item(s) from list
list.extend() # extend a list with another one
list.count() # return number of item occurrences
list.index() # lowest index where item is found
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
List Operations
>>> m = ['Core', 'Programming', 9, 2006]
>>> m.append('Prentice Hall')
>>> m.insert(1, 'Pytho')
>>> m
['Core', 'Pytho', 'Programming', 9, 2006, 'Prentice Hall']
>>> m[1] = 'Python'
>>> m.pop(3)
9
>>> m
['Core', 'Python', 'Programming', 2006, 'Prentice Hall']
>>> m.sort()
>>> m
[2006, 'Core', 'Prentice Hall', 'Programming', 'Python']
>>> [i*3 for i in range(20) if i % 2 == 0]
[0, 6, 12, 18, 24, 30, 36, 42, 48, 54]
>>> f = open('myFile', 'r')
>>> data = [line.strip() for line in f]
>>> f.close()
16. 16
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Dictionaries { }
Dictionaries (sets like dicts but only hashed keys)
Mutable, resizable hash tables
Mappings of keys to values
Keys: scalar (usually strings or numbers)
Values: arbitrary Python objects
No key collisions allowed
Similar to Java HashMap, JS Object, Perl hash/associative array
Most commonly-used methods:
d.items() # iterable: key-value pairs
d.get() # return key's value (or default)
d.setdefault() # return key's value, set if nec.
d.pop() # remove item from d and return
d.update() # merge contents from another dict
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Dictionary Operations
>>> d = {'title': 'Core Python Programming', 'year': 2006}
>>> d
{'year': 2006, 'title': 'Core Python Programming'}
>>> 'year' in d
True
>>> 'pub' in d
False
>>> d.get('pub', 'N/A') # KeyError if d['pub']
'N/A'
>>> d['pub'] = 'Prentice Hall'
>>> d.get('pub', 'N/A') # no KeyError for d['pub'] now
'Prentice Hall'
>>> for eachKey in d:
print(eachKey, ':', d[eachKey])
year : 2006
pub : Prentice Hall
title : Core Python Programming
17. 17
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
if-elif-else Statements
Conditional statements are what you expect
# prompt, get, and check user input
data = raw_input("Enter 'y' or 'n': ")
if data[0] == 'y':
print("You typed 'y'.") # 'y' key
elif data[0] == 'n':
print("You typed 'n'.") # 'n' key
else:
print('invalid key!') # other key
Ternary Operator (aka Conditional Expressions: C ? T : F)
smaller = x if x < y else y # T if C else F
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Loops
Python while loops are same as in other languages
for more like shell foreach & used ~90% over while
Iterate over elements rather than counting/conditional
range() helps "simulate" traditional for loops
Loop "friends" break & continue also here
aList = [123, 'xyz', 45.67]
>>> for eachItem in aList:
... print(eachItem)
123
xyz
45.67
>>> for i in range(0, 3, 1): # think "for (i=0; i<3; i+=1)"
... print(i)
0
1
2
>>> i = 0
>>> while i < 3:
... print(i)
... i += 1
0
1
2
18. 18
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Open a file and get back a file object
f = open(name, mode) # mode: r/r+, w, a, U
Most commonly-used file methods
f.close() Close file
f.read() Read bytes from file
f.write() Write a string to file
Display text file example:
f = open('data.txt', 'r')
for line in f:
print(line.rstrip())
f.close()
… or, alternatively, more modern Python (2.6+)
with open('data.txt', 'r') as f:
for line in f:
print(line, end='')
Files
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Function declaration syntax and example
def func_name([v1,…, vN=dv,… *args, **kwargs):
"documentation string"
function_body
def addYor10(x, y=10): # 'y' has default value
"adds 'x' and 'y'; latter defaults to 10"
return x + y
Functions heterogenous (untyped)
Default values & variable arguments supported
Can return 0, 1, or more objects
Python returns None if no return value provided
Introducing Functions
19. 19
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Importing Modules & Attributes
Importing modules or packages using import statement
import module_name
import string
num = string.atoi('123')
Importing module attributes using from-import statement
Names brought into (global) variable namespace
from module_name import module_element
from string import atoi
num = atoi('123')
Packages: allow for organizing modules using the file system
Use int()though…
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Standard Library Sampler (“B.I.”)
API for SQLite databasessqlite3
Email processingemail, {smtp,pop,imap}lib
External process managementsubprocess
Data compression and archive filesgzip, bz2, zipfile, tarfile
Various Internet client libraries{ftp,url,http,*}lib
Serialize Python objectspickle, cPickle, shelve
Various math/numberic processing{c,}math, random, fractions,……
High-level threads/multiprocess APIsthreading, multiprocessing
Python/Tk GUI toolkit interfaceTkinter
Socket interface & server classes (TCP, UDP)socket, SocketServer
Date and time constants and functionstime, datetime, calendar
Text processingre, csv, json, xml
Operating and file system interfaceos and os.path
System data, processing, and functionalitysys
DescriptionModule Name(s)
20. 20
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Programmer Tools
Debugger
pdb
Profilers
profile
hotshot
cProfile
Tracer/Tracker
trace
Logger
logging
Timer
timeit
Help/Documentation
pydoc
Testing
unittest
doctest
(external) nose
(external) py.test
Testing tools taxonomy
goo.gl/Fpz0Z
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Object-Oriented Programming
"Constructor"/Initializer is __init__(), "self" is "this"
Class instantiation via function interface (rather than "new")
Instance attrs, multiple inheritance; no overloading nor private
class MyClass(object):
... def __init__(self, data=2):
... self.info = data
... def times(self, x):
... return "%d * %d is %d" % (
... self.info, x, self.info * x)
>>>
>>> inst = MyClass(21)
>>> inst.info
21
>>> print inst.times(3)
21 * 3 is 63
21. 21
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Exceptions and try-except
Exception handling via try-except statement
try:
# statements to monitor
except ExceptionName as e:
# code to exec if ExceptionName occurs
try:
f = open('data.txt', 'r')
except IOError as e:
print("Can't open file:", e)
return False # or sys.exit(1), etc.
Throw exceptions with raise; there is also a finally
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Python 2 vs. Python 3
The What and the Why
Fix early design flaws
Some new features, many small improvements
Plan: develop (remainder of) 2.x and 3.x together
Provide transition tools (2to3, 2.6+, -Q, -3)
Key Updates (no major syntax changes)
print, exec changed to functions
True division: 1/2 == 0.5
Performance (more iterators, fewer lists)
Consolidation/unification (integers, classes)
Strings: Unicode default; bytes/bytearray types
Intro to Python 3 article FYI
informit.com/articles/article.aspx?p=1328795
22. 22
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Where do you go from here?
•The tip of the iceberg…
System Administration scripting tools and automation
Networked/Internet Client-Server systems
Graphical User Interface (GUI) design and development
Web frameworks and rich Internet applications (RIA)
Scientific/numeric/mathematics-centric development
Database programming, Object-Relational Mappers (ORMs)
XML, JSON, CSV and other forms of text processing
Java with Jython; .NET/Mono with IronPython; COM, MFC
Graphics/imaging/multimedia/visual art processing
Multithreaded and higher-performance applications
Embedded system design (hardware as well as Python)
QA/Testing automated test tools, suites, and frameworks
Rapid application prototyping (all application areas)
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Additional Resources
Books for programmers (more @ goo.gl/i4u0R)
Quick Python Book (2010)
Python Fundamentals LiveLessons DVD (Chun, 2009)
Core Python Programming (2006 [2009])
Dive into Python (2009, 2004)
Beginning Python: From Novice to Professional (2008)
Python Cookbook (2013, 2005)
Python Standard Library by Example (2011)
Python Essential Reference (2009) & Python in a Nutshell (2006)
Some online resources
Python Quick Reference Guide rgruet.free.fr#QuickRef
Python Conferences worldwide www.pycon.org
Core Python Programming corepython.com
Mailing list/newsgroup groups.google.com/group/comp.lang.python
Python Docs (+ FAQ, tutorial,…) docs.python.org
External 3rd-party/ repo python.org/pypi
23. 23
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
1. Beautiful is better than ugly.
2. Explicit is better than implicit.
3. Simple is better than complex.
4. Complex is better than complicated.
5. Flat is better than nested.
6. Sparse is better than dense.
7. Readability counts.
8. Special cases aren't special enough to break the rules.
9. Although practicality beats purity.
10. Errors should never pass silently.
11. Unless explicitly silenced.
12. In the face of ambiguity, refuse the temptation to guess.
13. There should be one — and preferably only one — obvious way to do it.
14. Although that way may not be obvious at first unless you're Dutch.
15. Now is better than never.
16. Although never is often better than right now.
17. If the implementation is hard to explain, it's a bad idea.
18. If the implementation is easy to explain, it may be a good idea.
19. Namespaces are one honking great idea — let's do more of those!
The Zen of Python (or import this by Tim Peters)
(c) 1998-2015 CyberWeb Consulting.
All rights reserved.
Thank you! Questions?
+Wesley Chun # Google+
@wescpy # Twitter
wescpy@gmail.com # e-mail
corepython.com # books
cyberwebconsulting.com # training
wescpy.blogspot.com # Python blog
wesc.livejournal.com # personal blog
24.
25. THE COMPLETE DEVELOPER'S GUIDE TO PYTHON
• New to Python? The definitive guide to Python development for
experienced programmers
• Covers core language features thoroughly, including those found in
the latest Python releases — learn more than just the syntax!
• Learn advanced topics such as regular expressions, networking,
multithreading, GUI, Web/CGI, and Python extensions
• Includes brand-new material on databases, Internet clients, Java/Jython,
and Microsoft Office, plus Python 2.6 and 3
• Presents hundreds of code snippets, interactive examples, and practical
exercises to strengthen your Python skills
Python is an agile, robust, expressive, fully object-oriented, extensible, and
scalable programming language. It combines the power of compiled languages
with the simplicity and rapid development of scripting languages. In Core
Python Programming, Second Edition, leading Python developer and trainer
Wesley Chun helps you learn Python quickly and comprehensively so that
you can immediately succeed with any Python project.
Using practical code examples, Chun introduces all the fundamentals of
Python programming: syntax, objects and memory management, data types,
operators, files and I/O, functions, generators, error handling and exceptions,
loops, iterators, functional programming, object-oriented programming and
more. After you learn the core fundamentals of Python, he shows you what
you can do with your new skills, delving into advanced topics, such as regular
expressions, networking programming with sockets, multithreading, GUI
development, Web/CGI programming and extending Python in C.
This edition reflects major enhancements in the Python 2.x series, including 2.6
and tips for migrating to 3. It contains new chapters on database and Internet client
programming, plus coverage of many new topics, including new-style classes, Java
and Jython, Microsoft Office (Win32 COM Client) programming, and much more.
• Learn professional Python style, best practices, and good programming habits
• Gain a deep understanding of Python's objects and memory model as well
as its OOP features, including those found in Python's new-style classes
• Build more effective Web, CGI, Internet, and network and other client/
server applications
• Learn how to develop your own GUI applications using Tkinter and other
toolkits available for Python
• Improve the performance of your Python applications by writing extensions
in C and other languages, or enhance I/O-bound applications by using
multithreading
• Learn about Python's database API and how to use a variety of database
systems with Python, including MySQL, Postgres, and SQLite
• Features appendices on Python 2.6 & 3, including tips on migrating to the
next generation!
Core Python Programming
Second Edition
"The long-awaited second
edition of Wesley Chun's
Core Python Programming
proves to be well worth the
wait–its deep and broad
coverage and useful exercises
will help readers learn and
practice good Python."
— ALEX MARTELLI,
author of Python in a Nutshell and
editor of Python Cookbook
"There has been lot of good
buzz around Wesley Chun's
Core Python Programming.
It turns out that all the buzz is
well earned. I think this is the
best book currently available
for learning Python. I would
recommend Chun's book over
Learning Python (O'Reilly),
Programming Python
(O'Reilly), or The Quick Python
Book (Manning)."
— DAVID MERTZ, Ph.D.,
IBM DeveloperWorks®
"Finally, a book good enough
to be both a textbook and
a reference on the Python
language now exists."
— MICHAEL BAXTER,
Linux Journal
Wesley Chun
FOR MORE INFORMATION PLEASE VISIT:
informit.com/python
Available wherever technical books are sold.
AVAILABLE
• BOOK: 9780132269933
• SAFARI ONLINE
• E-BOOK: 9780137060566
• SONY: 9780137061259
SAVE up to 40%
Buy 1 Save 35% | Buy 2
or More and Save 40%
Use discount code:
PYTHONCENTER at
informit.com/python
26. Other titles by
Wesley Chun
FOR MORE INFORMATION PLEASE VISIT:
informit.com/python
Available wherever technical books are sold.
SAVE up to 40%
Buy 1 Save 35% | Buy 2
or More and Save 40%
Use discount code:
PYTHONCENTER at
informit.com/python
About the Author
WESLEY J. CHUN, MSCS, is the author of Python Fundamentals, a companion
video to Core Python Programming, and the coauthor of Python Web Development
with Django. In addition to being a senior software architect, he runs CyberWeb
(cyberwebconsulting.com), a consulting business specializing in Python software
engineering and technical training. He has more than twenty-five years of
programming, teaching, and writing experience, including more than a decade
with Python. While at Yahoo!, he helped create Yahoo!Mail and Yahoo! People
Search using Python. He holds degrees in computer science, mathematics, and
music from the University of California.
Python Web Development with Django
JEFF FORCIER, PAUL BISSEX, WESLEY CHUN | ISBN: 9780132356138
Using the simple, robust, Python-based Django framework, you can build powerful
Web solutions with remarkably few lines of code. In Python Web Development with
Django®, three experienced Django and Python developers cover all the techniques,
tools, and concepts you need to make the most of Django 1.0, including all the major
features of the new release.
The authors teach Django through in-depth explanations, plus provide extensive
sample code supported with images and line-by-line explanations. You’ll discover
how Django leverages Python’s development speed and flexibility to help you solve
a wide spectrum of Web development problems and learn Django best practices
covered nowhere else. You’ll build your first Django application in just minutes and
deepen your real-world skills through start-to-finish application projects.
Python Fundamentals (Video Training)
WESLEY CHUN | ISBN: 9780137143412
FOR ANY STUDENT OR PROFESSIONAL INTERESTED IN
LEARNING THE FUNDAMENTALS OF PYTHON
In this one-of-a-kind video package, leading Python developer and trainer Wesley
Chun helps you learn Python quickly and comprehensively, so that you can
immediately succeed with any Python project.
Just click and watch: One step at a time, you will master Python fundamentals.
If you already have Python experience, these videos will help further develop
your skills. The lessons start with an introduction to the core features of the
Python language, including syntax basics and standard types and operations.
The lessons progress into advanced topics, such as Python’s memory model and
object-oriented programming.