HNHacker News
TopNewBestAskShowJobs

Stwerner

1,282 karma · joined August 22, 2010

CEO at Sublayer https://www.sublayer.com
submissionscomments
Stwerner··on Prototypal Inheritance (2008)
Very interesting to see this here!

I've been having a lot of conversations recently with people about LLMs and how a prototypal inheritance-like approach to working with them seems to be surprisingly effective. Especially for writing code.

Also, this quote jumped out at me: "Insights from the dynamic world can have application in the static."

Stwerner··on The Future of Ruby and Rails in the Age of AI
I've been working with Ruby + AI for the last year and couldn't agree more with this post. It feels like there are so many brand new ways to build software with LLMs that have yet to be discovered and I find Ruby's flexibility makes it easy to try out new ideas almost as quickly as you can think of them.

Obie also mentions my company's product Blueprints. Blueprints allows you to capture existing, known-good patterns in your code base, and then use them as a base for an LLM to generate variations from. We've got editor plugins for the major editors and we're also starting to roll out downloadable packages like this DaisyUI-styled Phlex component one: https://blueprints.sublayer.com/packages/phlex-daisyui

Happy to answer any questions about it!

Stwerner··on Show HN: Workouts – Learn by doing real developer projects
I really like this idea, and the stock market example looks really interesting. Will definitely try this out!
Stwerner··on Self Programming Language
Hah that's a good question. I haven't really thought about that or explored type systems that would interact with this pattern. Would be really interested in reading about it though!
Stwerner··on Self Programming Language
For me, what really made it click and think about how different it is from class-based inheritance was an old Steve Yegge post: http://steve-yegge.blogspot.com/2008/10/universal-design-pat...

It is a really long post and heavily references Godel, Escher, Bach but this section I think explains the difference really well:

Hofstadter offers several supporting examples for this thesis, but I'll paraphrase one of my all-time favorites. It goes more or less as follows.

Imagine you're listening to announcers commenting on an NFL (American football) game. They're talking about a new rookie player that you don't know anything about. At this point, the rookie – let's say his name is L.T. – is just an instance of the class "football player" with no differentiation.

The announcers mention that L.T. is a running back: a bit like Emmitt Smith in that he has great speed and balance, and he's great at finding holes in the defense.

At this point, L.T. is basically an "instance" of (or a clone of) Emmitt Smith: he just inherited all of Emmitt's properties, at least the ones that you're familiar with.

Then the announcers add that L.T. is also great at catching the ball, so he's sometimes used as a wide receiver. Oh, and he wears a visor. And he runs like Walter Payton. And so on.

As the announcers add distinguishing attributes, L.T. the Rookie gradually takes shape as a particular entity that relies less and less on the parent class of "football player". He's become a very, very specific football player.

But here's the rub: even though he's a specific instance, you can now use him as a class! If Joe the Rookie comes along next season, the announcers might say: "Joe's a lot like L.T.", and just like that, Joe has inherited all of L.T.'s properties, each of which can be overridden to turn Joe into his own specific, unique instance of a football player.

This is called prototype-based modeling: Emmitt Smith was a prototype for L.T., and L.T. became a prototype for Joe, who in turn can serve as the prototype for someone else.

Stwerner··on Of Algebirds, Monoids, Monads, and Other Bestiary for Large-Scale Data (2013)
Ah you know what, I think I am. I guess I was stuck thinking about Monads rather than the lambda calculus. Thank you so much!
Stwerner··on Of Algebirds, Monoids, Monads, and Other Bestiary for Large-Scale Data (2013)
Shot in the dark here, but I vaguely remember a blog post that used birds in an explanation for monads and I can't seem to find it again. It had hand-drawn birds, and I think it started out with the identity monad, with the bird representing it only able to speak their own name.

Does anyone remember that post? I'd love to find it again, I got really excited when I saw the title, thinking that it had finally come around again.

Stwerner··on The Birth of Prolog (1992) [pdf]
I've noticed prolog being mentioned here and a bunch of other places, but haven't really found any good introductory books on the language.

Does anyone have any recommendations?

Stwerner··on Ask HN: What is your favourite tech talk?
Really excited to go through all the other talks listed here I'm not familiar with!

Three talks that I tend to reference a lot and have had a huge impact on the way I think about software:

The Soul of Software: Avdi Grimm - https://youtu.be/IgbHzFb1hGw

The Humane Representation of Thought: Bret Victor - https://youtu.be/agOdP2Bmieg

How to Program Independent Games: Jonathan Blow - https://youtu.be/JjDsP5n2kSM

Stwerner··on Nobody's just reading your code
I've been thinking about this idea for a while and love the reimplementation idea. I really want to start live-streaming myself coding (or pair programming) and have been trying to come up with some ideas that would end up being interesting to watch.

One idea was taking a popular open source tool with a good test suite and trying to get the tests to pass, but I think checking code out at a point before a new feature is implemented and reimplementing it could end up being really interesting. Could even make it more interactive by sharing the checkout point so viewers can do an implementation themselves and doing a stream walking through different interesting implementations.

Stwerner··on Ask HN: What project did you tackle to learn C?
I had a class in high school that mostly covered the basics, though I wouldn't say I "learned" it. It wasn't until around 15+ years later and after I started working as a programmer and decided to work through a Programming A Chess Engine In C [1] youtube series that it finally really clicked.

[1]https://www.youtube.com/watch?v=bGAfaepBco4&list=PLZ1QII7yud...

Stwerner··on Ask HN: What non-work task have you automated?
I have one app that connects to my Pinboard account and emails me 10 random bookmarks every morning. I've been using Pinboard for years and it is full of stuff that I marked "to read" or read a long time ago that I forgot to go back to. It is surprising how often some old blog post shows back up and is relevant to a discussion I was having in the last few days.

I have another app that emails me the tweets, blog posts, and HN comments of my favorite bloggers every morning. With the rise of tweetstorms, I felt like I was missing a lot of great stuff, but now I don't have to obsessively check twitter/hn/my favorite blogs all day every day. (I really miss RSS)

Stwerner··on Ask HN: Just made Director, now what?
I made the transition from engineer to managing a team of around 12 at Groupon. So I made the transition with a smaller team than you are - forgive me if some of this isn't as useful for your situation.

What worked for me:

- One on Ones. Nothing I've done has had as much of an impact as weekly one-on-one meetings with everybody on my team. I tend to follow the format outlined on Rands In Repose: http://randsinrepose.com/archives/the-update-the-vent-and-th... (This is an incredible blog for engineering management. I would highly recommend reading everything he has written.)

- Read everything you can find on the topic and about leadership in general and start figuring out how you can incorporate the lessons from those books into your situation and context. This is a brand new skill set that you need to approach with the same effort that you had been approaching engineering.

Some suggestions:

Rands in Repose: http://randsinrepose.com/archives/category/management/

Radical Candor: https://www.amazon.com/Radical-Candor-Kim-Scott/dp/B01MY574E...

Extreme Ownership: https://www.amazon.com/Extreme-Ownership-U-S-Navy-SEALs/dp/B...

Becoming a Technical Leader: https://www.amazon.com/Becoming-Technical-Leader-Problem-Sol...

Peopleware: https://www.amazon.com/Peopleware-Productive-Projects-Teams-...

- Finally, one piece of advice I got when I first transitioned into management was that "first-time managers usually fall into the trap of becoming the manager they wish they had. What you really need to do is figure out how to be the manager that each person on your team wishes they had, and become that manager." Easier said than done, obviously, but I've always found it useful to return to it whenever I am struggling.

Stwerner··on Helpless to Prevent Cancer? Actually, Quite a Bit Is in Your Control
One trick that worked for me (pack+ a day smoker for 5+ years) was not exactly calling it "quitting". I had tried quitting a bunch of times, but every time I had a lapse in will power and had a cigarette, the justification to start again basically went "oh well, guess I failed quitting, time to go out and buy a pack."

When I changed my mindset to more of a "I just don't really smoke anymore." it was ok to have one every once in a while when I was out with friends and not feel like I failed. Now I'm basically down to only one cigarette a year or two when I'm with old friends, and I usually feel bad enough in the morning after it that I don't really have any desire to smoke again for a long time.

Stwerner··on Mob Programming – The Good, the Bad and the Great
There's always Analytics Made Skeezy if that's what you're into (http://analyticsmadeskeezy.com/blog/)
Stwerner··on New Requests for Startups
I've really enjoyed your writing on your blog at http://akkartik.name which I found through your guests posts at Ribbonfarm. Have you been writing anywhere else about your work or thoughts about readable programs?
Stwerner··on Ask HN: Idea Sunday
I hadn't really cracked how to scale the business up, but to bootstrap it I was thinking that I would just do the work until it became too overwhelming. I haven't thought about what pricing would look like, so I don't know how feasible it would be to just hire more people as more and more work comes in - but it should have some interesting economies of scale since there is a lot of overlap in the gems used in rails projects for instance.
Stwerner··on Ask HN: Idea Sunday
> Also, when it comes to many projects, the organization that offers services around them has a negative incentive to contribute clear, quality code.

I'm probably being naive, but in my version of this idea, I was thinking that contributing well-written, tested, and documented code back upstream from the company's account would be a good way to have the work that's done contribute to the marketing.

Part of the reason why I haven't moved past just talking about this idea is the possibility of it having a negative impact in terms of the original creators/maintainers, so I'm definitely interested in hearing more about this perspective on it.

Stwerner··on Ask HN: Idea Sunday
Interesting to see this here, I had this idea a while back and have been discussing it with people before I go on validating/invalidating it.

In my mind anyway, the idea is something like https://railslts.com/ but for potentially every other gem in your gemfile. We would provide security patches, bugfixes, features, documentation, training, version upgrade scripts/documentation and so on to subscribers.

I really like the accumulated credit for features, maybe a system of like: request feature, we put a "credit" value on the complexity of the feature, then companies/people can pledge credits/money for it would work?

Stwerner··on The inexplicable rise of open floor plans in tech companies
I think there's something more to the open floor plan beyond collaboration and cost saving. It goes back to a post I saw here a few months ago about building unity [1] with the team. I don't know the answer, but I think there is something to be gained by fostering the feeling of "We're all in this together".

I'm a software engineer who has only worked in open plan offices, so maybe I don't know the joy of working in an office, but there is definitely a different feel from the one office where the managers/partners had their own offices and everyone else was open plan vs everyone in the same couple rows of desks.

[1] http://jasonlefkowitz.net/2013/03/how-winners-win-john-boyd-...

Stwerner··on Show HN: I just open-sourced the Rails toolkit I use to quickly launch sites
This is really cool! I've been thinking about making something like this for a while. Looking forward to checking it out for my next project.
Stwerner··on Building a living photo frame with a Raspberry Pi and a motion detector
Has anyone found anywhere to buy enclosures for different RPi projects similar to this one? I have an RPi, a screen, and a project idea, but am struggling to come up with a way to make an enclosure for it that is at least passable.

Would the best way to just find a freelance 3d designer, and come up with specs?

Stwerner··on Monolithic Node.js
The seneca toolkit that the post leads into and links to is super interesting. It seems like a pretty straightforward way to build with an SOA from the beginning. Does anyone have any experience using this for a sizable project that can comment on it?
Stwerner··on If you care about privacy, don't use OS X mail
That email privacy tester linked in the article looks really cool.

I had an idea for an email client the other day, but the potential privacy and security issues seemed like it would probably become a nightmare.

Are there any other tools out there like this?

Stwerner··on The Open Book Sale of My $600K eCommerce Store, With Financials
Very cool, thank you! I remembered hearing of a dropshipping guide a while ago, didn't realize that was you too.
Stwerner··on The Open Book Sale of My $600K eCommerce Store, With Financials
I just requested your ebook to read later tonight - but do you know of any other good resources or books on drop shipping-based eCommerce sites?
Stwerner··on Is TDD Worth It?
Right, but if you're never going to look at the method again and/or remove it next week for whatever reason, you've just wasted a bunch of time that could be spent on more valuable things.

My thinking is definitely more focused on early stage start ups/personal side projects than bigger mature projects.

But what I'm trying to get across is that I'm starting to wonder if "big clunky code base that's hard to support, maintain and understand" is in the same class of good to have problems for early stage start ups/side projects as "I chose a technology that is tough to scale to 500 million users" as long as you have a comprehensive test suite.

Stwerner··on Is TDD Worth It?
I've been a TDD practitioner for a while now and I've lately started to question the value of doing the refactor step within the red/green cycle, even if the code to make the tests green is a horrible kludge. Sure it's going to add technical debt to your project, but I can't shake the feeling like it is usually premature optimization of the maintainability of the code. Especially if it is a new feature, the requirements of maintainability seem like they're probably pretty low at first since you could find out that the feature was completely unnecessary in the first place for example.

In a talk once, I heard an offhand remark that a good signal that a method needs refactored is if you're frequently fixing bugs in it because it signals you don't have a good grasp on what the method is supposed to be doing, and I've started trying to use that rule in side projects to optimize more for getting things done inthe few hours on nights and weekends I have to work on them.

Stwerner··on Fun Things to do with a Raspberry Pi (2012)
How would one go about creating a quick/cheap custom enclosure for their Pi and a touchscreen? I have both, but I'm completely lost looking into 3d printing for it, and most things I've found have been pretty expensive. Are there any quick prototyping tools or materials I could use out there, or even services/startups to get something made?
Stwerner··on How Nancy Pelosi Saved the NSA Surveillance Program
Do any of you think it would it be useful to have a site where it would be possible to donate time to different campaigns on certain sides of issues?

Imagine if you had a place where you could donate engineering time to a campaign for someone who voted to defund the NSA, or donate your time to the campaign of someone who is running against a rep who voted against it.

Think... a marketplace where you could donate your expertise, be it engineering, SEO, SEM, design, etc to campaigns on the sides of issues you care about.

← PreviousPage 2 of 6Next →