Speaker: Charlie Swanson
Learn how MongoDB answers your queries from a query system engineer. If you've ever had a performance problem with a query but didn't know how to find the cause, or if you've ever needed to confirm that your shiny new index is being put to work, the explain command is an excellent place to start. MongoDB's explain system is a powerful tool for solving this type of problem, but can be intimidating and unwieldy to use. In this talk, we will discuss how the explain command works and break down its output into digestible pieces.
Speaker: Charlie Swanson
Learn how MongoDB answers your queries from a query system engineer. If you've ever had a performance problem with a query but didn't know how to find the cause, or if you've ever needed to confirm that your shiny new index is being put to work, the explain command is an excellent place to start. MongoDB's explain system is a powerful tool for solving this type of problem, but can be intimidating and unwieldy to use. In this talk, we will discuss how the explain command works and break down its output into digestible pieces.
Presented at BJUG, 6/12/2012 by Roger Brinkley
This talk is on 55 new features in Java 7 you (probably) didn't hear about in an ignite format of one per minute. No stopping, no going back....Questions, sure but only if time remains (otherwise save for later).
A practical intro to web development with mongo db and nodejs when, why and howjgarifuna
Big Data, Huge Data and Humongous Data are all those new terms thrown around today to describe the present and future state of the web. But what if you just wanted to start, in fact, what if you just wanted to start small to wrap your head around these concepts? In this talk you will learn a practical way to getting started with MongoDB and NodeJS including:
Installation of MongoDB.
Connecting to MongoDB
Comparison of commands between MongoDB and a relational databases like MySQL.
Adding, removing, updating and selecting data with MongoDB.
Using MongoDB with a programming language.
Replicating data across several servers.
Building a web API with NodeJS & MongoDB
and much more.
Knowing when, why and how to use MongoDB and NodeJS is a valuable skill to have in this market and whether you are a beginner, intermediate or seasoned developer, you’ll acquire enough knowledge to prepare you for the humongous benefits that MongoDB and NodeJS offers.
About the speaker:
Jorge Garifuna is a Professional Software Developer and Consultant with over 15 years of industry experience. His portfolio of technologies include but are not limited to various programming languages, Web 2.0, a diverse number of Frameworks, countless of databases and the latest and greatest in Mobile for popular platforms such as IOS, Android and BlackBerry, among many.
Over the years, Jorge has successfully Designed, Developed and Deployed (DDD) software in the areas of E-Commerce, Project Management, Content Management Systems (CMS), Enterprise Resource Planning (ERP) and Customer Relationship Management (CRM) to name a few. His technologies have been used by many consumers, employees and businesses.
Jorge prides himself as a happy contributor to various Open Source Projects, including the ATK Framework and vTiger CRM to name a few. He has also given various presentations in the topics of: Joomla CMS; ATK Framework; Wordpress; ELGG Social Network Framework; Integration of Linux, Apache, MySQL, SQLite with Mkahawa Cyber Manager and PHP; and Mobile Development for Web, IOS Native and Android Native.
Jorge joined LAMPsig over six years ago and is currently serving as the president of this dynamic LAMP community group.
(De)serial Killers - BSides Las Vegas & AppSec IL 2018Dor Tumarkin
Take the plunge into deserialization attacks - from understanding the fundamentals of serialization to vulnerability breakdown, through RCE demos in various technologies (Java, C#, Python). Includes research and exploit demo of never-before-seen vulnerabilities in Microsoft’s Message Queue.
Originally presented at BSidesLV 2018 and AppSecIL 2018. Slides have been altered to remove animations.
(De)serial Killers - BSides Las Vegas & AppSec IL 2018Checkmarx
Presented by Dor Tumarkin, Application Security Researcher and Team Leader at Checkmarx
Take the plunge into deserialization attacks - from understanding the fundamentals of serialization to vulnerability breakdown, through RCE demos in various technologies (Java, C#, Python). Includes research and exploit demo of never-before-seen vulnerabilities in Microsoft’s Message Queue.
Originally presented at BSidesLV 2018 and AppSecIL 2018. Slides have been altered to remove animations.
Webscale PostgreSQL - JSONB and Horizontal Scaling StrategiesJonathan Katz
All data is relational and can be represented through relational algebra, right? Perhaps, but there are other ways to represent data, and the PostgreSQL team continues to work on making it easier and more efficient to do so!
With the upcoming 9.4 release, PostgreSQL is introducing the "JSONB" data type which allows for fast, compressed, storage of JSON formatted data, and for quick retrieval. And JSONB comes with all the benefits of PostgreSQL, like its data durability, MVCC, and of course, access to all the other data types and features in PostgreSQL.
How fast is JSONB? How do we access data stored with this type? What can it do with the rest of PostgreSQL? What can't it do? How can we leverage this new data type and make PostgreSQL scale horizontally? Follow along with our presentation as we try to answer these questions.
Hacking MongoDB at RelateIQ, A Salesforce CompanyMongoDB
Learn how RelateIQ takes advantage of MongoDB's tooling and oplog to drive near-realtime features and infrastructure for their customers. In this session we will cover how we exploit Morphia to make at-rest encryption of critical data both DRY and easy. We will also be covering our consumption of MongoDB's unsung hero, the oplog, which drives a significant portion of our back-end computing systems. While both projects are simple enough to be the product of Hackdays (a time-honored tradition at RelateIQ), they've blossomed into critical components of our infrastructure.
He will start you at the beginning and cover prerequisites; setting up your development environment first. Afterward, you will use npm to install react-native-cli. The CLI is our go to tool. We use it to create and deploy our app.
Next, you will explore the code. React Native will look familiar to all React developers since it is React. The main difference between React on the browser and a mobile device is the lack of a DOM. We take a look a many of the different UI components that are available.
With React Native you have access to all of the devices hardware features like cameras, GPS, fingerprint reader and more. So we'll show some JavaScript code samples demonstrating it. We will wrap up the evening by deploying our app to both iOS and Android devices and with tips on getting ready for both devices stores.
Presented at BJUG, 6/12/2012 by Roger Brinkley
This talk is on 55 new features in Java 7 you (probably) didn't hear about in an ignite format of one per minute. No stopping, no going back....Questions, sure but only if time remains (otherwise save for later).
A practical intro to web development with mongo db and nodejs when, why and howjgarifuna
Big Data, Huge Data and Humongous Data are all those new terms thrown around today to describe the present and future state of the web. But what if you just wanted to start, in fact, what if you just wanted to start small to wrap your head around these concepts? In this talk you will learn a practical way to getting started with MongoDB and NodeJS including:
Installation of MongoDB.
Connecting to MongoDB
Comparison of commands between MongoDB and a relational databases like MySQL.
Adding, removing, updating and selecting data with MongoDB.
Using MongoDB with a programming language.
Replicating data across several servers.
Building a web API with NodeJS & MongoDB
and much more.
Knowing when, why and how to use MongoDB and NodeJS is a valuable skill to have in this market and whether you are a beginner, intermediate or seasoned developer, you’ll acquire enough knowledge to prepare you for the humongous benefits that MongoDB and NodeJS offers.
About the speaker:
Jorge Garifuna is a Professional Software Developer and Consultant with over 15 years of industry experience. His portfolio of technologies include but are not limited to various programming languages, Web 2.0, a diverse number of Frameworks, countless of databases and the latest and greatest in Mobile for popular platforms such as IOS, Android and BlackBerry, among many.
Over the years, Jorge has successfully Designed, Developed and Deployed (DDD) software in the areas of E-Commerce, Project Management, Content Management Systems (CMS), Enterprise Resource Planning (ERP) and Customer Relationship Management (CRM) to name a few. His technologies have been used by many consumers, employees and businesses.
Jorge prides himself as a happy contributor to various Open Source Projects, including the ATK Framework and vTiger CRM to name a few. He has also given various presentations in the topics of: Joomla CMS; ATK Framework; Wordpress; ELGG Social Network Framework; Integration of Linux, Apache, MySQL, SQLite with Mkahawa Cyber Manager and PHP; and Mobile Development for Web, IOS Native and Android Native.
Jorge joined LAMPsig over six years ago and is currently serving as the president of this dynamic LAMP community group.
(De)serial Killers - BSides Las Vegas & AppSec IL 2018Dor Tumarkin
Take the plunge into deserialization attacks - from understanding the fundamentals of serialization to vulnerability breakdown, through RCE demos in various technologies (Java, C#, Python). Includes research and exploit demo of never-before-seen vulnerabilities in Microsoft’s Message Queue.
Originally presented at BSidesLV 2018 and AppSecIL 2018. Slides have been altered to remove animations.
(De)serial Killers - BSides Las Vegas & AppSec IL 2018Checkmarx
Presented by Dor Tumarkin, Application Security Researcher and Team Leader at Checkmarx
Take the plunge into deserialization attacks - from understanding the fundamentals of serialization to vulnerability breakdown, through RCE demos in various technologies (Java, C#, Python). Includes research and exploit demo of never-before-seen vulnerabilities in Microsoft’s Message Queue.
Originally presented at BSidesLV 2018 and AppSecIL 2018. Slides have been altered to remove animations.
Webscale PostgreSQL - JSONB and Horizontal Scaling StrategiesJonathan Katz
All data is relational and can be represented through relational algebra, right? Perhaps, but there are other ways to represent data, and the PostgreSQL team continues to work on making it easier and more efficient to do so!
With the upcoming 9.4 release, PostgreSQL is introducing the "JSONB" data type which allows for fast, compressed, storage of JSON formatted data, and for quick retrieval. And JSONB comes with all the benefits of PostgreSQL, like its data durability, MVCC, and of course, access to all the other data types and features in PostgreSQL.
How fast is JSONB? How do we access data stored with this type? What can it do with the rest of PostgreSQL? What can't it do? How can we leverage this new data type and make PostgreSQL scale horizontally? Follow along with our presentation as we try to answer these questions.
Hacking MongoDB at RelateIQ, A Salesforce CompanyMongoDB
Learn how RelateIQ takes advantage of MongoDB's tooling and oplog to drive near-realtime features and infrastructure for their customers. In this session we will cover how we exploit Morphia to make at-rest encryption of critical data both DRY and easy. We will also be covering our consumption of MongoDB's unsung hero, the oplog, which drives a significant portion of our back-end computing systems. While both projects are simple enough to be the product of Hackdays (a time-honored tradition at RelateIQ), they've blossomed into critical components of our infrastructure.
He will start you at the beginning and cover prerequisites; setting up your development environment first. Afterward, you will use npm to install react-native-cli. The CLI is our go to tool. We use it to create and deploy our app.
Next, you will explore the code. React Native will look familiar to all React developers since it is React. The main difference between React on the browser and a mobile device is the lack of a DOM. We take a look a many of the different UI components that are available.
With React Native you have access to all of the devices hardware features like cameras, GPS, fingerprint reader and more. So we'll show some JavaScript code samples demonstrating it. We will wrap up the evening by deploying our app to both iOS and Android devices and with tips on getting ready for both devices stores.
Updated version of my tutorial on how to give a great tech talk, this time without Ian Dees. New tutorial is longer thanks to longer talk slot. Mostly the extra time will be spent on exercises.
“PostgreSQL, Python and Squid” (otherwise known as, “using Python in PostgreSQL and PostgreSQL from Python”) presented at PyPgDay 2013 at PyCon 2013-Christophe Pettus
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIVladimir Iglovikov, Ph.D.
Presented by Vladimir Iglovikov:
- https://www.linkedin.com/in/iglovikov/
- https://x.com/viglovikov
- https://www.instagram.com/ternaus/
This presentation delves into the journey of Albumentations.ai, a highly successful open-source library for data augmentation.
Created out of a necessity for superior performance in Kaggle competitions, Albumentations has grown to become a widely used tool among data scientists and machine learning practitioners.
This case study covers various aspects, including:
People: The contributors and community that have supported Albumentations.
Metrics: The success indicators such as downloads, daily active users, GitHub stars, and financial contributions.
Challenges: The hurdles in monetizing open-source projects and measuring user engagement.
Development Practices: Best practices for creating, maintaining, and scaling open-source libraries, including code hygiene, CI/CD, and fast iteration.
Community Building: Strategies for making adoption easy, iterating quickly, and fostering a vibrant, engaged community.
Marketing: Both online and offline marketing tactics, focusing on real, impactful interactions and collaborations.
Mental Health: Maintaining balance and not feeling pressured by user demands.
Key insights include the importance of automation, making the adoption process seamless, and leveraging offline interactions for marketing. The presentation also emphasizes the need for continuous small improvements and building a friendly, inclusive community that contributes to the project's growth.
Vladimir Iglovikov brings his extensive experience as a Kaggle Grandmaster, ex-Staff ML Engineer at Lyft, sharing valuable lessons and practical advice for anyone looking to enhance the adoption of their open-source projects.
Explore more about Albumentations and join the community at:
GitHub: https://github.com/albumentations-team/albumentations
Website: https://albumentations.ai/
LinkedIn: https://www.linkedin.com/company/100504475
Twitter: https://x.com/albumentations
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
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.
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.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
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.
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.
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.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
18. 3. No Real Keys
ID first_name last_name email login password active level
21 Josh Berkus josh@pgexperts.com josh jehosaphat TRUE u
47 Joshua Berkus josh@pgexperts.com joshb dbguy TRUE u
198 Josh Berkus josh@postgresql.org joshb jehosaphat FALSE u
204 Josh Berkus josh@agliodbs.com jberkus joshiam TRUE a
19. 4. No Foreign Keys
posts.content
Josh Berkus
What's up?
users.login
I'm going crazy!
Josh Berkus
jberkus
www.pornking.com
jerkyboy
Why?
selena
www.whitehouse.com
OSCON! It's too much!
www.whiteslavery.com
www.lolcats.com
I told you so ...
20. 4. Fun with Orphan Rows
posts.content
Josh Berkus
What's up?
users.login
I'm going crazy!
Josh Berkus
jberkus
Why?
selena
www.whitehouse.com
OSCON! It's too much!
www.lolcats.com
I told you so ...
21. 4. Fun With Updates
INSERT INTO threads VALUES ( .... );
if $dbh('success') then
while $these_posts.date > $cutdate
UPDATE posts SET thread = $newthread
WHERE id = $these_posts.id;
if not $dbh('success') then
while $these_posts.id > $last_id
UPDATE posts
SET thread = $oldthread
WHERE id = $these_posts.id;
DELETE FROM threads
WHERE id = $newthread;
22. 5. No Constraints
●
Users
●
userID AUTONUMBER PRIMARY KEY
●
frst_name TEXT
●
last_name TEXT
●
login TEXT
●
email TEXT
●
is_active TEXT
24. 5. No Constraints
first_name last_name email login password active level
Josh Berkus josh@pgexperts.com jberkus jehosaphat TRUE a
NULL NULL kelley@ucb k NULL FALSE u
Mike Hunt www.pornking.com c34521 c34521 TRUE I
S F gavin@sf.gov gavin twitter NULL x
25. 6. Non-Atomic Fields
name
Josh Berkus
SELECT SUBSTR(name,STRPOS(name, ' ')) ...
status
a
… WHERE status = 'a' OR status = 'u' ...
26. 6. Non-Atomic Fields
name
Josh Berkus
SELECT SUBSTR(name,STRPOS(name, ' ')) ...
status
i
… WHERE status = ??? ...
27. 6. Non-Atomic Fields
●
Account Type
●
5400 active individual
●
5401 inactive individual
●
5600 active board individual
●
5601 inactive board individual
●
6600 active corporate donor
●
6601 active corporate board member
●
6602 inactive corporate donor
●
6603 inactive corporate board member
31. 7. Magic Numbers
2008-02-30
SELECT user_id, min(date)
FROM user_posts
WHERE NOT (
extract(month from date) = 2
and extract (day from date) = 30 )
GROUP BY user_id;
37. 8. Polymorphic Fields
Name AccountType PrefContact ContactInfo
Josh Berkus Individual Email josh@pgexperts.com
John Dillinger Board Phone 415-555-1212
Pearson Company NULL www.pearson.com
Clorox Company Jackie 510-555-1111 x202
38. 9. EAV (entity-attribute-value)
ID Property Setting
407 Eyes Brown
407 Height 73in
407 Married? TRUE
408 Married? FALSE
408 Smoker FALSE
408 Age 37
409 Height 66in
39. 9. EAV (entity-attribute-value)
●
Diffcult tasks:
●
Find out how many men have brown hair and are
over 6 feet?
●
Make marital status and age required, but not
other things.
●
Apply constraints to feld values.
42. The Ten Ways
1.one big 6.non-atomic felds
spreadsheet 7.magic numbers
2.random naming 8.polymorphic
3.no keys felds
4.no foreign keys 9.EAV & EBlob
5.no constraints 10.ORM
43. Ten Ways to Fix Your Database
1.normalization 6.atomic felds
2.consistent 7.atomic felds
naming 8.atomic felds
3.keys 9.limit EAV &
4.foreign keys EBlob
5.constraints 10.DB design
44. More Wreckage
●
Simplifying Database Design Tutorial
– OSCON, Monday 8:30 AM
●
PostgreSQL Day San Jose
– Before OSCON, Sunday 19th, all day
– wiki.postgresql.org/wiki/PgDaySanJose2009
●
Me
– PostgreSQL Experts: www.pgexperts.com
– blog: it.toolbox.com/blogs/database-soup
– email: josh@pgexperts.com
This presentation copyright 2009 Josh Berkus, licensed for distribution under the
Creative Commons Attribution License.