(Part 2) Best databases & big data books according to redditors
We found 1,990 Reddit comments discussing the best databases & big data books. We ranked the 541 resulting products by number of redditors who mentioned them. Here are the products ranked 21-40. You can also go back to the previous section.
First don't think of this as "DBA" stuff - you're a developer, you need to know database technology, period. Read this rant by Dennis Forbes in response to Digg's CTO's complaints about databases it's very reminiscent of TFA.
Read Data and Reality by the late William Kent (here's a free copy) and get a fundamental understanding of "information" vs. "data". Then read Information Modeling and Relational Databases to pickup a couple practical approaches to modeling (ER & OR). Now read The Datawarehouse Toolkit to learn dimensional modeling and when to use it. Practice designing effective models, build some production databases from scratch, inherit some, revisit your old designs, learn from your mistakes, write lots and lots and lots of SQL (if you want to get tricky with SQL I suggest to pickup Celko's SQL for smarties - it's like the Hacker's Delight for SQL).
Many strange models you may encounter in the wild are actually optimizations. Some are premature, some outright stupid, and some brilliant, if you want to be able to tell one from the other then you're going to dive deep into internals. Do this generically with Modern Information Retrieval and Managing Gigabytes then for specific RDBMSs Pro SQL Server Internals, PostgreSQL Internals, Oracle CORE, etc.
Reflect on how awesome practically every modern RDBMS is as a great technological achievement for mankind and how wonderful it is to be standing on the shoulders of giants. Roll your eyes a little bit whenever you overhear another twenty-something millenial fresh CS graduate who skipped every RDBMS elective bleat about NoSQL, Mongo, whatever. Try not to fly into murderous rage when another loud-mouthed know-nothing writes at length about how bad RDBMS technology is when they couldn't be bothered to learn the most basic requisite skills and knowledge to use one competently.
Sure!
​
I think two classic books to start with is
​
Then I would move onto IDEO's Creative Confidence (https://www.amazon.com/Creative-Confidence-Unleashing-Potential-Within-ebook/dp/B00CGI3DWQ), which documents tons of different UX methods. Also, I haven't read it, but I've heard that Lean UX is a great book (https://www.amazon.com/Lean-UX-Designing-Great-Products-ebook/dp/B01LYGQ6CH).
​
Oh and to learn HTML, CSS, and JS (if you don't know them already), these are AMAZING reads: https://www.amazon.com/Web-Design-HTML-JavaScript-jQuery/dp/1118907442/ref=sr_1_3?crid=1QXNLBZ2V6GL8&keywords=learn+html+css+javascript&qid=1558328362&s=gateway&sprefix=learn+html+css+ja%2Caps%2C-1&sr=8-3
​
With that said, I know books are a big commitment so here's a random assortment of UX articles I've bookmarked over the years to get you started (some may be a little old but should still hold up from a process standpoint):
​
There's a lot more where that came from, so let me know if you get through that and are craving more material.
​
Here are a couple videos as well:
​
Finally, here's a very very short article I wrote myself that provides a quick intro into human centered design: http://www.jdktech.com/human-centered-design/
​
As you dive into this, note that user interface design and user experience design are different things--although they overlap and rely on each other in various ways. You can be a user interface designer (in which case I would recommend different reads), a user experience designer, or both. I'm a full stack designer, which means I specialize in all sides of the product life cycle, including research, validation, design, product management and development.
​
Hope this helps! Let me know if you have any other questions!
My advice is to follow 3 tracks.
----
These are things that led me to where I am today. Others may have completely different or contradictory advice. But these are my go to methods. And most of my clients in the past 2 years have come to me. I didn't call them, or post an ad. Generally they found me through a recommendation from a friend, LinkedIn, Twitter, slack group, Dribbble, or at a meeting.
Hello, I would suggest to get a good book on SQL basics, install an open source free database server like MySQL on your mac (via DMG) http://dev.mysql.com/doc/refman/4.1/en/macosx-installation.html and just get the basic commands. Nothing to get certified in. The user side, you, are just going to perform basic commands. Database Administrators with bazillion years of experience (/s) will take care of the data servers for the users, you. Good luck.
A good book for you would probably be:
SQL Queries for mere mortals.
http://www.amazon.com/SQL-Queries-Mere-Mortals-Hands-/dp/0321992474/ref=sr_1_1?ie=UTF8&qid=1426695830&sr=8-1&keywords=sql+for+mortals
Any SQL certification for you, as a data analyst or a financial analyst, is completely useless. Just get the practical skills and show them on your interview.
Reads like someone that read half of SQL For Smarties, and didn't understand that half.
Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems by Martin Kleppmann.
Amazing book for anyone who works on (or wants to work on) large scale applications.
> how to use google to solve a programming problem
You can't. You have to figure out how to solve the problem yourself. Then you use Google to look up individual pieces of that.
In other words, you have to go "Well, I need to open the file, then read it line by line, find the first opening brace, find the last closing brace, and extract the piece of the string between those two braces, then print that out."
How do I open a file? I can google that.
How do I find the opening brace? I can google that.
How do I chop out the middle of a string into a new string? I can google that.
See what I mean?
> CS textbooks in general just aren't as well written
Not any more. People just generally don't give a shit, I've found. I've learned numerous programming languages by reading the manual for the compiler in older times. Nowadays, you're lucky if there's even a formal spec of the syntax of the language, let alone a complete readable manual. The "Ruby on Rails" text that seems to be the authoritative text is full of stuff like "this routine seems to do ...." meaning the guy writing it doesn't actually know, and didn't bother to read the source code to figure it out for sure.
However, the good news is that the classic books full of the knowledge that does not become outdated are actually very well written. Start with some of Knuth's texts (https://en.wikipedia.org/wiki/The_Art_of_Computer_Programming), Date's book on SQL and relational models (http://www.amazon.com/Introduction-Database-Systems-8th/dp/0321197844), Bertrand Meyer on OOP (http://www.amazon.com/Object-Oriented-Software-Construction-Book-CD-ROM/dp/0136291554) and so on. (That last is even available as a PDF floating around.)
> some of the knowledge you gain could become potentially outdated in the future
Everything that you could look up on Google will be outdated in about five years. The stuff about how computers work, how to solve problems, etc never gets outdated.
On the other hand, it's one of the few jobs where you can take a job to do X and start working on it without any idea of how to do X. I've been programming almost 40 years and I've never taken a job that I knew how to do when I took the job.
In this order:
Your database is (most likely) going to be your bottleneck.
Get High Performance mySQL - it's a great book that'll help you make smart design decisions. Make sure you get the 2008 edition and not the 2004 edition.
Check out Percona Server, a more performant fork of mySQL 5.1 server.
Depending on your Database load, you should look into mySQL Master/Slave Replication. Maatkit has lots of useful tools for monitoring/backing up mySQL Replication.
Like some other commenters have mentioned, check out Memcached. Make sure you use pecl-memcached for accessing Memcached from PHP. There is another extension, pecl-memcache, but it's missing CAS token support, which helps with concurrency.
Make sure you build pecl-memcached with the latest version of libmemcached. Older versions have a nasty bug that ignore timeouts, so if your memcached server goes down, your PHP processes will wait forever.
Use Nginx and PHP-FPM (it comes with the latest version of PHP). Nginx uses so much less memory than Apache. I have a Nginx Server that is pushing 250mbps of traffic and uses less than 200MB of memory. PHP-FPM uses (about) the same amount of memory as mod_php, but gives you way more control.
You also might want to check out the various NoSQL databases and see if any of them fit your work-load. It sounds like Redis might be a useful tool for you, but YMMV- you'll have to check it out and see if it fits your needs.
Here are all the local Amazon links I could find:
amazon.com
amazon.ca
amazon.com.au
amazon.in
amazon.com.mx
amazon.de
amazon.it
amazon.es
amazon.com.br
amazon.nl
amazon.co.jp
amazon.fr
Beep bloop. I'm a bot to convert Amazon ebook links to local Amazon sites.
I currently look here: amazon.com, amazon.co.uk, amazon.ca, amazon.com.au, amazon.in, amazon.com.mx, amazon.de, amazon.it, amazon.es, amazon.com.br, amazon.nl, amazon.co.jp, amazon.fr, if you would like your local version of Amazon adding please contact my creator.
Introduction to Database Systems by Chris Date. It's a solid introduction to the theory and to practical issues. The author helped develop the relational database model at IBM with E. F. Codd. He's a hard-line advocate for the relational model. Some people think he's too hard-line. It will help you make database enemies because you'll think you know more than other people do.
I'm not a design expert, but I do know that just because Nate uses Excel himself doesn't mean that he's the guy generating these plots. I'm fairly certain that most of the journalists putting these together are using ggplot from R or python.
If you're interested in exact replicas, your language can do 80% of the heavy lifting by giving you the bones of the structure. But to really bring it home, you need a program like Inkspace or Illustrator to polish these up.
I don't think there's any language now that effectively uses good design sensibilities. This is discussed a bit in the book Visualize This by Nathan Yau.
For most people, it looks like the python / R tutorials listed here should get the job done.
edit: a word
It's hard to provide a full answer just based on available information, but roughly you have many different ways to achieve what you have in mind.
Some families of ways to handle this:
What's the most adequate way to do this depends on various factors:
Finally, here are some tools which can help:
If you are into this for the long term, it can be worth reading a book that I often mention, which is the ETL book by Ralph Kimball. While quite old, it provides interesting patterns.
Happy to detail this more if you provide more input!
A great portfolio and github profile can be worth more than a degree in many cases. The degree can help get you in the door for your first few jobs, but definitely is not required. Show off your side projects. Show off your code. All your web projects should have readable HTML, CSS, and Javascript (I should be able to right click, view source, and see what you wrote).
You're pretty much guaranteed a front-end web job if you have great skills with one of the big front-end js frameworks right now: angular, react, etc...
Some jobs to look out for: Front-end developer, UX Developer, UX Prototyper. Front-End dev is such a valuable position, some companies don't know how much they're needed. UX Developer -- who knows what they mean by this... UX Prototyper -- usually someone who focuses on front-end interactions, generally hands off to a core development team.
Lastly, it'd be great to have some core "UX" skills. Steve Krug's Don't Make Me Think is a great intro. Pick up a wireframing tool like Balsamiq or Axure and learn to wireframe before you implement. (As a UX dev though, hopefully the design team hands off wireframes to you, or involves you in the design process)
You may want to read SQL for Smarties.
It does a very good job of stressing the importance of adjusting your thinking when you're working with a relational DB. If you approach SQL as if it were a procedural language, you will hate it, your results will suck, and DBAs (and devs who are competent at SQL) will make fun of you.
If you're looking for someone to go over the language one on one with you, you could try r/ProgrammingBuddies
Otherwise, you could buy SQL Queries for Mere Mortals which was incredible in understanding and writing queries in comparison to learning from the websites that I tried. You could probably get the book via "other means" if you want, as well. You can supplement the book with Google/StackOverflow searching.
If you want to try before you buy, you could use CodeAcademy's SQL course - I don't really like recommending CA to people but I found their SQL course to be useful for a general understanding.
tl:dr; make websites and learn Search Engine Optimisation
The context of my starting point is important, hence the detail:
I'm 26 now, and after leaving sixth-form I became the full time carer of my Dad and as a result haven't worked a normal job, now I'm trying to get in to work from basically step 0, and struggling massively to even get a rejection email/letter.
In that time I volunteered for a media charity that does hospital radio & internet radio, and I made 5 websites for them. When we launched an internet radio station from scratch, I made their website. Without me they would have needed to pay money we just can't spare. When you search "[Local area] radio" it's on the very first page of Google results, even ahead of 'radio directory' websites. Companies in our area are contacting us to work with us, they say they find us on Google. I learned everything I know in my free time without paying a penny. They tried to bring people on from a local college to assist me when my time was short and couldn't find anyone to do even basic tasks.
It's a great skill to have and it's in demand. It's easy to learn. There's pre-made software you can build upon such as WordPress. If you look in your local area it's very easy to find companies with shitty websites that can be convinced to pay you, and that is where I am currently heading. I picked up a huge book to finally formally learn PHP, JavaScript etc and next year I'll start my company. I already have a portfolio and proof my work is effective.
http://www.amazon.co.uk/Learning-MySQL-JavaScript-HTML5-Step/dp/1491949465
If you don't want to hunt down books, there are an infinite number of free resources for all skill levels.
http://www.w3schools.com/html/
https://www.codecademy.com/learn/web
Just out of curiously, why are you going the php route? Instead of rails, python (django) , node or asp.net mvc?
When buying books I normally check the Amazon reviews
http://www.amazon.com/Learning-MySQL-JavaScript-HTML5-Step/dp/1491949465
I also try to buy directly from O'Reilly if I can. They often have great sales (50% off ebooks and such) and their ebooks are 100% DRM free so I can use them on any device.
I'm not familiar with the book you mentioned, but just though I'd provide insight on my book buying process.
where the fuck are you buying your books
If you want to read more about the topic, this book just got released https://www.amazon.com/gp/aw/d/B06XPJML5D/ref=ya_aw_dod_pi?ie=UTF8&psc=1 and it is pretty much a must read for back end developers.
Anything by Tufte and the Flowing Data book and blog are great starting places. Tufte is more theory driven, for lack of a better term, while the Flowing Data sources have more "worked" examples (with R, Python, etc).
It would be worth learning ggplot2 as well if you are interested in data visualization as that seems to be the current "standard" tool. Hadley Wickham's website and UseR book on ggplot2 are great places to start.
Relatedly, Wickham's PhD thesis is all about tools and strategies for data visualization and can be found for free on his website. There is also an hour long seminar and slides to go with the paper.
Get a copy of Visualize This. Visualize This: The FlowingData Guide to Design, Visualization, and Statistics https://www.amazon.com/dp/0470944889/ref=cm_sw_r_cp_api_jA9KzbF2FGX6M
Do you expect more than a few thousand people will access this system. If not then definitely stick with an RDBMS. NoSQL is generally only appropriate if you need blindlingly fast reads, tolerably slow writes, and scalability with commodity hardware. RDBMSes give you balance of read and write throughput for a less-than-crazy number of users, and they make it far easier to maintain data integrity.
Working with relational data is as much art as skill. Even for something as simple as an inventory system (the 'Hello World' of databases) there are a number of choices to make and peculiarities to troubleshoot.
In addition to whatever database specific books you may need, I would suggest you pick up
The Art of SQL. It teaches how think about data and relationships declaratively and to understand complex data systems from the outside in.
You don't know even half of MySQL until you you've read: http://www.amazon.com/gp/offer-listing/0596101716/ref=tmm_pap_new_olp_sr?ie=UTF8&condition=new
So doof es klingt: einfach machen. Learning by doing ist die beste Art und Weise R zu lernen. Am Anfang ist es recht schwer, am Ende dann aber wesentlich einfacher und schneller als Point&Klick Programme wie SPSS.
Ich finde das R Cookbook ganz gut um ein Nachschlagewerk zu haben. http://www.amazon.de/Cookbook-OReilly-Cookbooks-Paul-Teetor/dp/0596809158
Dimensional modeling is under valued in today's climate. Any complex models on a large scale will be more effective when modeled optimally.
https://www.amazon.com/Data-WarehouseÂ-ETL-Toolkit-Techniques-Extracting/dp/0764567578
The Data Warehouse ETL Toolkit
Hi /r/datascience. I'm an aspiring data scientist and I'm trying to put together a data science course that's self-taught and can be done on one's time. Any pointers would be appreciated.
Section A: Foundations in Mathematics
Section B: Foundations in Computer Science
Section C: Basic Data Science
Section D: Advanced Data Science
These are the courses/subjects I've gathered would be most important or useful for someone trying to learn data science. Below are the resources that can be used to learn these subjects.
Section A Resources
Khanacademy - General Calculus, Linear Algebra
PatrickJMT - General Calculus, Linear Algebra
Professor Leonard - Calculus I, Calculus II, Calculus III, Statistics
MIT OpenCourseWare - Single Variable Calculus (I/II), Multivariable Calculus (III), Linear Algebra, Statistics, Probability Theory/Bayesian Statistics
Harvard - Probability Theory/Bayesian Statistics
Section B Resources
Datacamp
Dataquest
Codeacademy
Code School
LearnPython.Org
Kaggle
Udemy
Udacity
Rmotr
Section C Resources
University of Michigan - Introduction to Data Science in Python
Harvard CS109 - Introduction to Data Science
R for Data Science
Section D Resources
Andrew Ng's Machine Learning
Jose Portilla's Python for Data Science and Machine Learning
Andrew Ng's Deep Learning Series
Am I missing any important courses, free or otherwise? Any important books? Any concepts I'm completely forgetting about?
I've been told this is missing real education in science itself. How can I incorporate that?
Oh, this? https://smile.amazon.com/Learning-PHP-MySQL-JavaScript-Javascript/dp/1491918667/ref=sr_1_1?ie=UTF8&qid=1494675895&sr=8-1
Hey if you are starting to learn web design don't head towards random website and start learning randomly. Instead use books to properly grasp the concept and what web designing is all about.
If you are new to web designing don't read this book "HtmlandCssBook" which the user redditor3000 mentioned.
Start with this book instead --> Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript, and Web Graphics
After reading the very first chapter of that book most of the questions you asked should be answered.
Then I would suggest to read this book next - Learning PHP, MySQL, JavaScript, CSS & HTML5: A Step-by-Step Guide to Creating Dynamic Websites
Amazon has a 3 book kindle edition for free right now (you can use an app on mobile or your PC as well). I "purchased" it but haven't looked through it yet.
https://www.amazon.com/Python-Manuscripts-Programming-Beginners-Intermediates-ebook/dp/B07CQPHC1N/
for years I've recommended going through SQL for Smarties which in the years since I had it seems to have grown to be three times its size, but nevertheless describes relational databases and SQL querying from the classical DBA perspective. He also has SQL Puzzle books that are also great. If you go through Celko's books you'll really have a sense for how a relational database was really meant to be used, and when you see someone touting MongoDB queries you'll just laugh your ass off.
Nathan Yau, Visualize this
Dona Wong, The Wall Street Journal Guide to Information Graphics: The Dos and Don'ts of Presenting Data, Facts, and Figures
http://www.amazon.com/Visualize-This-FlowingData-Visualization-Statistics/dp/0470944889
Took a data viz class last year. This was the textbook. Nathan yau's website flowing data is a good resource as well. Also check out d3.js for an advanced/flexible technology for visualizing data.
If it's something you might want to learn more on (as back end dev work can be very lucrative), I'd recommend a book, "The art of SQL". It's more than a simple text book or cookbook, it teaches you how to think about sql problems in the context of real world applications.
https://www.amazon.com/Art-SQL-Stephane-Faroult/dp/0596008945
edit Also pinal dave of SQL authority is a life saver, check out his blog at:
https://blog.sqlauthority.com/
If you want to be good at sql, you have to think in sets. Also you need to pic a platform to learn on because even tho SQL is a standard, the sql will look different on different platforms.
these books balance each other out. Start with Date first. Celko can get you into trouble in places.
edit: i just realized that the author wanted to learn sql, not how start out designing databases. Whoops. Syntax can be learned anywhere. The previous books will discuss how to build properly built databases. However poorly built databases will stress you SQL-fu
Intro to PHP/MySQL: http://www.amazon.com/Head-First-MySQL-Lynn-Beighley/dp/0596006306
More advanced SQL knowledge: http://www.amazon.com/Head-First-SQL-Brain-Learners/dp/0596526849
More advanced PHP knowledge: http://www.amazon.com/PHP-Object-Oriented-Solutions-David-Powers/dp/1430210117
Go in that order, you'll be very comfortable in a few months.
Right now I'm reading The Art of R Programming. It seems like it has a lot of good knowledge but also seems really disorganized. The author uses control statements without explanation in the 2nd chapter about vectors to demonstrate their ability, and then doesn't get back to control statements until chapter 7. But being a seasoned programmer I don't think things like that will bother you too much. This is the only R book I've used, so my opinion isn't very broad based. The reviews for R Cookbook seem pretty good and I'm a little sorry I didn't start with that instead.
Hopefully someone else can chime in.
What kind of resources are you looking for: books, online tutorials, cheatsheets, other?
Is there a language or technology you are specifically using or looking at using?
If you are using R I would recommend parts of Hadley Wickham's "R for Data Science: Import, Tidy, Transform, Visualize, and Model Data". Specifically the chapters on Data Import, Transformation and Tidy Data.
If you have any specific questions feel free to ask.
The chapters in question available for free online:
https://r4ds.had.co.nz/data-import.html
https://r4ds.had.co.nz/transform.html
https://r4ds.had.co.nz/tidy-data.html
To buy a physical copy of the book:
https://www.amazon.com/Data-Science-Transform-Visualize-Model/dp/1491910399/ref=sr_1_1?crid=3EQZKAWKO7ZW9&keywords=r+for+data+science&qid=1574185159&sprefix=r+for+d%2Caps%2C232&sr=8-1
Edit:
Full github repository for book source code:
https://github.com/hadley/r4ds
PostgreSQL 9.0 High Performance is getting a bit dated but is still a good starting spot for understanding how Postgres works and utilises system resources.
It's hard to do server sizing without knowing how your workload looks like and performs, unless it's on the trivial end of the spectrum.
Are you looking at a fresh deployment or are you planning to migrate an existing database?
I tend to find most books to be worthless. This one was very helpful: http://www.amazon.com/PostgreSQL-High-Performance-Gregory-Smith/dp/184951030X
GUI/UI/UX design is a specialized skill that not many developers can do (similarly, a lot of designers don't necessarily know how to design and craft code).
I've probably designed what something looked like a couple times in my career, but it's never been a real component of any of my jobs.
However, if it's something you want to get into, your school should have courses like Human-Computer Interaction, and there are plenty of resources to jump into and get your feet wet:
Some resources I found useful:
I've had the experience where I was turned down for a $80k/y job because they straight up didn't like me and I passed a $155k/y interview with a palindrome check question.
As software guys I think to one degree or another we're all on some sort of a spectrum :) What makes you good at this job is always going in 100%, all-or-nothing, winner-take-all and the reality of the matter is that it's not actually like that. Don't take a single loss like that's going to be your life now. It's a little easier to see if you come from the background I come from (immigrant) but I get it.
Imagine that you fail 5 more interviews and then, after that, you are guaranteed to make 200k working 30 hours remotely (it happens)
You can now go live your life anywhere on the planet and crush it. It just has to be 5 though, not 4. If you imagine this to be true, you'll suddenly see how that lifts you out of your negative frame of mind.
Meanwhile, focus on things you can control:
Work on that, remain focused and next thing you know you'll be off the market
Edit: Also check out The Senior Software Engineer and Designing Data-Intensive Applications because those are key to everything but "leetcode" stuff.
Today I stumbled upon a free Kindle Python book set from Amazon here. Maybe it might interest you?
pe https://www.reddit.com/r/FreeEBOOKS/ am vazut
mai erau cateva freebie legate chiar de python
Not SQLServer specific, but Joe Celko's "SQL For Smarties" is a great reference for all things SQL: http://www.amazon.com/Joe-Celkos-Smarties-Fourth-Edition/dp/0123820227
The classic is CJ Date, Introduction to Database Systems.
http://www.amazon.com/Introduction-Database-Systems-8th-Edition/dp/0321197844
Be aware that this is all theory. It's not going to tell you how to write MySQL queries.
SQL Queries for Mere Mortals is an excellent beginner's read front to back. The same guy wrote a database design book, which I did not find as helpful.
As for software, it depends on what database system you end up using. I use SQL Server and a little MySQL, but I know PostgreSQL, SQLite, and many others are popular.
If you're learning indipendantly, I'd start with MySQL , as it is free (open source) and you will be able to learn the basics of SQL in any SQL database. It also has a good free GUI development tool, MySQL Workbench, and a robust online community.
Like any programming language, the best way to learn is to build something with it. So start thinking of something you want to build, so you'll have something to do once you know enough to play around.
>But basically after that I have to decide soon whether or not to focus on a Cisco, or Microsoft track at my college.
Sounds like your "college" is a joke. You should be learning the fundamentals that are responsible for the underpinnings of these technologies, not vendor recommendations that can easily almost be called propaganda. Especially at your beginner level, you wouldn't even touch technologies as part of your responsibility at the level taught by an MCSE or CCNA unless you work for an absolute moron.
The world is larger than Cisco and Microsoft. I suggest you look for actual academic books on Networking and Server Architecture to learn more useful things.
Computer Networking: A Top-Down Approach (6th Edition) https://www.amazon.com/dp/0132856204/ref=cm_sw_r_cp_awd_4Ev3wbE0EVGDH
Understanding and Deploying LDAP Directory Services, 2nd Edition https://www.amazon.com/dp/0672323168/ref=cm_sw_r_cp_awd_KFv3wbW3QNAGF
For future tracks:
Databases:
SQL Queries for Mere Mortals: A Hands-On Guide to Data Manipulation in SQL (3rd Edition) https://www.amazon.com/dp/0321992474/ref=cm_sw_r_cp_awd_SGv3wbGCZ24FA
Fundamentals of Database Systems (7th Edition) https://www.amazon.com/dp/0133970779/ref=cm_sw_r_cp_awd_qHv3wb1YC95NS
Security:
Computer Security: Principles and Practice (3rd Edition) https://www.amazon.com/dp/0133773922/ref=cm_sw_r_cp_awd_ZHv3wb7J1YJKC
Blue Team Handbook: Incident Response Edition: A condensed field guide for the Cyber Security Incident Responder. https://www.amazon.com/dp/1500734756/ref=cm_sw_r_cp_awd_uIv3wbK1361D2
Hardware:
Upgrading and Repairing PCs (22nd Edition) https://www.amazon.com/dp/0789756102/ref=cm_sw_r_cp_awd_gJv3wbCKGA502
Problem Solving:
The Thinker's Toolkit: 14 Powerful Techniques for Problem Solving https://www.amazon.com/dp/0812928083/ref=cm_sw_r_cp_awd_XKv3wbKQFJK6Q
Best of luck. I recommend learning Shell languages and the basics of shell navigation and data manipulation techniques for various operating systems as well.
I really love these two books.
https://www.amazon.com/Database-Design-Mere-Mortals-Hands/dp/0321884493/
https://www.amazon.com/SQL-Queries-Mere-Mortals-Hands/dp/0321992474/
Some books I can recommend for map nerds: Strange Maps: An Atlas of Cartographic Curiosities, How to Lie With Maps, and a related book that's a bit more useful for data visualization - Visualize This: The FlowingData Guide to Design, Visualization, and Statistics.
The typographic maps from Axis Maps are pretty awesome and there's all kinds of map-related stuff on Etsy.
A well-thumbed book sitting on my desk. Yet, the post in question wasn't addressing optimization as such. It was more of an overview of models and design with optimization considerations.
(Another favorite of mine is The art of SQL.)
Percona has more stability and better performance. It backports many features from MySQL 5.5 and has quite a few additional features. It's developed by the authors of the MySQL Performance Blog and High Performance MySQL. It remains API compatible so you can use the standard mysql client libraries, as most of the differences are internal, making transition very easy.
We switched to Percona at work recently, after being introduced to it through the XtraBackup utility that they distribute. This is one of the best innodb hotbackup tools I've seen, particularly for the price of free.
http://www.amazon.com/Joe-Celkos-SQL-Smarties-Programming/dp/1558605762
http://www.amazon.com/SQL-Antipatterns-Programming-Pragmatic-Programmers/dp/1934356557
Yes, the name of the first one is horrible. It's a fantastic book.
Since you're talking MySQL, you might also want
http://www.amazon.com/High-Performance-MySQL-Optimization-Replication/dp/0596101716
I'm not too sure on your level of knowledge, but this book is pretty good for the intermediate level. Plus it's an O'Reilly book, so you get a sweet picture of an animal on the cover.
I'm going to assume you're a complete newbie. I'm only a few steps ahead of you, really, but I can share some advice. I've always felt like 75% of the battle is figuring out what to learn when it comes to scripting or computer languages in general. And a lot of time, even cutting edge, comprehensive sources are outdated within a few years and, if you follow their advice, you may expose yourself to security concerns. Like leapyquacky said, the question is a bit vague, but I'm going to assume you want employees to access a page with user-specific credentials so no employee can impersonate another, etc:
It's not hard but it requires a scattershot of understanding that may take a little while to really get. I know it did for me, anyway. Once you have that going on, you'll probably have more specific questions. Lookin' forward to it.
I had the same problem as you, tried Drupal and Joomla but I found it was too difficult to tailor them to my needs (basically, creating an online catalog of pictures, an email form and some static pages). Finally I ended learning pure PHP+MySQL from a book and it worked pretty good for me.
PS: English is not my native language so... excuse me for any mistakes ;)
If you have any experience with manipulating tables in general then learning how to use a (MySQL) database is relatively intuitive, provided that you aren't concerned with optimization issues such as normalizing tables, scaling problems down the road, or managing any fancy relationships. I'm sorry for how demoralizing this sounds but... based on the needs you've described you could probably teach yourself all you'd need for that project and how to interact with a MySQL database via PHP in less time than its taken you jump through all these hoops trying to use Google spreadsheets.
Here's a good and relatively cheap book on the matter.
I read that book as a CS undergrad before taking any database classes and it helped quite a bit; in particular the chapters on MySQL are very concise and easy to read. Even if you've never seen PHP before just seeing MySQL syntax for the first time hopefully leads to a "oh well duh that's all very intuitive" moment. Hopefully it will help give you a better understanding of the larger picture and how these languages interact with each other.
Note: There are tons of other great, free resources online that you can peruse at your leisure without paying for a book.
A great book for beginners
Learning PHP, MySQL, and JavaScript
Besides Python, I'd also recommend getting proficient in SQL. It's often quicker to perform aggregations and other calculations in the database. If you're already familiar with a programming language (especially C++), then SQL should be no trouble. While there's plenty of stuff online, I've found Head First SQL to be a good introductory book for folks who have never seen SQL or touched a database before (it may or may not be too elementary for someone that can already program, however...).
Data scientists don't have to know as much programming as the average software engineer, but you should be comfortable enough to adapt or wrap code around existing libraries. For example:
k
(using a built-in library such as scikit-learn), and then using the average silhouette coefficient to find the best value ofk
.In general, don't be comfortable with just using software as a "black box" for statistical and scientific computing. Have at least some idea of what's going on "under the hood" when that black box is used. That will put you far ahead of the game.
Here are some books to get started (they are available online for free)
​
https://www.amazon.com/Head-First-SQL-Brain-Learners/dp/0596526849/ref=sr_1_1?keywords=head+first+sql&qid=1563487682&s=gateway&sr=8-1
​
https://www.amazon.com/Automate-Boring-Stuff-Python-Programming/dp/1593275994/ref=sr_1_2?crid=1P184JBOKVQAL&keywords=automate+the+boring+stuff+with+python&qid=1563487721&s=gateway&sprefix=automate+the+%2Caps%2C132&sr=8-2
​
These books will put you in a position to create some interest in the subjects and then you can read the standard textbooks to go deeper and gain mastery
for sql Advanced
​
https://www.amazon.com/SQL-Cookbook-Solutions-Techniques-Developers/dp/0596009763/ref=sr_1_3?crid=3GKVQHG48HTXT&keywords=sql+cookbook&qid=1563487850&s=gateway&sprefix=sql+cook%2Caps%2C134&sr=8-3
​
https://www.amazon.com/Learning-Python-5th-Mark-Lutz/dp/1449355730/ref=sr_1_3?keywords=Learning+python&qid=1563487873&s=gateway&sr=8-3
I really enjoyed and was able to build a strong foundation with Head First SQL
http://www.amazon.com/Head-First-SQL-Brain-Learners/dp/0596526849/ref=sr_1_1?ie=UTF8&qid=1416913925&sr=8-1&keywords=head+first+sql&pebp=1416913929647
Orielly used to publish the first chapter online but I can't find t on their site right now.
I've studied for the 5.0 Developer cert, and the 5.6 Developer cert, and I've also mentored about 100 students through these exams. Most/all of the students were new to database development, so I had to teach them from zero to Oracle Certified in the space of about 10 weeks.
To echo what /u/justintxdave said, the 5.6 Developer exam is tough. A lot of the questions are deliberately obtuse in my opinion and seem designed to catch you out. Plus they have questions on Java talking to MySQL, PHP talking to MySQL and Microsoft .NET talking to MySQL. This seems a little unfair to me - if you're a PHP developer, you're unlikely to know .NET and vice-versa.
The 5.0 Certification Study Guide is still a good resource, but you need to be careful to identify those things that have changed from 5.0 to 5.6 - e.g. DATETIME, TIMESTAMP, SQL MODES, and there are topics in the new Developer exam that were in the old DBA exam - transactions, foreign key constraints etc. The sample questions on the DVD of 5.0 book are a good practice tool.
Here's the list of topics I studied for the 5.6 exam, and what books/resources I used.
Study Guide refers to the 5.0 Certification Study Guide , and the relevant chapter numbers.
Head First SQL is a very basic beginners guide to SQL that you probably don't need.
I also used Paul du Bois's MySQL Developer's Library to fill in some blanks.
There
iswas a real need for an official 5.6 Certification book, but at this stage an 8.0 cert is probably just around the corner. I always had a notion I might write a 5.6 book, but life got in the way :)Best of luck with the exam!
The head first series is really good
http://www.amazon.com/Head-First-SQL-Brain-Learners/dp/0596526849/ref=sr_1_1?ie=UTF8&s=books&qid=1269316507&sr=8-1
Il terzo sopratutto, se puoi investirci qualche soldo, è secondo me il più veloce. Non parlo strettamente di quel corso gratuito in italiano, ma di tutti i corsi presenti nel portale. Essendo direttamente applicativi ti mitigano la curva di apprendimento di molte volte.
Dell'ultimo libro (ma anche dello springer) ci sono poi tutti i seguiti nelle rispettive collane, in base al proprio indirizzo e a quello che si vuole fare (medicina, finanza, cibo, ecologia, morfologia, etc.)
edit: credo esistano svariati corsi base in inglese su youtube, e qualcosa pure in italiano.
As you already have programming experience I strongly recommend you try "The Art of R Programming" sooner or later. The majority of other books discuss R from a statistical aspect. This book, however, approaches it as a programming language. One of the few R books I own ("R graphics" and "ggplot2" might be others, but that's a bit advanced.)
This site is a great resource for all those simple little R-isms that I forget from time to time. "The R Cookbook" is another resource, much like the above, but with a bit more meat.
There are LOADS of other resources out there. If you ever have a question, just google it + "R stats" and you'll usually find what you need.
You might also want to subscript to "R Bloggers", it's a planet with loads of sources. It's inspiring and educational to see all the things people put R to use for.
From my coursework, I found these resources helpful:
http://www-bcf.usc.edu/~gareth/ISL/
https://www.amazon.com/Art-Programming-Statistical-Software-Design/dp/1593273843/ref=sr_1_3?ie=UTF8&qid=1527726606&sr=8-3&keywords=programming+with+R
https://www.amazon.com/Cookbook-Analysis-Statistics-Graphics-Cookbooks/dp/0596809158/ref=sr_1_9?ie=UTF8&qid=1527726606&sr=8-9&keywords=programming+with+R
https://www.amazon.com/Mastering-RStudio-Develop-Communicate-Collaborate-ebook/dp/B0123RVFZG/ref=sr_1_1_sspa?s=books&ie=UTF8&qid=1527726659&sr=1-1-spons&keywords=Rstudio&psc=1
Also The Data Warehouse ETL Toolkit: Practical Techniques for Extracting, Cleaning, Conforming, and Delivering Data https://www.amazon.com/dp/0764567578/ref=cm_sw_r_cp_apa_lnUSAbDC5NK4X
Informatica is widely used for ETL tools, but more important is understanding the challenges. How to design staging tables, what update strategy to use, how to design restartable jobs, and so on. This book refers to data warehousing, but the techniques are applicable to most scenarios.
Although I am not a statistician myself and given your background, some of my recommendations would be:
This should probably be enough for now but if you need more recommendations just say so :)
Regarding the time series question, it's not my area of expertise but since time series analysis ends up employing many statistical methods, I think it can be considered an area of statistics (Statisticians around here correct me if I am wrong :P)
I used data camp and I recommend it because it covers both programming in base R and the full tidyverse library. I did the R programming course and it covered everything from functional programming to object oriented programming in R.
If you don’t want to do a monthly subscription, purchase Hadley Wickams (author of the tidyverse) book R for Data Science
As far as training goes I am a trainee myself so I don't know how much help I can provide. Since you seem pretty new to all this (with the most positive meaning) here are some points I can give you and I hope others will correct me where I am wrong.
Most important: Go to github.com and seek for projects doing what you want to do preferably with the frameworks you choose. Then read their code and try to understand what they do.
PS: If you haven't done any serious reading so far I would recommend this book. https://www.amazon.com/Learning-PHP-MySQL-JavaScript-Javascript/dp/1491918667
It is a bit outdated but it is packed with good advice to get you started. The rest you can learn by googling.
this book and this:
hash('ripemd128', $salt1.$password.$salt2);
The previous edition from 2012 recommended md5.
I guess having a unique salt for each password using password_hash is better than applying the same to all of them. Not sure if ripemd128 is good or not.
Work on your code/portfolio in your spare time and apply to any job that interests you.
In terms of how to improve your code, I'd take a look at these resources:
HTML/CSS
Javascript
PHP/MySQL
Or look online for any good resources for whatever technology you want to get into.
Good luck :)
You've chosen an interesting time to pick up web development! /u/GruntildaJr left an excellent guide on learning front end development, but as a back-end developer I wanted to chime in for the other half.
Learning back-end development without an internet connection will be a little more difficult, but certainly not impossible nor any more effort than a few hours of getting things configured. Nearly any web server can be hosted on your personal machine without an internet connection. Apache is my personal choice and likely one of the easiest to setup on Windows, but Nginx is a lot of fun and there's plenty of options.
Here is a fairly straight forward tutorial for setting up a local development environment on Windows. Although the writer suggests using Zend Eclipse as an editor and I would have to point you towards PHPStorm or Atom with a linter and autocomplete plugin. That said, Eclipse will serve you fine. After completing the tutorial you will have PHP, MySQL, PHPMyAdmin, and Apache set up and running. While not especially fancy, these are the basic tools to start learning the ins and outs of back-end development.
As for learning materials, I love Learning PHP, MySQL, and JavaScript and PHP The Right Way. If you want something very beginner friendly and a bit easier to read, PHP Pandas is a good option.
Of the three, PHP The Right Way will be the biggest challenge. It moves quickly and takes you the furtherest, if you haven't programmed before I wouldn't recommend starting with it but I would recommend going through it after you've gotten some experience under your belt. The O'Reilly book is good for walking through a stack of technologies and outlining how they interact to make a full website, while PHP Pandas is a more thorough dive into the language itself (and it's a lot less painful to slog through if you don't like textbooks). All three are excellent and stand well on their own. If you can only select a single one though, I'd highly recommend the O'Reilly book.
A good companion for any more formal book is the Learn X In Y Minutes PHP Page. It's a little one page cheat sheet to reference when you forget something like the syntax for a switch statement or why you should use double instead of single quotes. There's also a bunch of other languages including JavaScript and I've found them all incredibly helpful. Zeal, as mentioned by GruntildaJr is also a great asset, and it contains the pages for PHP.
There are back-end languages other than PHP along with plenty of frameworks and libraries to explore and learn. I don't want to make it sound as if PHP is your only choice, or the best choice for a back-end language. I do think that it is one of the best choices for a back-end language when you take the learning offline, though. There is a wealth of offline literature, I only linked a few books but the market is simply saturated with PHP texts. The language also stands easily on its own, and for the most part the texts treat it as such. You won't constantly be needing to "pip install" or "npm install" like you do with Python and Node.js.
I hope all of that was of some help, it can be a hump to get over that initial setup but afterwards the learning is much more rewarding. Happy developing and godspeed!
The book Learning PHP, MySQL, JavaScript, CSS & HTML5 was one of the most useful PHP books I read as a newcomer to PHP. It's very basic but it teaches how you can start using PHP to do useful and interesting things.
After making it though that book, I think PHP Objects, Patterns, and Practice is a really good next step. It will help you learn to design, organize, and write your code to a more professional standard. It will also help you better understand the workings of a PHP framework.
Only about half of the programming industry has a degree directly related to IT or programming. Most have college degrees in something, but in the end the most valuable thing to someone hiring in IT is skills. Once you have the skills, you just need to get noticed.
I would recommend you learn Linux administration and web development. (Or you could learn Windows too - I don't know Windows well so I can't comment on it. Linux and Mac OS X are somewhat more popular in the programming world, but if you're looking to get into IT, not programming, then Windows administration might be more common.)
A good book to learn Linux is "The Linux Command Line".
https://www.amazon.com/Linux-Command-Line-Complete-Introduction/dp/1593273894/
For learning web development, you could read "
Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5"
https://www.amazon.com/Learning-PHP-MySQL-JavaScript-jQuery/dp/1491978910/
Codecademy would also really help you in here:
https://www.codecademy.com/
If you have any questions, feel free to PM me and I'll do my best to respond.
Check this one .
Your idea of not wanting to study anything unnecessary is a bit unrealistic, it's like saying you just want to fix your Honda and not understand how cars work. You need to understand a huge amount of random tech that all will require some study or you will be perpetually lost.
I would recommend a book like this:
https://www.amazon.com/Learning-PHP-MySQL-JavaScript-Javascript/dp/1491978910/
And just read it in order it recommends.
Start with this one: Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5 (Learning PHP, MYSQL, Javascript, CSS & HTML5) https://www.amazon.com/dp/1491978910/ref=cm_sw_r_cp_api_i_Duo0DbK8M9NZE
One of the best for learning about lower level details: https://www.amazon.com/PostgreSQL-High-Performance-Gregory-Smith/dp/184951030X
PostgreSQL Admin Cookbook followed by PostgreSQL 9.0 High Performance
Probably picking up a copy of Greg Smith's book is a good place to start in that case. Keep in mind how things have changed with ssd's since that was published, otherwise it's all very pertinent.
WHY DO YOU ASK MAINTAINS THE PROPER ATTITUDE OF A DECENT THING?
:)
> From experience, one book is barely enough to get your feet wet
Ha! Definitely. I keep getting ideas for other books I should write.
I'd recommend the following as good general books to read. They're all good no matter what type of programming you do:
That should keep you busy. :)
EDIT: Oh, also, you can read my other two Python books. One is on graphical games with Pygame and the other is on classical ciphers and how to crack them. http://inventwithpython.com
A list of some of my favorites so far..
Interactions of Color by Josef Albers
[The Elements of Typographic Style] (https://www.amazon.com/Elements-Typographic-Style-Version-Anniversary/dp/0881792128/ref=sr_1_3?s=books&ie=UTF8&qid=1485894924&sr=1-3&keywords=typography+book) by Robert Bringhurst
[Don't Make Me Think] (https://www.amazon.com/Dont-Make-Think-Revisited-Usability-ebook/dp/B00HJUBRPG/ref=sr_1_1?s=books&ie=UTF8&qid=1485895055&sr=1-1&keywords=dont+make+me+think) by Steve Krug (More of web design, but I loved the book. It can apply to all design.)
Logo Design Love by David Airey
Designing Brand Identity by Alina Wheeler
The Design of Everyday Things by Don Norman
These are just a few that I have really enjoyed.
link
Agreed, OP, you're massively overcomplicating this. If you learn a bunch of math and theory to try and become a database professional you will just come across as an academic rather than someone who can get work done. Learn how to get work done. Check out books like SQL Cookbook and SQL For Smarties to learn stuff that will actually help you do what you need to do.
You do want to have normalization down and basically understand set theory, but you're already doing that.
For anyone who wants to go beyond 'this is a select... this is an insert... this is a join..' check out this book:
http://www.amazon.com/Joe-Celkos-Smarties-Fourth-Edition/dp/0123820227
He always follows the SQL standard, but... some things don't implement it, so everything in this books is not guaranteed to work with all (or even any) RDBMS.
4000 record excel doc? or 4000 excel documents
y'all motherfuckers need Date https://www.amazon.com/Introduction-Database-Systems-8th/dp/0321197844
D?
http://www.doctrine-project.org/2010/07/27/document-oriented-databases-vs-relational-databases.html
> Relational databases were traditionally the most obvious solution for applications that needed to store retrieve/data. With the growth of internet user-base, the number of reads and writes a typical application needed to perform grew rapidly. This led to the need for scaling. Traditional RDBMSs were hard to scale (SQL operation or Transaction spanning multiple nodes doesn’t scale well). With solutions like MySQL Cluster and Oracle RAC , this is much less of a problem now, but it wasn’t the case for a while, which led to many companies abandoning traditional RDBMSs for “noSQL” data stores.
https://www.google.com/search?q=document+-oriented+databases+vs+relational+databases
https://stackoverflow.com/questions/1289130/database-where-should-i-start-from
https://stackoverflow.com/a/1289160
>Introduction to Databases course: http://infolab.stanford.edu/~widom/cs145/
>and this textbook: Introduction to Database Systems, An (8th Edition)
>http://rads.stackoverflow.com/amzn/click/0321197844
Seductive Interaction Design: Creating Playful, Fun, and Effective User Experiences
Well, it's my job, so definitely I can recommend some resources for you to learn from.
Customer Manipulation - Chloe Thomas
Seductive Interaction Design Creating Playful, Fun, and Effective User Experiences - Stephen Anderson
Gamify How Gamification Motivates People to Do Extraordinary Things - Brian Burke(2014)
Tested Advertising Methods
The Irresistible Offer How to Sell Your Product or Service in 3 Seconds or Less - Mark Joyner 2005
Brainfluence 100 Ways to Persuade and Convince Consumers with Neuromarketing - Roger Dooley
No need to thank me Jeff Bezos, you rich smart man.
Seductive Interaction Design, Ordering Disorder: Grid Principles for Web Design
Pixel Perfect Precision handbook for UI basics.
Seductive Interaction Design is also a good read.
Visit Dribbble, Behance, Codepen etc. for inspiration.
Seductive Interaction Design by Stephen P. Richardson is pretty good..
https://www.amazon.com/Seductive-Interaction-Design-Effective-Experiences/dp/0321725522/ref=sr_1_1?ie=UTF8&qid=1486488964&sr=8-1&keywords=seductive+interaction+design
There are limits and boundaries, we(humans) are those limits and boundaries, our eye and our brain. Do you recon an interface IronMan Computer-like would work in real life? I don't think so ... At least not for someone below 280 IQ.
Let me put it in a different way. Is the computer in you DNA? No it's not. Is the computer in your past history(as human)? No it's not. Homo sapiens are 50.000 years old, computers/digital interfaces are 20-30 years old? First writing on a plane surface was 5210 years ago. First writing on a computer was ... let's say 100 years old.
Now ... what would be the easiest things for you brain to understand? What's in your DNA and what's not? If you think this is irrelevant you should study design (not design tools or other digital/print designs). You can start with this one: http://www.amazon.co.uk/Seductive-Interaction-Design-Effective-Experiences/dp/0321725522
It's cool and I agree with pushing the boundaries but not in a stupid way or an unlimited way (see Iron Man digital interfaces).
As humans, we are limited.
Try Seductive Interaction Design. It's less of a step-by-step instructional and more of a interaction theory guide.
I've always had high opinions of sql for mere mortals. I have the 1st edition kicking around somewhere...
SQL Queries for Mere Mortals
And
Database Design for Mere Mortals
This is a book I wish I read years earlier:
SQL Queries for Mere Mortals
I like these books:
Cool, thanks for the reply. I do a lot of reports/charts/bs at work and I'm always interested in learning about stuff like this.
I'm thinking about picking this up.
I wouldn't go that far, but the book has little practical value. Date is very knowledgeable, but he writes like an academic - he can take any piece of prose and suck the life out of it.
The Art of SQL is a much better book.
Good advice. There are tons of websites out there, and some books are good, just make sure they (sites and books) appeal to your learning style. One book I always recommend is The Art of SQL. The first few chapters really helped me in how I approach my querying.
I haven't read it yet, but this book is about building/managing large scale databases.
buy this book: http://www.amazon.com/Learning-MySQL-JavaScript-Step-Step/dp/0596157134
and never look back.
If you want to go beyond any basic template for wordpress or anything else, you should check out PHP a little bit. Its super fucking easy.
This book takes you through the basics of all the languages you need, and walks you through building a very basic social networking site. I highly recommend it. You'll need a basic understanding of html and css and a very basic understanding of programming languages.
TL:DR but I agree with the headings. HTML, CSS, php, MySQL, js. In fact I highly recommend this book: http://www.amazon.com/gp/aw/d/0596157134. For some layout examples use Chromes Inpector to study other peoples sites and play with frameworks such as http://html5boilerplate.com/ and http://blueprintcss.org/. There are lots of great tutorials to get your feet wet with js and php scripts. In fact the book I suggested has awesome scripts you create that are reusable throughout lots of page designs.
What is it you actually want to learn?
If you just want to learn how to SELECT and INSERT data the DB API 2 documentation should be sufficient. You'll need a MySQL python driver. I'd suggest either "MySQLdb" (old, lots of old web pages referencing it) or "oursql" (strongly pushed by the people in #python the last time I visited, which was admittedly a while ago)
If you want to learn generic SQL and how to use Python with SQL, and the MySQL part is just because it's free/easy, I'd recommend Head First SQL. It doesn't cover python at all, but the DB API 2 driver is extremely straightforward
If you want to learn something else .... what is it you want to learn?
I found the HeadFirst series on SQL helpful: https://www.amazon.com/Head-First-SQL-Brain-Learners/dp/0596526849
The stock photo of the person on the cover is silly, but if you can get past the cover, the book itself is quite good.
As a bonus, I found that after I got used to writing SQL queries, my LINQ queries got a lot better, too.
Awesome! I kind of fell into the job. I was initially hired as a web developer, and didn't even know what BI was, and then got recruited by one of the BI managers and fell in love. To me, it is one of the few places in IT where what you create will directly impact the choices a business will make.
Most of what I do is ETL work (taking data from multiple systems, and loading them into a single warehouse), with a few cubes (multidimensional data analaysis) and SSRS report models (logical data model built on top of a relational data store used for ad hoc report creation). I also do a bit of report design, and lots of InfoPath 2010 + SharePoint 2010 custom development.
We use the entire Microsoft BI stack here, so SQL Server Integration (SSIS), Analysis (SSAS), and Reporting Services (SSRS). Microsoft is definitely up and coming in the BI world, but you might want to try to familiarize yourself with Oracle BI, Business Objects, or Cognos. Unfortunately, most of these tools are very expensive and not easy to get up and running. I would suggest you familiarize yourself with the concepts, and then you will be able to use any tool to apply them.
For data warehousing, check out the Kimball books:
Here and here and here
For reporting, get good with data visualizations, anything by Few or Tufte, like:
Here and here
For integration, check these out:
Here and here
Also, if you're interested in Microsoft BI (SSIS, SSAS, SSRS) check out this site. It has some awesome videos around SSAS that are easy to follow along with.
Also, check out the MSDN BI Blog: http://blogs.msdn.com/b/bi/
Currently at work, but if you have more questions, feel free to shoot me a message!
https://www.amazon.com/Data-Science-Transform-Visualize-Model/dp/1491910399/ seems like a good one.
Here's the direct link to the book on Amazon.
The only book I can think of that covers all of those technologies is Learning PHP, mySQL, and Javascript. Of course, since it is trying to cover a multitude of different topics it never really goes "in-depth" with any of them. But it could be a good place to start out.
Hhm. Well, first of all, I think you might have a hard time finding a book that will teach about both design and web development. Each of those are complicated enough to write separate books on. I think you'll be better off by finding two separate books (one on web dev, one on design) than finding one that combines both.
A kind of the same goes for Web. Dev. This is such a broad term, that you will hardly find any book that tries to cram in every possible aspect of web development. If you are a bit more specific and focus on a specific technology (like NodeJS, ASP.net with Angular or just plain old PHP, MySQL and JavaScript ) you'll get more value for money. There are more generic books out there, but the technologies (especially for web dev) change almost daily and books simply can't keep up with that. If you'd ask me, I think you'll be much better off having a good understanding of JavaScript in general before you move on to a specific stack or framework.
I am currently reading this which has been OK so far.
I previously read this O'Reilly book which I found helpful. It does cover some stuff you already know but I found it handy when explaining things like sanitising and salting etc. Plus it goes about making a basic social site.
Don't pay someone unless you can afford to hire them on Salary! Otherwise you will spend SO MUCH just trying to get it right. If you want to have a successful site you need to know how sites are built. That means learning PHP. Get a book, get determined, and go through the ENTIRE book.
I suggest this one
---------------------------------
Shameless Self Promotion:
Programming for Analysis
HTML.net , Code Academy, this book is really good... http://www.amazon.com/Learning-MySQL-JavaScript-HTML5-Step-/dp/1491949465/ref=sr_1_5?s=books&ie=UTF8&qid=1420926437&sr=1-5&keywords=HTML+css+javascript
and the subreddit /r/webdev for help, more tutorials, discussions and all of that. gl!
Well it all depends on what language will you be using for Backend.
Assuming you use PHP i can recommend you a book i owe and it's quite good "Learning Php, MySQL & JavaScript: With Jquery, CSS & Html5" covers frontend basic that you can skip, but the main reason i recommend you this one is because you learn PHP which is a very famous language in all internet backen, covers javascript which you will need for sure, you learn Database development another needing in backend and the final project its a social website.
Now assuming you want to go on with JS to go full in just one language then a must is this udemy course: The Complete Node.js Developer Course (3rd Edition). On books side there are tons of options, so i will leave this collection of some of the best JS & NodeJS books:
These are the ones i can recommend you, if you tell me which language you will be using i could help you a little bit more on forming a learning path(I love learning paths) to keep focused on what to study and when. Don't get discouraged by imposer syndrome, whenever you get to think about it get to code and the greatest advice i can give you is "Always read a book while coding" don't just read a book, code what you see and even do some projects related to the topic you are looking don't focus only in the book, "practice makes perfection". Keep it going bro!
Another vote for nested sets here. We use it with some pretty decent traffic and as dazzled did we have a pretty robust class around it to handle all the resizing and whatnot.
In terms of your m-ary tree, this is what you'd want to use to be able to get any level. Imagine your dataset grew large and you were trying to go through it with php. You'd run out of time or memory.
For more information you can check out Joe Celko's book, SQL for Smarties: http://www.amazon.com/Joe-Celkos-SQL-Smarties-Programming/dp/1558605762
This isn't really a design book, but if you are going to do anything beyond the basics you should read Joe Celko's SQL for Smarties.
These are a lot of SUPER specific questions that don't really deal with webhosting in itself. I would definitely be looking into high performance postgresql as you're probably not going to get a lot of dbas here. This is implementation stuff, and it's mostly stuff that you're going to have to research yourself. There may be a web host that deals in what you're looking for specifically, I'm not aware of one but you may be able to find it.
Bücher:
https://www.amazon.de/Dont-Make-Think-Revisited-Usability-ebook/dp/B00HJUBRPG/ref=sr_1_4?ie=UTF8&qid=1479557141&sr=8-4&keywords=ux
https://www.amazon.de/Hooked-How-Build-Habit-Forming-Products-ebook/dp/B00NW01MKM/ref=pd_sim_351_3?_encoding=UTF8&psc=1&refRID=VPBHSSF5YYXVZWHXE2TT
https://www.amazon.de/Web-Fatale-gestaltest-widerstehen-Interaktion/dp/3836238985/ref=sr_1_3?ie=UTF8&qid=1479557277&sr=8-3&keywords=user+interface+design
https://www.amazon.de/UX-Research-Practical-Techniques-Designing/dp/149195129X/ref=sr_1_6?ie=UTF8&qid=1479557171&sr=8-6&keywords=ux
https://www.amazon.de/UI-Communication-Intuitive-Interfaces-Effective/dp/0123969808/ref=sr_1_6?ie=UTF8&qid=1479557114&sr=8-6&keywords=user+centered+design
Designing data-intensive applications by Martin Kleppmann has been recommended to me recently.
https://www.amazon.com/Designing-Data-Intensive-Applications-Reliable-Maintainable-ebook/dp/B06XPJML5D
I strongly advise you to check out this book. Best thing I have read in my life. There you will find a lot of answers.
I'd personally add
The Art of SQL
Not really suitable as a reference work though, but the information contained herein should be taught in school (but as evidenced by most developers' SQL skills, obviously isn't)
Take a look at Head First SQL. I have not read this book specifically but have completed other Head first books on programming.
The Head First series provides in interactive way to learn with practice exercises and examples. Oh, and it can even be fun.