HN user

chapliboy

85 karma
Posts2
Comments23
View on HN

I thought it was very interesting about how Alan Kay and Bjarne Stroustrup may have been applying wisdom from their old fields of expertise and how that affected their philosophy.

There is an appeal to building complexity through Emergence, where you design several small self-contained pieces that have rich interactions with each other and through those rich interactions you can accomplish more complex things. Its how the universe seems to work. But I also think that the kinds of tools that we have make designing things like this largely impossible. Emergence tends to result in things that we dont expect, and for precise computation and engineering, it feels like we are not close to accomplishing this.

So the idea that we need a sense of 'omniscience' for designing programs on individual systems feels like it is the right way to go.

I am always fascinated by the kind of tech that Bret Victor works on. While I can grasp a lot of the things and how to apply them from his previous work (like 'Stop Drawing Dead Fish' etc) this newest stuff is beyond my understanding.

I would love to know more about how this whole system works and why it is so much easier to work with. Code and computation is generally so reliant on the specifics and the details, so this approach seems to be touching on something that has a fundamentally different design, and it is just really fascinating.

I have an fairly underpowered phone (Samsung Galaxy M01 Core). I got it mostly because it's the size that I like.

I also use most sites in browser as opposed to app.

It turns out a lot of these sites and services are a lot less addictive when they're slow and the animations are lagging out, and I don't get sucked in any more.

Also ends up increasing battery life due to lack of use.

I also have access to the main apps that I do need - whatsapp, gpay, maps etc.

Highly recommend.

This is an interesting idea. The way I see it, there is a lot of really high quality content that does rise to the top of YouTube. But also the feed has a lot of recency bias. So a great creator who puts out things once every many months, ends up having their stuff at the top of the pile for just a week or two.

So as time passes, high quality quickly gets buried by the mediocre barrage of content.

So an interesting feed would have some dimension of time-indepedence.

Really made me think. Thanks

I love the qoi format. I mostly adopted it for the wasm context.

While porting to wasm, using something like stb_image became a little complicated, so I wrote a png-qoi converter, and then use the qoi assets in the game.

Writing a qoi decoder is a fun exercise, though i think most languages have their implementations already.

Don't listen to fighter-pilots stuck in busses.

That's such an easy thing to do as a product. All the comments you see are all clamouring for some set of features that will just complicate everything. Yet a majority of the users have absolutely no issues continuing on with what they already have. You need to be able to figure out how many quiet happy customers you have if you want to make any big breaking changes...

The job of a programmer, in a business context especially, is to take real-world requirements, and convert them into clearly defined systems where they can be solved / reasoned with.

I once had a manager telling me what needed to be done. Even with an actual person (me) in the loop, the code produced would often have glaring differences from what he wanted.

By its very nature, code requires a lot of assumptions. In any business context, a lot of things are implicitly or explicitly assumed. If you need a computer, or another person to give you exactly what you desire, you need to be able to spot the assumptions that are required to be made, and then clearly state them. And after a point, that's just programming again.

So this, or some other AI, is more likely to replace JS and python, or create another level of abstraction away from systems programming. But programmers will still always be required to guide and instruct it.

I can only speak from personal experience (and second hand I guess).

There is close to no 996 really. Most Indian tech startups are trying to emulate the FAANG style of work, both good and bad. So that means officially there is an 8 hour a day expectation, but in practice, there is a lot of cultural pressure to work more, stay at office longer, work on Saturdays etc. But even with that, I don't think I would compare that to 996.

My first job was a fairly early stage startup, and all of us were really young and rearing to go. So there was a group of us that did a 995 for about a year, but it was just a small group, and a lot of it was boardgames after 7pm.

My second one was a later stage startup. They were far more "professional". Nobody worked extra hours because no one cared enough to. So that got a little boring after a while.

Larger companies tend to have more sane working hours. But cultural pressures vary by the company.

My view on Zerodha itself, through the onsite visit I had, was that the hours would be fairly sane, maybe a few saturdays here and there. But there was also a huge social aspect that they highlighted, which was after-hours activities in the office premises, which comes with a certain amount of pressure to attend.

I interviewed for Zerodha a few years ago. They really did have quite an easy going attitude. Their tech team is really well shielded from the rest of the organisation and the CEO and CTO both recognise the value of this.

It was one of two roles on my final shortlist, but I ended up going with the other option.

I still love the fact that there is an Indian tech team that is really mainstream with such a unique outlook on development methodology.

That's really funny. I wonder if the humour is intentional.

Could we similarly make it convince us that it is not a dog (or any other animal/thing). That would be interesting

I think one of the hardest parts of procedural generation is curation. Finding the interesting results and then somehow highlighting them.

Your approach of having both the curated galleries as well as an interactive version is really nice.

I wonder whether you have also experimented with a 3d version. It would be nice to spin these around.

I guess that's another way to go about it. I don't know how git deals with reindenting, refactoring etc, and you might lose context, but you could probably find it again.

It's kinda nice having it right there in the code though.

The game looks stunning, and I'm happy about the direction they have chosen graphically.

What I am most excited about is what new game design and mechanics we might get to see. I'm hoping it will be more than raw point and click, and hopefully will involve more mechanics for puzzle solving.

Right now, I just use TODO along with a description. But the thing that has helped me and my teams most is adding a date and a name to each todo. For example, // TODO (03 May 2022 chap): This can be optimised.

The date really helps because many times the TODO was written for an earlier design, and the todos haven't been updated. Many times a lot of time has been saved when trying to figure out the context of a todo.

Same for author. Helps to know who made the note, in case any additional context is needed. Though often it is you who made the comment and you've obviously forgotten...

I use comments to break up a large block of code into smaller chunks to explain what is happening / where we are in the process.

I used to be a firm believer in self documenting code, but that approach often led to a large number of functions that only get called once. So lately, I have been just putting a comment line where I otherwise would have refactored the code into a function, and I feel that it has made my code a lot easier to read, and understand.

It's interesting to consider that people who look for a feeling of one-ness with the world can find it through Mathematics or through religion, even though they are considered almost diametrically opposite approaches to understand the Universe.

I am stuck in the same loop of trying to find the best way to organise my thoughts. My best attempt was using Dropbox Paper. They have a great editing/writing experience, but eventually it got to a stage where the page load times took too long.

I'm currently trying out vimwiki. Let's see how that goes.

Optimising for quick feedback loops.

Basically it involved writing additional code to set up the app state to the state I need.

It went from changing a line of code, running the app, clicking/filling fields as needed, and then seeing the change reflected, to the app immediately being in the state that I wanted.

Now that I'm working in web-apps, hot-reloading is quite beautiful.