Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Software engineering for Internet applications

    Software engineering for Internet applications

    Eve Astrid Andersson · 2006

    "After completing this self-contained course on server-based Internet applications software, students who start with only the knowledge of how to write and debug a computer program will have learned how to build Web-based applications on the scale of Amazon.com. Unlike the desktop applications that most students have already learned to build, server-based applications have multiple simultaneous users. This fact, coupled with the unreliability of networks, gives rise to the problems of concurrency and transactions, which students learn to manage by using the relational database system." "After working their way to the end of the book, students will have the skills to take vague and ambitious specifications and turn them into a system design that can be built and launched in a few months. They will be able to test prototypes with end-users and refine the application design. They will understand how to meet the challenge of extreme business requirements with automatic code generation and the use of open-source toolkits where appropriate. Students will understand HTTP, HTML, SQL, mobile browsers, VoiceXML, data modeling, page flow and interaction design, server-side scripting, and usability analysis." "The book, which originated as the text for an MIT course, is suitable for classroom use and will be a useful reference for software professionals developing multi-user Internet applications.

    Web & InternetSoftware EngineeringProgramming
    Open LibraryAmazon
    Stats for nerds
    10recommend
    18mentions
    14people
    2007–2026years
    72% recommend28% neutral

    Mentions per year

    20072009201120132015201720192021202320252026

    What Hacker News says

    1. tjrJan 2026
      Some specifics are outdated, but I very much like a lot of the general theme of Greenspun’s Software Engineering for Internet Applications:

      https://philip.greenspun.com/seia/

      thread
    2. tjrApr 2021
      Software Engineering for Internet Applications

      About Face / The Inmates Are Running the Asylum

      thread
    3. dmuxMar 2020
      Great to see some discussion about this ecosystem. I literally started playing around with NaviServer just 9 days ago. It's definitely worth a glance. There are a lot of great utilities built right in: database connection pooling, a key-value cache, and more [0]

      Tangentially related, I've been making my way through Greenspun's Software Engineering for Internet Applications [1] and have especially found the metadata section to be enlightening [2]. I like to think of myself as a competent engineer, but this quote hit too close to home

      If you're programming one Web page at a time, you can switch to the language du jour in search of higher productivity. But you won't achieve significant gains unless you quit writing code for one page at a time. Think about ways to write down a machine-readable description of the application and user experience, then let the computer generate the application automatically.

      [0] https://naviserver.sourceforge.io/n/toc.html

      [1] https://philip.greenspun.com/seia/

      [2] https://philip.greenspun.com/seia/metadata

      thread
    4. hypertextheroMay 2019
      Another good resource that guides one through both the philosophy (why) and technical details (how) of building a web application is Software Engineering for Internet Applications:

      https://philip.greenspun.com/seia/

      thread
    5. nswanbergMar 2014
      Both your site and the original post are great starts.

      Anyone reading or writing these sorts of fundamental web programming tutorials should look at Philip Greenspun's books Philip and Alex's Guide to Web Publishing and Software Engineering for Internet Applications, both available free online (The latter is a stripped down version of the former, written for goal-oriented MIT students who don't want anecdotes or pretty pictures). They are around a decade old, so they aren't a good source for copy-paste-ready code, but the ideas in the books have aged quite well (from simple things like using "abstract URLs"--URLs without extensions like .aspx and .php, to focusing on the website's data model and user interaction instead of the programming language).

      The most interesting part of these books is that they explored creating web applications for a purpose, not as an end in themselves. They were written for the sort of people who evaluated their past year not on what their manager wrote in some HR form and the raise they got, but on what they were able to accomplish, like creating http://scorecard.goodguide.com/. (What's funny is that in Greenspun's ITConversations interview (around 4:20 http://web.archive.org/web/20130729213414id_/http://itc.conv...), he said that the parts of Phil and Alex's Guide that aged were not the technology, but the rampant idealism in the book that web applications would unleash a new age of enlightenment, like the academics who had believed television would be used to broadcast Harvard lectures around the world).

      Here are the chapters on HTML: http://philip.greenspun.com/panda/html http://philip.greenspun.com/seia/html

      And the closest to describing HTTP and frameworks: http://philip.greenspun.com/panda/server-programming http://philip.greenspun.com/seia/basics

      (It just occurred to me that Philip's interview above is one day short of being 10 years old, and his assessment might be worth revisiting. The internet still contains volumes of crap, but the internet as only grown as a teaching and community building tool, with sites like Meetup and Facebook organizing learners and teachers, Khan Academy and Udacity doing organized classes, and StackOverflow collaboratively solving specific problems).

      thread
    6. cylinder714Oct 2010
      Take a look at Software Engineering for Internet Applications: http://philip.greenspun.com/seia/

      From the preface: "We assume that [prospective students] know how to write a computer program and debug it. We do not assume knowledge of any particular programming languages, standards, or protocols. The most concise statement of the course goal is that `The student finishes knowing how to build amazon.com by him or herself.'"

      thread

    Related

    Cover of Designing Data-Intensive Applications
    2014–2026

    Designing Data-Intensive Applications

    Martin Kleppmann
    457 recommend · 846
    Cover of Designing interfaces
    2007–2023

    Designing interfaces

    Jenifer Tidwell
    9 recommend · 12
    Cover of The architecture of open source applications
    2011–2026

    The architecture of open source applications

    Amy Brown
    204 recommend · 257
    Cover of Domain-Driven Design
    2007–2026

    Domain-Driven Design

    Eric Evans
    104 recommend · 252
    Cover of Structure and Interpretation of Computer Programs
    2007–2026

    Structure and Interpretation of Computer Programs

    Harold Abelson
    347 recommend · 761
    Web scalability for startup engineersArtur Ejsmont
    2018–2022

    Web scalability for startup engineers

    Artur Ejsmont
    9 recommend · 14
    Cover of Object-oriented software construction
    2010–2026

    Object-oriented software construction

    Bertrand Meyer
    22 recommend · 53
    Cover of Design Patterns
    2007–2026

    Design Patterns

    Erich Gamma
    95 recommend · 491