1. Post #1
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    The Big Fat Thread of Knowledge™

    The purpose of this thread is to act as a repository for various interesting and insightful articles, papers, books, videos or vinyl records that may prove useful for web-designers and developers. This includes topics such as design (user interface, graphic design, web-design, and all the other relatives), security, communication and marketing, documentation/specs/standarts, development, and all others you deem fit.

    To ensure a minimum level of quality, I'd appreciate it if we could follow these basic guidelines:

    [LIST][*]Avoid 'Top 10 x' lists and the likes, avoid generic tutorials for this or that ('make a css button in 53 steps', 'php upload script lolollo')
    [*]Try to look for trusted and reputable sources. Badly written articles that teach terrible practices are the majority - let's try to keep them off this thread.[*]If you're linking to a book, try to post it's full name, author and release date. Cover pictures and Amazon links or similar are optional, personal reviews are more than welcome. If you're posting academic papers or similar, the same applies.[*]Discussing the contributions is not only welcome, but really one of the most important aspects of this thread. Just try to be civil. If you disagree with someone, try to back your claims with sources.[/LIST]
    Finally, if you're up to it, original content would be great.

    Some content to get the ball rolling:



    Gödel, Escher, Bach by Douglas Hofstadter (1979)

    Gödel, Escher, Bach: An Eternal Golden Braid (commonly GEB) is a book by Douglas Hofstadter, described by the author as "a metaphorical fugue on minds and machines in the spirit of Lewis Carroll".

    On its surface, GEB examines logician Kurt Gödel, artist M. C. Escher and composer Johann Sebastian Bach, discussing common themes in their work and lives. At a deeper level, the book is a detailed and subtle exposition of concepts fundamental to mathematics, symmetry, and intelligence.

    Through illustration and analysis, the book discusses how self-reference and formal rules allow systems to acquire meaning despite being made of "meaningless" elements. It also discusses what it means to communicate, how knowledge can be represented and stored, the methods and limitations of symbolic representation, and even the fundamental notion of "meaning" itself.

    Don't Make Me Think by Steve Krug (2005)
    A bit dated but still relevant, dicusses usability, user psychology and other basic but important concepts every budding webdesigner/developer should have a firm grasp on.
    Popular Hashing Algorithms - An Analysis of Practicality and Security Applications by Matt Anderson (FP member andersonmat).
    Cryptographic hash functions also known as hashing algorithms are a deterministic procedure that takes an arbitrary amount of data and returns a fixed-size bit string. The returned value can be referred to as a cryptographic hash value. Hash functions work in such a way as that if there is an accidental or intentional change to the data, the change will be seen in the hash value. When hashing, the data provided is often referred to as the message, and the hash value is sometimes called the message digest or simply digest.
    You. Yes, you - stop trying to validate email addresses like that. by Filipe Dobreira (me, hihihihi)
    A quick and painless look at how you should be validating email addresses. (hint: you shouldn't)
    Don't Hash Secrets by Ben Adida
    One area of secure protocol development that seems to consistently yield poor design choices is the use of hash functions. What I’m going to say is not 100% correct, but it is on the conservative side of correct, so if you follow the rule, you (probably) can’t go wrong. You might be considered overly paranoid, but as they say, just because you’re paranoid doesn’t mean they’re not after you.
    Enough with the Rainbow Tables . What you need to know about Secure Password Schemes by Thomas Ptacek
    The socialbookmarkosphere is abuzz with talk of “rainbow tables”, what they mean for password security, and why they prove that Microsoft did a shoddy job of securing Windows for Workgroups 15 years ago. This really freaks me out. If the “advanced” pole of your threat model is “rainbow tables”, stop working on your social shopping cart calendar application right now: I can’t trust you with my Reddit karma score, let alone my credit card number.
    That should be enough to get us started. Get contribootin'

    This is not the place to ask questions about general web development. Go here instead.
    Reply With Quote Edit / Delete Reply Portugal Show Events Useful Useful x 6 (list)

  2. Post #2
    Qombat's Avatar
    August 2010
    2,383 Posts
    Would my 'Common Mistakes (AKA How to Not Get Your Shit Fucked Up)' thread count?
    http://www.facepunch.com/threads/101...Shit-Fucked-Up)

    Edited:

    I love how organised this entire section is in comparison to just about every other section on FP.
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 6 (list)

  3. Post #3
    Gold Member
    Ortzinator's Avatar
    May 2005
    1,648 Posts
    I had The Design of Sites as a textbook and I liked it so much I didn't sell it after the class was over.
    Reply With Quote Edit / Delete Reply United States Show Events Useful Useful x 1Winner Winner x 1 (list)

  4. Post #4
    ---

    December 2010
    3 Posts
    An excellent resource on web usability and other useful web tips is Jakob Nielsen's useit.com.

  5. Post #5
    An excellent resource on web usability and other useful web tips is Jakob Nielsen's useit.com.
    That site shows otherwise.
    Reply With Quote Edit / Delete Reply United States Show Events Zing Zing x 11Agree Agree x 2 (list)

  6. Post #6
    Gold Member
    TheDecryptor's Avatar
    September 2006
    4,260 Posts
    I've got one.

    Always use a Doctype that triggers standards mode

    I'm seeing more and more pages these days that either don't have doctypes, or use transitional doctypes. These all trigger "quirks mode" or the like in web browsers, in these modes the browsers don't follow certain parts of the CSS specs for backwards compatibility.

    Read this page: http://www.quirksmode.org/css/quirksmode.html and stop doing things wrong.
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 4Informative Informative x 1 (list)

  7. Post #7
    PiXeN's Avatar
    April 2009
    1,005 Posts
    I've got one.

    Always use a Doctype that triggers standards mode

    I'm seeing more and more pages these days that either don't have doctypes, or use transitional doctypes. These all trigger "quirks mode" or the like in web browsers, in these modes the browsers don't follow certain parts of the CSS specs for backwards compatibility.

    Read this page: http://www.quirksmode.org/css/quirksmode.html and stop doing things wrong.
    <!doctype html>
    HTML 5 solves the world's problems.
    Reply With Quote Edit / Delete Reply France Show Events Agree Agree x 16Useful Useful x 1 (list)

  8. Post #8
    Combino's Avatar
    December 2010
    217 Posts
    <!
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 2 (list)

  9. Post #9
    ---

    December 2010
    3 Posts
    That site shows otherwise.
    That wasn't my point. <trolling> Read the articles, asshole.


    HURR IT'S NOT WEB 2.0 WHERES THE GRADIENTS AND CSS BUTTONS? IS IT PHP? PHP SUX. SO DOES APACHE. WHY DON'T YOU USE XML? I BETTER CHECK FOR XSS VULNERABILITIES! LOL, CSS3, I USE CSS4. DERP DERP IT'S USING DEPRECATED HTML TAGS HURR! I'M GOING TO CREATE A CUSTOM CMS SYSTEM FOR IT! WHO CARES ABOUT CONTENT IF IT LOOKS PRETTY! I BET HE HAS SHARED HOSTING LOL, HE SHOULD GET AN OFFSHORE VPS, IT'S FASTER, LOL. WHERE'S THE TWITTER TICKER? IT STOLE MY CSS RESET CODE!!?!?! HAHAH I BET HE USED FRONTPAGE AND NOTEPAD, SUBLEMON EDITOR IS BETTER LOL, I BET HE DIDN'T EVEN PHOTOSHOP THE DESIGN!

    </trolling>
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 17Agree Agree x 2Informative Informative x 1 (list)

  10. Post #10
    I'm just saying it doesn't look like a nice site that would give good tips. I said nothing about the content.

  11. Post #11
    hello.jpg
    not_Morph53's Avatar
    September 2007
    4,309 Posts
    http://www.quirksmode.org/ is an excellent resource for browser compatibility.
    Reply With Quote Edit / Delete Reply United States Show Events Agree Agree x 3Informative Informative x 1Late Late x 1 (list)

  12. Post #12
    Gold Member
    TheDecryptor's Avatar
    September 2006
    4,260 Posts
    <!doctype html>
    HTML 5 solves the world's problems.
    Yep, it'll trigger the most standard behaviour in every browser out there.

  13. Post #13
    Qombat's Avatar
    August 2010
    2,383 Posts
    HURR IT'S NOT WEB 2.0 WHERES THE GRADIENTS AND CSS BUTTONS? IS IT PHP? PHP SUX. SO DOES APACHE. WHY DON'T YOU USE XML? I BETTER CHECK FOR XSS VULNERABILITIES! LOL, CSS3, I USE CSS4. DERP DERP IT'S USING DEPRECATED HTML TAGS HURR! I'M GOING TO CREATE A CUSTOM CMS SYSTEM FOR IT! WHO CARES ABOUT CONTENT IF IT LOOKS PRETTY! I BET HE HAS SHARED HOSTING LOL, HE SHOULD GET AN OFFSHORE VPS, IT'S FASTER, LOL. WHERE'S THE TWITTER TICKER? IT STOLE MY CSS RESET CODE!!?!?! HAHAH I BET HE USED FRONTPAGE AND NOTEPAD, SUBLEMON EDITOR IS BETTER LOL, I BET HE DIDN'T EVEN PHOTOSHOP THE DESIGN!

    </trolling>
    That's the biggest load of bullshit I have ever read, and a shit attempt at 'troll mode'.
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 4Disagree Disagree x 1 (list)

  14. Post #14
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    That wasn't my point. <trolling> Read the articles, asshole.


    HURR IT'S NOT WEB 2.0 WHERES THE GRADIENTS AND CSS BUTTONS? IS IT PHP? PHP SUX. SO DOES APACHE. WHY DON'T YOU USE XML? I BETTER CHECK FOR XSS VULNERABILITIES! LOL, CSS3, I USE CSS4. DERP DERP IT'S USING DEPRECATED HTML TAGS HURR! I'M GOING TO CREATE A CUSTOM CMS SYSTEM FOR IT! WHO CARES ABOUT CONTENT IF IT LOOKS PRETTY! I BET HE HAS SHARED HOSTING LOL, HE SHOULD GET AN OFFSHORE VPS, IT'S FASTER, LOL. WHERE'S THE TWITTER TICKER? IT STOLE MY CSS RESET CODE!!?!?! HAHAH I BET HE USED FRONTPAGE AND NOTEPAD, SUBLEMON EDITOR IS BETTER LOL, I BET HE DIDN'T EVEN PHOTOSHOP THE DESIGN!

    </trolling>
    Just fucking stop right now.
    Reply With Quote Edit / Delete Reply Portugal Show Events Agree Agree x 12Disagree Disagree x 1 (list)

  15. Post #15
    Gold Member
    Snakess's Avatar
    July 2005
    3,018 Posts
    That wasn't my point. <trolling> Read the articles, asshole.


    HURR IT'S NOT WEB 2.0 WHERES THE GRADIENTS AND CSS BUTTONS? IS IT PHP? PHP SUX. SO DOES APACHE. WHY DON'T YOU USE XML? I BETTER CHECK FOR XSS VULNERABILITIES! LOL, CSS3, I USE CSS4. DERP DERP IT'S USING DEPRECATED HTML TAGS HURR! I'M GOING TO CREATE A CUSTOM CMS SYSTEM FOR IT! WHO CARES ABOUT CONTENT IF IT LOOKS PRETTY! I BET HE HAS SHARED HOSTING LOL, HE SHOULD GET AN OFFSHORE VPS, IT'S FASTER, LOL. WHERE'S THE TWITTER TICKER? IT STOLE MY CSS RESET CODE!!?!?! HAHAH I BET HE USED FRONTPAGE AND NOTEPAD, SUBLEMON EDITOR IS BETTER LOL, I BET HE DIDN'T EVEN PHOTOSHOP THE DESIGN!

    </trolling>
    It's the first thing people notice, it's important, especially a site that's supposed to be helping you with things like that, you'd expect them to have a nice looking site too, calm down and stop being an idiot.
    Reply With Quote Edit / Delete Reply United Kingdom Show Events Agree Agree x 1 (list)

  16. Post #16
    Qombat's Avatar
    August 2010
    2,383 Posts
    Just fucking stop right now.
    Why aren't you the WebDev mod yet?
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 11 (list)

  17. Post #17
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    New Scientist: The Progress Bar Illusion

    Simple optical illusions can make it seem like the progress bars on your file downloads are moving faster than they actually are.
    Ripple effects and pulses of light are among the tricks computer programmers can use to keep you waiting those extra seconds.
    Reply With Quote Edit / Delete Reply Portugal Show Events Useful Useful x 1Informative Informative x 1 (list)

  18. Post #18
    Gold Member
    hexpunK's Avatar
    August 2008
    15,655 Posts
    That's actually pretty interesting. I think that is also the same kind of thing Windows Vista/ 7 has on the Explorer based loading bars.

  19. Post #19

    August 2010
    47 Posts
    may seem obvious but w3schools is actually quite good for use as a cheatsheet :D
    Reply With Quote Edit / Delete Reply United Kingdom Show Events Agree Agree x 9 (list)

  20. Post #20
    Dennab
    November 2010
    4,519 Posts
    If at first it doesnt work in IE, try again atleast 5 times and it just might.
    Reply With Quote Edit / Delete Reply United Kingdom Show Events Dumb Dumb x 1 (list)

  21. Post #21
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Prevent feature-creep by focusing on users' goals.

    Feature-creep or featuritis is a tendency to constantly add features which inevitably leads to complex products that are confusing and hard to use. To make matters worse, by adding features we move the product away from solving primary issues - the reason for making the product in the first place. Some products are even conceived with featuritis.
    Adding features is the easiest to do in the world of software. There is no need for physical changes plus they are quick and easy to accomplish. Thus, most software products suffer from this disease.
    Reply With Quote Edit / Delete Reply Portugal Show Events Useful Useful x 3 (list)

  22. Post #22
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    DEFCON 18 - How I Met Your Girlfriend with Samy Kamkar

    How I Met Your Girlfriend: The discovery and execution of entirely new classes of Web attacks in order to meet your girlfriend.

    This includes newly discovered attacks including HTML5 client-side XSS (without XSS hitting the server!), PHP session hijacking and random numbers (accurately guessing PHP session cookies), browser protocol confusion (turning a browser into an SMTP server), firewall and NAT penetration via Javascript (turning your router against you), remote iPhone Google Maps hijacking (iPhone penetration combined with HTTP man-in-the-middle), extracting extremely accurate geolocation information from a Web browser (not using IP geolocation), and more.
    1/3
    2/3
    3/3
    Reply With Quote Edit / Delete Reply Portugal Show Events Programming King Programming King x 4Useful Useful x 2Informative Informative x 1Optimistic Optimistic x 1 (list)

  23. Post #23
    Combino's Avatar
    December 2010
    217 Posts
    DEFCON 18 - How I Met Your Girlfriend with Samy Kamkar

    1/3
    2/3
    3/3
    I saw this on Reddit earlier today and it's an excellent and highly interesting talk.
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 4 (list)

  24. Post #24
    hello.jpg
    not_Morph53's Avatar
    September 2007
    4,309 Posts
    Some more links:
    Gecko DOM Reference Everything you never wanted to know about html/css/javascript in Firefox.

    Internet Explorer HTML and DHTML Reference Everything you never wanted to know about html/css/javascript in Internet Explorer.

    Dottoro Web Reference Best javascript reference that I've seen, and I only found this site about 10 mins ago.
    Reply With Quote Edit / Delete Reply United States Show Events Useful Useful x 1 (list)

  25. Post #25
    PLEASE DON'T EAT ME!
    Doritos_Man's Avatar
    June 2009
    2,942 Posts
    I had The Design of Sites as a textbook and I liked it so much I didn't sell it after the class was over.
    I just ordered that book for $0.37
    Reply With Quote Edit / Delete Reply United States Show Events Winner Winner x 5 (list)

  26. Post #26
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Reply With Quote Edit / Delete Reply Portugal Show Events Informative Informative x 1 (list)

  27. Post #27
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Coding Horror - A Visual Explanation of SQL Joins

    I thought Ligaya Turmelle's post on SQL joins was a great primer for novice developers. Since SQL joins appear to be set-based, the use of Venn diagrams to explain them seems, at first blush, to be a natural fit. However, like the commenters to her post, I found that the Venn diagrams didn't quite match the SQL join syntax reality in my testing.

    I love the concept, though, so let's see if we can make it work. Assume we have the following two tables. Table A is on the left, and Table B is on the right. We'll populate them with four records each.
    Edited:



    PHP Object-Oriented Solutions by David Powers

    With the surge of popularity of PHP 5, and with PHP 6 just around the corner, Object-Oriented Programming is now an important consideration for PHP developers. This version-neutral book is a gentle introduction to Object-Oriented Programming (OOP) that won’t overburden you with complex theory. It teaches you the essential basics of OOP that you’ll need to know before moving onto a more advanced level, and includes a series of pre-packaged scripts that you can incorporate into your existing sites with the minimum of effort. (...)


    PHP 5 Objects, Patterns, and Practice by Matt Zandstra

    PHP 5's object-oriented enhancements are among the most significant improvements in the 10+ year history of the language. This book introduces you to those new features and the many opportunities they provide, as well as a number of tools that will help you maximize development efforts. The book begins with a broad overview of PHP 5's object-oriented features, introducing key topics like class declaration, object instantiation, inheritance, and method and property encapsulation. You'll also learn about advanced topics including static methods and properties, abstract classes, interfaces, exception handling, object cloning, and more. You'll also benefit from an extensive discussion regarding object-oriented design best practices.(...)

  28. Post #28
    Combino's Avatar
    December 2010
    217 Posts


    The Ruby Programming Language by David Flanagan

    The Ruby Programming Language is the authoritative guide to Ruby and provides comprehensive coverage of versions 1.8 and 1.9 of the language. This book begins with a quick-start tutorial to the language, and then explains the language in detail from the bottom up: from lexical and syntactic structure to datatypes to expressions and statements and on through methods, blocks, lambdas, closures, classes and modules.

    The book also includes a long and thorough introduction to the rich API of the Ruby platform, demonstrating -- with heavily-commented example code -- Ruby's facilities for text processing, numeric manipulation, collections, input/output, networking, and concurrency. An entire chapter is devoted to Ruby's metaprogramming capabilities.

    The Ruby Programming Language documents the Ruby language definitively but without the formality of a language specification. It is written for experienced programmers who are new to Ruby, and for current Ruby programmers who want to challenge their understanding and increase their mastery of the language.



    C# in Depth by Jon Skeet

    C# in Depth is a completely new book designed to propel existing C# developers to a higher level of programming skill. One simple principle drives this book: explore a few things deeply rather than offer a shallow view of the whole C# landscape. If you often find yourself wanting just a little more at the end of a typical chapter, this is the book for you.

    Expert author Jon Skeet dives into the C# language, plumbing new C# 2 and 3 features and probing the core C# language concepts that drive them. This unique book puts the new features into context of how C# has evolved without a lengthy rehearsal of the full C# language.

    C# in Depth briefly examines the history of C# and the .NET framework and reviews a few often-misunderstood C# 1 concepts that are very important as the foundation for fully exploiting C# 2 and 3. Because the book addresses C# 1 with a light touch, existing C# developers don't need to pick through the book in order to find new material to enhance their skills.



    Programming Python by Mark Lutz

    Already the industry standard for Python users, Programming Python from O'Reilly just got even better. This third edition has been updated to reflect current best practices and the abundance of changes introduced by the latest version of the language, Python 2.5.

    Whether you're a novice or an advanced practitioner, you'll find this refreshed book more than lives up to its reputation. Programming Python, 3rd Edition, teaches you the right way to code. It explains Python language syntax and programming techniques in a clear and concise manner, with numerous examples that illustrate both correct usage and common idioms.
    Reply With Quote Edit / Delete Reply Australia Show Events Useful Useful x 1 (list)

  29. Post #29
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    A Mini-Course in Cryptography - Stephen A. Weis ( ex-member of the Applied Security Group @ Google)

    From that page - Recommended Reading
    Suggested Readings


    [LIST][*]Week 1:
    [LIST][*] "Why Johnny Can't Encrypt", Alma Whitten and J.D. Tygar.
    An (un)usability study of PGP.[*] "New Directions in Cryptography", Whitfield Diffie and Martin Hellman.
    A seminal paper in public-key cryptography. Recommended if interested in the underlying math of public-key crypto.[*] "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems", Ron Rivest, Adi Shamir, and Len Adleman.
    The RSA paper. Recommended if interested in the underlying math of public-key crypto.[/LIST] [*]Week 2:
    [LIST][*] "Snake Oil FAQ", Matt Curtin; "Snake Oil", Bruce Schneier[*] "Twenty Years of Attacks on the RSA Cryptosystem", Dan Boneh
    Good overview of many different attacks on RSA. Some technical details.[*] The HMAC Papers, The OAEP Papers, Mihir Bellare et. al.
    These are technical papers and demonstrate some of the difficulty in composing crypto primitives.[*] "Dos and Don'ts of Client Authentication on the Web", Kevin Fu, Emil Sit, Kendra Smith, and Nick Feamster.
    A great case study in practical web authentication. Recommended for engineers.[*] Bleichenbacher's RSA signature forgery[/LIST] [*]Week 3:
    [LIST][*] Zero Knowledge Tutorial, Oded Goldreich
    This is a good introduction, but quickly gets pretty technical.[*] Probabilistic encryption, Goldwasser and Micali
    This paper introduced the idea of semantic security[/LIST] [*]Week 4:
    [LIST][*] Secret Ballot Receipts: True Voter-Verifiable Election. David Chaum.[*] Scratch and Vote. Ben Adida and Ron Rivest.[/LIST] [/LIST]
    Edited:

    Identifying Suspicious URLs: An Application of Large-Scale Online Learning

    [URL]

    Google Tech Talk
    May 5, 2010

    Presented by Justin Ma.

    We explore online learning approaches for detecting malicious Web sites (those involved in criminal scams) using lexical and host-based features of the associated URLs. We show that this application is particularly appropriate for online algorithms as the size of the training data is larger than can be efficiently processed in batch and because the distribution of features that typify malicious URLs is changing continuously. Using a real-time system we developed for gathering URL features, combined with a real-time source of labeled URLs from a large Web mail provider, we demonstrate that recently-developed online algorithms can be as accurate as batch techniques, achieving daily classification accuracies up to 99% over a balanced data set.
    Edited:

    Search User Interfaces


    Google Tech Talk
    November 23, 2009

    Presented by Professor Marti Hearst, School of Information, University of California, Berkeley.

    Marti will talk about her recently published book, "Search User Interfaces," which presents the state of the art of search interface design, based on both academic research and deployment in commercial systems.

  30. Post #30
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Your Code is not Self-Documenting - ProgFu

    There is this movement that people should try to write a self documenting code. Such code doesn’t require any comments, because it is obvious what it does. While that might be true, it’s not the whole truth.
    Edited:



    Dive Into Python by Mark Pilgrim (2009)

    Pilgrim's book Dive Into Python is a teach-by-example guide to the paradigms of programming in Python and modern software development techniques. It assumes some preexisting knowledge of programming, although not necessarily in Python.
    Much of the book consists of example programs with annotations and explanatory text, generally describe how to modify an example to serve new purposes. One early example program reads through a directory of MP3 files and lists the header information, such as artist, album, etc. Other topics covered include object oriented programming, documentation, unit testing, and accessing and parsing HTML and XML.
    Note: This book is available for free in anything from DOC to PDF, and I highly recommend it if you want to get started with python. For absolute beginners it might be a better book than 'Programming Python' that Combino posted above.

    Edited:

    Introduction to Node.js - Ryan Dahl

    Ryan Dahl, the creator of Node.js, takes a moment to soak it all in before he introduces the audience to the technology by coding a web chat server live and in real time -- hilarity ensues as the camp participants play around and prank the public IP address.
    Edited:

    Google I/O 2010 - Creating positive user experiences - John Zeratsky & Matt Shobe


    Good user experience isn't just about good design. Learn how to create a positive user experience by being fast, open, engaged, surprising, polite, and, well... being yourself. Chock full of examples from the web and beyond, this talk is a practical introduction for developers who are passionate about user experience but may not have a background in design.
    Edited:



    Code Complete - A Practical Handbook of Software Construction(Second Edition) - Steve McConnell (2004)

    Code Complete is a software development book, written by Steve McConnell and published by Microsoft Press, urging developers to get past code and fix programming and the "big design up front" waterfall model. It is also a compendium of software construction techniques, from naming variables to deciding when to write a subroutine.

    Code Complete has received outstanding reviews, being widely regarded as one of the leading must-reads for software developers. The book tends to be right on top of the reading list for programmers of software development companies. It won a Jolt award in 1993.
    Note: This certainly is not for the average web-developer, but if you have some extra time and an interest in general development, I highly recommend it.

    Edited:

    As We May Think - Vannevar Bush (1945)

    This has not been a scientist's war; it has been a war in which all have had a part. The scientists, burying
    their old professional competition in the demand of a common cause, have shared greatly and learned
    much. It has been exhilarating to work in effective partnership. Now, for many, this appears to be
    approaching an end. What are the scientists to do next?
    Note: 13 page PDF. Not directly related to Web Development, or programming for that matter, but a very interesting read I'm sure some of you will enjoy.

    Edited:

    How Unique Is Your Web Browser? - Peter Eckersly, Electronic Frontier Foundation (2010, I believe)

    We investigate the degree to which modern web browsers are subject to device fingerprinting" via the version and configuration information that they will transmit to websites upon request. We implemented one possible fingerprinting algorithm, and collected these fingerprints from a large sample of browsers that visited our test side, panopticlick.eff.org. We observe that the distribution of our fingerprint contains at least 18.1 bits of entropy, meaning that if we pick a browser at random, at best we expect that only one in 286,777 other browsers will share its fingerprint. Among browsers that support Flash or Java, the situation is worse, with the average browser carrying at least 18.8 bits of identifying information. 94.2% of browsers with Flash or Java were unique in our sample.

  31. Post #31
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Reply With Quote Edit / Delete Reply Portugal Show Events Funny Funny x 5Agree Agree x 1 (list)

  32. Post #32
    itty-bitty pretty kitty
    Dennab
    September 2008
    9,837 Posts
    I have that book. It's pretty good, even tells you how to write a working email client, console and GUI.

  33. Post #33
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Came across it today while browsing a bookstore and went ahead and bought it for a cool 25ish euros (the second edition).
    Reply With Quote Edit / Delete Reply Portugal Show Events Friendly Friendly x 1 (list)

  34. Post #34
    Combino's Avatar
    December 2010
    217 Posts
    Came across it today while browsing a bookstore and went ahead and bought it for a cool 25ish euros (the second edition).
    If you've never worked with C# before, it may fly straight over your head. Although if you have C# experience, you'll love this book.

    Edited:

    Dive Into Python by Mark Pilgrim (2009)

    Note: This book is available for free in anything from DOC to PDF, and I highly recommend it if you want to get started with python. For absolute beginners it might be a better book than 'Programming Python' that Combino posted above.
    Dive into Python is a terrible book. I won't waste time explaining why here as Zed Shaw has already written an excellent blog post on why Dive Into Python Must Die

  35. Post #35
    itty-bitty pretty kitty
    Dennab
    September 2008
    9,837 Posts
    http://www.freenetpages.co.uk/hp/alan.gauld/
    This is where I learned python.
    Reply With Quote Edit / Delete Reply United States Show Events Dumb Dumb x 1 (list)

  36. Post #36
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    User-input, Regex and Security Concerns (Stack Overflow)

    A very interesting read on issues and precautions when giving users the ability to use arbitrary regex patterns.

    (shame on you all for letting this thread sink while I was gone!)
    Reply With Quote Edit / Delete Reply Portugal Show Events Programming King Programming King x 1 (list)

  37. Post #37
    pro ruby dev's Avatar
    November 2010
    370 Posts
    User-input, Regex and Security Concerns (Stack Overflow)

    A very interesting read on issues and precautions when giving users the ability to use arbitrary regex patterns.

    (shame on you all for letting this thread sink while I was gone!)
    Oh wow, I would never have expected that.
    Reply With Quote Edit / Delete Reply Australia Show Events Agree Agree x 1 (list)

  38. Post #38
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Oh wow, I would never have expected that.
    In retrospect, it makes alot of sense, but it's one of those things that can easily slip under the radar and go unnoticed until one day you come home and it's porking your wife on your expensive couch while your children watch in tears.

    Edited:



    The Shape of Things: A Philosophy of Design - Vilem Flusser

    This book presents for the first time in English an array of essays on design by the seminal media critic and philosopher Vilem Flusser. It puts forward the view that our future depends on design. In a series of insightful essays on such ordinary "things" as wheels, carpets, pots, umbrellas and tents, Flusser emphasizes the interrelationships between art and science, theology and technology, and archaeology and architecture. Just as formal creativity has produced both weapons of destruction and great works of art, Flusser believed that the shape of things (and the designs behind them) represents both a threat and an opportunity for designers of the future.
    Edited:



    Thinking with Type - Ellen Lupton

    Thinking with Type is a state-of-the-art pedagogical tool for anyone who wish to improve his design skills. The lessons of Thinking with Type are applicable to typographic design wherever it is practiced. It is divided into three sections - letter, text, grid - each accompanied by an essay explaining key concepts, and then a set of practical demonstrations illustrating that material.
    Reply With Quote Edit / Delete Reply Portugal Show Events Funny Funny x 1 (list)

  39. Post #39
    Gold Member
    StinkyJoe's Avatar
    June 2006
    2,196 Posts
    Reply With Quote Edit / Delete Reply Portugal Show Events Funny Funny x 5 (list)

  40. Post #40
    I'm rocketsnail full of rocketfail! Drop boxes ⇒⇒⇒
    Rocket's Avatar
    January 2011
    1,311 Posts
    Reply With Quote Edit / Delete Reply United States Show Events Optimistic Optimistic x 1Agree Agree x 1 (list)