swyx

swyx.io · Personal blog · on HN since 2017

Shawn Wang (swyx) writes about developer careers, learning in public, developer relations, and JavaScript tooling.

What HN saysHN commenters recommend it for JS and general dev articles, and cite his learn-in-public idea. One finds his insights valuable.
120HN people shared it
47linked it in comments
203stories submitted
2.4Kstory points
6 months agolast shared
2017people per year2026

Most-shared posts

  1. 1
    Learn in Public (2018)
    12 people · 114 points · first shared 2021 · 18 comments on HN
  2. 2
    How to Create Luck (2020)
    12 people · 16 points · first shared 2022 · discussion on HN
  3. 3
    Measuring Developer Relations
    10 people · 20 points · first shared 2021 · 1 comments on HN
  4. 4
    The Meta-Creator Ceiling
    7 people · 10 points · first shared 2021 · 1 comments on HN
  5. 5
    Preemptive Pluralization Is (Probably) Not Evil
    6 people · 19 points · first shared 2021 · discussion on HN
  6. 6
    The Light and Dark Side of the API Economy
    5 people · 46 points · first shared 2020 · 8 comments on HN
  7. 7
    Why JavaScript Tooling Sucks
    5 people · 10 points · first shared 2019 · discussion on HN
  8. 8
    Signs that a Startup is Going Bad (2023)
    5 people · 9 points · first shared 2023 · discussion on HN
  9. 9
    AWS is playing chess, Cloudflare is playing Go
    4 people · 818 points · first shared 2021 · 286 comments on HN
  10. 10
    80/20 is the new Half-Ass
    4 people · 75 points · first shared 2021 · 39 comments on HN
  11. 11
    Bytes of CSS to look great everywhere (updated for 2022)
    4 people · 24 points · first shared 2021 · 2 comments on HN
  12. 12
    My Three Strikes Rule for Blogging
    4 people · 11 points · first shared 2021 · 1 comments on HN
  13. 13
    Svelte for Sites, React for Apps
    4 people · 8 points · first shared 2020 · discussion on HN
  14. 14
    The End of Localhost
    3 people · 24 points · first shared 2022 · 7 comments on HN
  15. 15
    The God Endpoints will continue until morale improves
    3 people · 12 points · first shared 2022 · 1 comments on HN

What HN people wrote when they linked it

ijames55 · 2021-05-27
Surprised I haven't seen https://www.swyx.io/ mentioned for articles in the JS world and general dev stuff https://kentcdodds.com/ Is also great for JS, React especially testing opinions
swyx · 2021-05-14
happy Elder.js user here! just want to tag on my site for folks who are considering adopting elder/svelte/tailwind: https://swyx.io/ and source code: https://github.com/sw-yx/swyxdotio/ and it is working great for SEO/performance despite me layering on some extra js for tweets and youtube links and the like.
crabmusket · 2024-09-23
My take: the valuable parts of "building in public" are actually "learning in public" per https://www.swyx.io/learn-in-public The stuff in the OP is mainly just marketing/trends driven by social media platforms which has grown under the brand of "building in public". "Working with the garage door open" is a great phrase.
acemarke · 2024-07-02
Yes, here's a few excellent articles that explain what problems build tools solve and why they exist: - https://sunsetglow.net/posts/frontend-build-systems.html - https://www.innoq.com/en/articles/2021/12/what-does-a-bundler-actually… - https://www.swyx.io/jobs-of-js-build-tools Loosely put, they're the equivalent of all of `gcc` or `rustc`: compile the source code, run type checking, output object files, transform into the final combined executable output format.
tbragin · 2023-03-18
Agreed that marketing yourself is not toxic. I follow "swyx" on Twitter and find his insight valuable, and so do a lot of my peers. Btw, looks like his Github profile has not been updated for some time - he's no longer Head of DX at Airbyte and is now an independent consultant. https://www.swyx.io/about
macando · 2021-09-25
Since the article is talking about the great expansion I'm offering a counterpoint - the great collapse. https://www.swyx.io/js-third-age/ > Collapsed Layers (One thing doing many things well instead of many things doing one thing well)
ducaale · 2021-04-20
This reminds me of https://www.swyx.io/js-third-age/ >The other assumption going away is that JavaScript tools must be built in JavaScript. The potential for type safety and 10x-100x performance speedup in hot paths is too great to ignore...
chrisweekly · 2020-12-10
Thanks! Bookmarked. Also, I just read https://www.swyx.io/time-management-randy-pausch/ which was fantastic. Looking fwd to more of your excellent writing.
lebaux · 2020-10-19
I recommend reading https://www.swyx.io/slack-fumble We are devs or small SEO plugin for WordPress and we use discord for all our comms, despite the fact w.org is using slack. And that they will move to matrix. Because they invested in it.
kiwicopple · 2020-10-06
This is my favourite article on “Creating Luck”: https://www.swyx.io/create_luck/ The argument is that luck isn’t binary, it’s a lot of doing and telling to create opportunities for yourself. I think this is true for your story at Canny - you had built something and you probably told a lot of people about it. You created the circumstances for this lucky event to occur.
Veen · 2020-03-25
I believe it’s more in the spirit of experimentation and seeing what can be done with scroll bars than anything the writer would recommend be adopted more widely. https://www.swyx.io/writing/scrollbar-shenanigans
nivertech · 2023-05-15
Mainly, there are 3-4 reasons for considering alternatives to using booleans: 1. Booleans are primitive types without rich domain-specific information or context. When using true/false, it can be more beneficial to employ more descriptive options such as AnsweredYes/AnsweredNo, PositiveResult/NegativeResult, LightsOn/LightsOff, or UserOnline/UserOffline. Mixing and matching booleans of different domain types can lead to errors that the compiler may not catch. For instance: bool isLightsOn = true; bool isUserOnline = false; bool isAdmin = true; if(isLightsOn && !isUserOnline && !isAdmin) { ... } compare with Elixir: case {lights_status, connection_status, user_role} do {:lights_on, :user_offline, :unprivileged_role} -> ... ... end The example above is basically a Decision Table [1]. While booleans can still be used in system code or libraries, it is advisable to avoid them in application code. 2. Preemptive pluralization [2] makes it easier to refactor code. Going from two options to three is simpler than transitioning from one option to two. Consider the following examples: bool isLightsOn; or type LightsStatus = Bool vs type LightsStatus = LightsOn | LightsOff Suppose there is a new requirement to support dimmed lights. In the former case, significant code refactoring is necessary. In the latter case, adding a new option to the sum type is straightforward, and the compiler assists in handling the…
jackbridger · 2023-01-25
Interesting point, I should have made the distinction on company size. Most of my knowledge comes from speaking to early stage DevRel. I hope I'm not being disingenuous. I'm not disputing that the bottom line always comes down to growth metrics similar to marketing. My goal is to build my own DevTool so my motive is to figure out how all this stuff works. I'll give you an example. I spoke with Brandon West who was the first DevRel at SendGrid and he said "If you're considering a DevRel job thinking about what size of company you want to join & whether you want to be on marketing, engineering, product side - because DevRel can work on all of those departments. If you want to have your hands on product, then a startup will work better than something with big efficient machinery and you're there to be the spokesperson" https://podcast.bitreach.io/episodes/the-early-stages-of-devrel-with-b… from 3m5s. Throughout the whole episode the feeling I get is that everything was messy and Brandon was doing everything that needed to be done. He's like a hybrid of engineer and marketer. You made a good point though and Brandon supports your point too - it seems to be a lot more delineated and specialised beyond the startup stage. > That the work looks more like running or attending hackathons or giving technical talks at developer-focused events doesn't change the goals or measured outcomes. Great point! You're right the measured goals are similar in marketing and DevRel. I…
shermablanca · 2022-08-16
This is why SF was so amazing in its heyday (still is, but much less than pre-pandemic days). Just being here offered so many opportunities for networking, and it compounded the longer you stayed and were actively going out. I would say that in today's remote-first world, building in public (and learning in public[1]) is the best way to get the attention of the stakeholders you desire -- not just prospective cofounders, but also investors, customers, partners, and contributors. (An aside -- this is one of many reasons I believe that commercial open source in particular has a very bright future.) Some tangible ideas: Be active on twitter, start a podcast, write blog posts, stream on YT, deliver meetup/conference talks. Once you are more in the public eye, living in a Tier 1 city is the next step as it gives you a greater chance of meeting the people who discover you online! Happy to chat more if you'd like! This subject or specific startup ideas if you're interested twitter.com/benghamine -- DM's open! [1] https://www.swyx.io/learn-in-public/
asicsp · 2022-07-26
>I've been wrecking my brain how to make $10 on anything online If you are really serious about $10 (and not some other larger number), here are some tips: * Pick a topic you know really well (programming, cooking, sea diving, whatever) * Make an infographic (get started on the topic of your choice, some specific and useful practical tip, etc) - picking a template from free tier Canva will go a long way in producing a good looking graphical post (you can even do animations) * Put this up under pay-what-you-want model on sites like Gumroad (so, minimum price free but users can pay if they wish) - see https://mathspp.gumroad.com/l/cheatsheet_list_comps_101 for an example * Post a sample on sites like Twitter, Reddit, etc (just the nice looking graphic, add a link to Gumroad later in comments if the posts start getting attention) * Make a video to show demos (if applicable) * Be consistent! Give it your best shot for topics you are really confident about. Listen to feedback. Learn and Build in Public for better reach (see https://swyx.io/learn-in-public and https://chriscoyier.net/2012/09/23/working-in-public/) If you want an example for someone making a living by doing things like this, check out Julia's https://wizardzines.com/
rektide · 2021-07-07
Putting thoughts into words is an extremely valuable practice. It makes you a far better thinker, helps you pick & choose what ideas are important, what words to use to think about things. I 100% recommend writing down what you are learning. There's a much longer form write up on why you should write on a blog or otherwise in a public area, in Swyx's Learn In Public[1]. You're doing it, you're on the path, you're doing great. Keep it up. The point, overwhelmingly, to me is, you don't know what will be valuable. You don't know when it will be. People are random functions, in randomized situations, and it might be years, but someday either you or someone else being able to run into your words, your posts, & gain some insight: that could make all the difference, for you, for someone else. One other small plug, some friends have "TIL" blogs or git projects, where they add 1-3 sentence things that they learn. It's really fun, for them, and for their growing audience. Time commitment is low, anything goes for topics (many are 60/40 tech/other), it's interesting to read, it gives the readers some idea of where you are, and best of all, it encourages mindfulness: being on the lookout for what you are learning, watching yourself grow, seeing yourself evolve over time. I love the TIL blogs. Need to start mine. ;) [1] https://www.swyx.io/learn-in-public/
skx001 · 2025-12-03
Start with this while I come up with a thoughtful comment of my own. https://www.swyx.io/marketing-yourself
gessha · 2024-03-25
Swyx talked about it in his blog post which gets resubmitted every year or so: https://www.swyx.io/writing/create-luck
vectoral · 2023-11-14
Over the last two months I've started to try to document and implement some of my learnings (inspired by this post [1]), mostly focusing on toy implementations of fine-tuning methods and some interest prompting tricks. I come from a technical, but non-ML or SWE, background, and spent a lot of the last two years building up my broad computer science skillset while pivoting from military to business. Most recently, I've rounded up some crowdsourced research on how well GPT-4 Turbo uses its new long context window and even did a a small amount on my own (limited by how much I could justify spending on API usage). Wanted to start sharing with the community. [1] https://www.swyx.io/learn-in-public
aigoochamna · 2023-05-26
Stay stupid. Do whatever seems to work or may work. Don't think about it. Just do it. The midwit meme pretty much sums this entire problem up: https://www.swyx.io/simplicity-rush
timwis · 2023-04-27
I wonder if it took so long because of how difficult pluralising-after-the-fact is [1]. For example, I imagine all client apps keep a list of contacts and a one-to-one public key for each contact (rather than one-to-many). [1]: https://www.swyx.io/preemptive-pluralization
rozenmd · 2023-03-18
I didn't even know Shawn had a popular GitHub, though he has written about the meta-creator ceiling before: https://www.swyx.io/meta-creator-ceiling
mooreds · 2023-02-23
ahrefs.com estimates 1.5M monthly visitors: https://ahrefs.com/traffic-checker I've had a few articles go to the front page, near the top, and my analytics shows 20k-30k visitors. Here's a more detailed post from someone else: https://www.swyx.io/lspace-2022
version_five · 2023-01-11
The link didn't work, this one does: https://www.swyx.io/startups-going-bad
ZeroGravitas · 2022-08-17
Karabiner for key remapping, and Goku for making it nerdy and text based rather than GUI and XML: https://www.swyx.io/karabiner_lindquist
lloydatkinson · 2022-06-18
Ah yes, plain text. So, not responsive at all, needing constant side swiping on mobile and unnecessary eye strain on desktop due to no word wrapping on larger screens. At the very least use these 100 bytes of CSS so it’s readable. https://www.swyx.io/css-100-bytes
CharlesW · 2022-06-14
As mswen linked to elsewhere, you can increase your "luck surface area": https://www.codusoperandi.com/posts/increasing-your-luck-surface-area omair_inam linked to another related take: https://www.swyx.io/create-luck
omair_inam · 2022-06-14
For a more detailed take on this topic refer to swyx's article on creating luck: https://www.swyx.io/create-luck
WalterGR · 2022-05-31
Caveat: > Note for Windows and Linux users: While the principles outlined here are universal, the tools are Mac only. Tools do exist to accomplish the same results on other operating systems. It may require extra research to apply these principles to non-Mac computers. Also about Karabiner is this submission from a couple days ago, which didn't get any comments: https://www.swyx.io/karabiner_lindquist
ignoramous · 2022-05-12
> I wonder if we'll ever really have something like that on top of Nix or NixOS. Xe, go do it! (: In all seriousness, Fly.io has explored this path (and very well may pursue it depending on RoI of going down this route, I'd imagine): https://github.com/superfly/recco Even though I'd like Fly.io to be more like Heroku, it is railway.app that comes the closest (but I believe they use buildpacks like Fly.io does rather than Nix/NixOS). Speaking of Nix, shout out to replit (https://blog.replit.com/nix) for having a holistic view of the product and it is unlike anything I've ever seen before. And unsurprisingly, most junior developers that I interact with, prefer replit over other alternatives. Heroku may be dead, but an entire range of upstarts have risen up in its wake: https://www.swyx.io/cloud-distros

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