S

Simple Programmer

simpleprogrammer.com · Personal blog · on HN since 2010

Simple Programmer is John Sonmez's blog on software developer careers, learning, podcasts, and opinions about programming culture.

What HN saysHN commenters link it for career and productivity advice, but give little opinion of it; one pushes back on an attitude they read in a post.
72HN people shared it
18linked it in comments
203stories submitted
1.5Kstory points
2 years agolast shared
2010people per year2026

Most-shared posts

  1. 1
    The 2016 Software Developer Podcast Awards
    5 people · 13 points · first shared 2016 · discussion on HN
  2. 2
    The Ultimate List of Developer Podcasts
    3 people · 8 points · first shared 2014 · discussion on HN
  3. 3
    I Was Wrong About JavaScript (2013)
    3 people · 4 points · first shared 2013 · discussion on HN
  4. 4
    The Hacker News Generation (Afraid of Hard Work)
    2 people · 284 points · first shared 2013 · 213 comments on HN
  5. 5
    Why C++ Is Not "Back"
    2 people · 130 points · first shared 2012 · 142 comments on HN
  6. 6
    Calling Someone's Baby Ugly
    2 people · 79 points · first shared 2012 · 56 comments on HN
  7. 7
    How Religion Destroys Programmers
    2 people · 57 points · first shared 2013 · 57 comments on HN
  8. 8
    The Myth of the Super Programmer
    2 people · 57 points · first shared 2012 · 52 comments on HN
  9. 9
    My Secret Non-Software-Developer Life
    2 people · 27 points · first shared 2013 · 22 comments on HN
  10. 10
    The Joel Test for programmers
    2 people · 6 points · first shared 2015 · discussion on HN
  11. 11
    Why I Don't Do Code Katas
    2 people · 5 points · first shared 2013 · discussion on HN
  12. 12
    7 Mistakes You’re Making in Your Programming Career
    2 people · 5 points · first shared 2015 · discussion on HN
  13. 13
    The Ultimate List of Programming Books
    2 people · 3 points · first shared 2015 · discussion on HN
  14. 14
    Tie your shoes and pull up your pants
    2 people · 3 points · first shared 2012 · discussion on HN
  15. 15
    Ultimate list software developer blogs
    2 people · first shared 2022

What HN people wrote when they linked it

musicale · 2025-05-03
There is a difference between invention and innovation. Apple is often late to the party (mp3 players, smartphones, tablets, smart watches, wireless earphones, ...) but when they arrive they often shake things up with category-defining products. There is a good argument to be made that Apple introduced the modern smartphone (Android switched to multitouch and a virtual keyboard in response to the iPhone[1]) and app store ecosystem. It is an extraordinary achievement, especially considering the skepticism expressed by dominant incumbents such as Nokia, Blackberry, Palm, etc. in 2007. iPhone would, at best, have less impact than Windows Mobile. [1] https://simpleprogrammer.com/history-internet-part-15-android/
taphangum · 2020-09-27
Diagramming. I'm serious. The more I (as a developer trying to master design) delve into the product design space. The more I see that there is no more fundamental skill in design than that of constructing 'information architectures'. Essentially, mapping (or diagramming) the most important pieces of a design that you are making. It is literally the key to creating a great design. I wrote more about this in a guest post here: https://simpleprogrammer.com/information-architecture-developers-learn… Think about the design of Apple products, is it really just the way they look that makes you love them. Or is it more subtly, the way the work (of which UI is a component), and how that makes you feel? Definitely worth thinking about.
samhunta · 2017-11-17
I would love to learn more about machine learning as a web developer, but simply put it's a different industry with entirely different constructs. I found a great article[1] that at least helped me build a simplistic understanding as a modern developer. [1]. https://simpleprogrammer.com/2017/10/02/machine-learning-modern-web-de…
brad0 · 2017-08-24
This kind of attitude frustrates me. It takes the stance that the world should change to make it best for your own personal situation. Take charge of your own decisions and work out what actions you can do to make your situation better. https://simpleprogrammer.com/2016/10/10/salary-negotiation-software-de…
proximacentauri · 2017-04-28
For me it's a iterative process of read->apply->get stuck->read->apply. I focus each morning on working on the number one thing I have to do that day, in the afternoon I can attend to other less important tasks. Josh Kaufman has some good tips (https://first20hours.com/). Also as John Sonmez (https://simpleprogrammer.com/) would say - trust the process. Don't focus on immediate results, focus on the process of reaching your end goal
jsonmez · 2016-09-16
Great question. I like how you think. The catch in, IMO, is that you need the right knowledge to pull it off. It's not as easy as it looks and it does take some cojones--like you said. Most people say, "sounds like a good idea" and never do anything. There are very few people who will teach you how to do it without ripping you off and selling you some scam. Honestly, that is why I put my course together. Yes, it's $500. But if you actually follow the advice, it's dirt cheap and I'm not selling you a bunch of get rich quick BS, like most real estate "scammy" stuff. Here is the link if you are interested: https://simpleprogrammer.com/products/simple-real-estate/
williamkennedy · 2016-09-16
I have actually written about this a lot as it is one of those topics that I am fascinated with. The trick is not to try and motivate yourself but to build systems and processes to get things done regardless. For me, it boils down to 3 things. Pre-planning, habits and elimination. I have written about each separately on my blog http://www.new2code.com/2016/06/deep-work/ I plan a lot of stuff on my Google Calendar. My whole days are planned in advance including free time. When I am learning a new language, I set aside time for study. If a friend asks me to hang out, I can just check to see if I have prior commitments. I also have the regular gym slot and after 2+ years, I am simply routine when it comes to exercising. Next, learn how to build habits and routines. This saves a ton brain power. There is a great video on habit building http://www.youtube.com/watch?v=AdKUJxjn-R8 Also, check out a book by Charles Duhigg called The Power of Habit. Finally, cut out the news and as much information as possible. Not watching the news added a ton of happiness to my life. This also cuts out distractions. Check out something called the Low Information Diet which goes into more detail as well as a book called Deep Work by Cal Newport I also wrote a guest post on the blog Simple Programmer that goes into more detail on the willpower.motivation side of things https://simpleprogrammer.com/2016/09/07/limited-willpower/ I hope that helps. Largely I don't believe in long-term…
hauget · 2015-05-10
Questions: - what kind of career do you want? - What specific job market are you currently in? - You mention the pay is great but dislike the work. How much time can you dedicate on projects you're curious/passionate and capable of doing? Regarding unhappiness at work, I was in your situation some years ago and found that the solution to my problem was putting in the required hours at work and then going home and working really really hard on the things that mattered to me. Also I found that having a daily exercise routine helped a lot with my productivity and mood! Regarding leaving your country, I'd start by marketing yourself better. Your site doesn't give specifics on what your ambitions are and does not showcase why I'd want to hire you. Perhaps, if you SHOWED me what projects you can do for me, I'd be more inclined to see where you'd fit in my organization. A great example of good marketing was this kid's portfolio that sprung some weeks ago: http://www.hostmeinca.com/ Another way to leave is by getting a masters in another country. Look for masters in a field you're curious about and then search for scholarships. There are tons of scholarship resources out there (google Fullbright, Daad, Gates Millennium Scholarships, UK council scholarships). A masters is also a great way to network and meet potential employers or even future coworkers that might end up giving you a recommendation down the line! Some other advice (and I know the HN crowd will probably…
Pr0ject217 · 2022-02-07
EDIT: Paste this hacky snippet into your browser's console to save all of the links into your clipboard: (() => { let result = [...document.querySelectorAll('td a')] .map((link) => link && !link.href.includes('ycombinator') && !link.href.includes('javascript:void') ? link.href : '' ) .filter(Boolean); result = [...new Set(result)]; result.sort(); copy(result.join('\n\n')); })(); Just to help, here's a compiled-list of all of the links shared here so…
taggenblu · 2019-12-17
I used to be in a similar situation, with multiple notebooks for different things and apps for others - became totally unmanageable. I've gone totally offline with my note-taking now, using a variation of the bullet journal concept. I've found it very useful for keeping track of the day to day notes and tasks, along with longer term ideas and plans (technical or otherwise). Anecdotally, having a single notebook for everything has made me feel more in organized and in control of my notes as everything is there, indexed into a single notebook. - https://bulletjournal.com/ - https://simpleprogrammer.com/bullet-journal-productivity-programmers/
js2 · 2013-10-03
Counterpoint - http://simpleprogrammer.com/2013/08/26/dont-code-katas/ tl;dr: doing the same thing repetitively only improves your skill to a point after which you need to increase the difficulty of the task if you are to continue to improve.
albion · 2010-12-01
This is a pretty good description of what an agile tester is http://simpleprogrammer.com/2010/06/16/agile-testing-is-different/
seadan83 · 2025-05-03
It's almost the argument of programming vs computer science coming out here. This is math: {x | x.id = 1} OTOH, a SQL query is a SQL query. This thread is hilarious though. It's like - Cashier: here is your change. - Customer: you did math! - Cashier, no, I gave you change. - Customer: that IS math! - Cashier: You mean, I used math to give you change? - Customer: No, giving change doesn't use math, it IS math!!!!" [2] = D Moving along.. FWIW, indeed SQL was created to model set theory (relational algebra and tuple calculus), the close relationship is no accident of course [0][1]) > No one is moving goalposts I feel too they are. First goal post: > Coding IS math. >> No, not always. Quite a lot of high-level code doesn't require any math at all. It doesn't take math to perform CRUD operations Second goal post: > CREATE, READ, UPDATE, DELETE are fundamentally mathematical in nature CRUD is closely related to SQL, and SQL is closely related to various mathematics. Are they identical and therefore equivalent? No - because your database is not going to like it when you write "{x | x.id = 1}", and the Oracle DB might not like something that you can write for your Postgres DB. [0] https://simpleprogrammer.com/mastering-sql/ [1] https://en.wikipedia.org/wiki/SQL [2] To quote: """Not "coding uses math", I mean it is math""" @ https://news.ycombinator.com/item?id=43872771
mwcampbell · 2013-08-23
You seem quick to denigrate JavaScript, and programmers who willingly choose it, wherever you can. But with regard to the kind of complexity the OP discusses, which roughly translates to added cognitive load, it's not at all clear that JavaScript is worse than C++ -- and I have real experience with both. To avoid dismissing C++'s complexity too easily as simply the price of flexibility and performance, let's review what C++'s complexity looks like in practice. For example, read this: http://simpleprogrammer.com/2012/12/01/why-c-is-not-back/ Memory stomping bugs; all the ways to initialize a variable of a primitive type; copy constructors; overloaded assignment operators; move semantics; smart pointers; value versus reference semantics; the list goes on. Against the cognitive load imposed by complete control over memory management, and lack of verifiable memory safety, JavaScript's warts seem quite minor to me. I imagine that many programmers who work in "managed" languages would agree.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close