HNHacker News
TopNewBestAskShowJobs

abhinav22

909 karma · joined October 10, 2020

Maths. Lisp. Finance.

Website: math.dev

submissionscomments
abhinav22··on Haters (2020)
> The article does have more substance, for example exploring where the hate comes from. Of course, it does not seem relevant to you, because all you see from haters is a bit of flaming on forums. For famous people, this is a big pain point and worth the many words.

Actually you are right. It does cover off a bit on the source, and I brushed these points off as “common knowledge”, probably because I’m not affected by it so I assimilated that information when reading the article without attributing more value to it.

I still think it’s devoid of meaningful information, but that’s just a personal view on it, I can now further appreciate that it’s not a decisive “this is a bad article” to “others may take a different view on it”.

abhinav22··on Haters (2020)
It’s a valid point, and I wouldn’t be able to assume what Pg’s target audience is. Unfortunately I missed out anything substantive, perhaps I didn’t comprehend the main points of the article as there are two replies (including yours) noting there is more to the essay than my read picked up on.
abhinav22··on Haters (2020)
Preface: I like Paul Graham’s work generally, not amazing but good (in particular his Lisp books). He has a gift of writing in an inspirational style, which I believe many enjoyed when reading his essays. He and his colleagues had a brilliant idea and execution when it came to ycombinator, and anybody who’s successful has done a lot more work behind the scenes that we would be aware of (in true HN fashion, we would say we could code up Viaweb in a day and it was right time, right place; but it’s hardly that simple and a huge disservice to their intelligence and hard work).

That is to say, I’m not a hater by any regards.

But there is little of substance in this article. It’s not an exaggeration that the whole article could be summarized by one line: “Haters, like fanboys, are likely to be obsessive and should be ignored”. And given it’s been reviewed by the following, it seems like they all are so detached from reality that they cannot objectively provide meaningful feedback to the article.

> Thanks to Austen Allred, Trevor Blackwell, Patrick Collison, Christine Ford, Daniel Gackle, Jessica Livingston, Robert Morris, Elon Musk, Harj Taggar, and Peter Thiel for reading drafts of this.

In my own analysis side, perhaps the article, being devoid of meaningful content, is more telling of the author and his peers - the use of third person, the constant mentions of fame and celebrity status and perhaps the preoccupation with haters (why else write an article) may be an indication that they are becoming caught in their own celebrity worship.

It seems a celebrity worship culture continues to accelerate within mainstream conscious (Elon Musk’s tweets moving market prices for example), perhaps amplified by the scale offered by technology and the explosion of digital communication in the last 20-30 years.

There will always be inequality, but I believe from basic scientific principles, the differences between so called “visionaries” and “leaders” is not that much vs the broader population and that more equality, more “biodiversity” or spreading of opportunities for intellectual and practical contributions vs. a top down “here’s what’s good for you” approach is undeniably good sense and one we should actively aim for. I.e. less attention / admiration of those at the top and more mutual respect and community building. Fight for more decentralization and peer to peer solutions - the best voice is everybody’s voice!

abhinav22··on Symbolics Lisp Machine demo (2013) [video]
Thanks! Will check it out.
abhinav22··on Symbolics Lisp Machine demo (2013) [video]
Thanks! Will check it out!

Re Smalltalk, I’m 100% a Lisp man, so perhaps later, but not at the moment :-)

abhinav22··on Symbolics Lisp Machine demo (2013) [video]
Man that looks so cool. What a beautiful, clean user interface and I assume an amazing experience, with the full power of Lisp.

Is there any chance to get a Lisp Machine as an image that we can load in a VM?

All I need is a connection the internet and I would be happy to spend all my spare hobby programming time dialed away in my own small corner of a Lisp Machine. No distractions, only Lisp.

abhinav22··on Show HN:I personally created a web service in japan. Please review if you like.
That domain name is amazing! Worth millions I’m assuming.

Would you be able to provide an English description of what it does as many of us don’t speak Japanese?

abhinav22··on Ask HN: How do you run better meetings?
There are many different types of meetings, so you will need to give some additional color on yours (number of people, frequency, is it within a team, cross team etc).

Effective meetings are hard. I struggle moderating them constantly. Here’s what I learnt:

- Be clear about the purpose of the meeting - is it knowledge sharing, is it to kick people’s butts to progress towards a goal, is it to build camaraderie, etc. Information sharing can be much looser in structure, a project meeting needs to be run with a more tight agenda. A social meeting should be relaxed and have avenues to break the ice

- Always keep meeting minutes (unless it’s a social focused meeting) and write down who will do what afterwards (and follow up on those points). Even if the first few times it’s unsuccessful, eventually it will improve overall discipline. However sometimes it’s an uphill battle that can’t be won - imperfection is okay, people are lazy and won’t do everything they agreed to do in a time manner. Just push them in the right direction

- Focus on the important things, make sure they are covered off in the meeting. Thus, meeting prep is vital - plan the interactions as much as possible in your head and write the goal you want to achieve from the meeting

- Don’t hold unnecessary meetings. Respect people’s time as much as possible

- Practice makes perfect. There are so many combinations of types of meetings that you just need to develop a feel for them

- Try and understand the personalities of who is attending. This will give you strategies to make the meeting more effective. For example a decision maker who never replies to emails and takes too long to make a decision - you want to pin them down in the meeting and gently pressure them to come to a conclusion, because once the meeting is over, they will spend another week procrastinating! Others like to work together and chat more, for them, meetings help give energy to move towards common goals. Others are less social and want to focus on doing work, those meetings should be much more concise and direct

Hope that helps

abhinav22··on Proposal: Treat FLoC as a security concern
Google has such a monopoly that it will take a lot to overcome their plans.

Glad to see WP taking a stand - I never knew that FLOC would be so bad. The WP proposal made it clear that it’s a discriminatory technology.

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
For those interested, refer to https://sites.google.com/site/sabraonthehill/postmodern-exam...

Thanks also to kagevf on #lisp irc channel for his help here

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Interesting example. Yes, it’s not a perfect language by any means :-) Some things are better in Lisp, some things are better in other languages as well for sure!
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Thanks for all your insights today :-) Have a nice rest of the day!
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Does that mean the swank thread still gets all the inputs of the live process and you can debug in isolation there and then push changes to the main thread? Sorry if I’m stupid (no need to reply), I need to read into this more.
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Ah that might be able to help bridge the gap for me. I still don’t quite follow, but I guess having multiple threads allows for easier testing of the interface with other components, perhaps? Sorry I am out of my depth on this one. Will Google more tonight
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Thanks! I will use that
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
That’s so cool! Simply amazing. And so much through lisp and its dialects. Thanks for sharing.

Do you find Lispworks superior to SBCL / Emacs?

Any tips for other programmers on what to do / what not to do when it comes to production level lisp programs?

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Thanks!

I agree with you, it’s not perfect for readers and until I caved and signed up as a member, I also was annoyed at hitting my monthly limit of articles.

They have amazing SEO so inevitably many articles I need while researching a solution led me to Medium.com

It’s just a very hard market to serve (long form reading / journalism etc). That’s why I’m not that bullish on substack because it’s hard to make it good for readers and profitable for writers / the startup.

Medium paid me $10, and I have about 10,000 reads in the last year. I didn’t do it for the money, but that’s an indication for those who do want to write for a side income - it’s a hard business.

For writing, its very good - to the extent, I use it as one of my main word processors lol. Then just copy it to something else for formatting. Very distraction free and the font is nice to make you want to write more.

It would be great if a new competitor did what Medium did, but made it better for readers. IMO the business model should be like Wordpress but for writers, together with an overall platform with high quality SEO. Make the money selling the software and a bit with memberships on the main site.

I feel for Medium and it’s writers - there’s so little money in it, that to some extent they have to resort to click bait titles, bad UI for readers, and high amount of not amazing quality content.

Perhaps a donation model is best.

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Thanks! I’ll have a look. I find Certbot a bit fragile to use, but not sure if that’s just the problem space (since you have to verify domain control before issuing SSL certificates). Perhaps this will be a more robust approach
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Wow - that’s awesome! We would all be really grateful for a blog of your experiences, if you have time one day. Which field do you use it in? I have a stereotype that it’s mostly used in scientific / quantitative fields
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Would you be able to expand on this? I’m very basic when it comes to debugging in Lisp :)

So you are running a second server to test issues away from production? I thought this is possible in other languages / frameworks, so I must be missing something

I read the cook book but still didn’t get the main benefits of it. However the quote was very cool:

That’s how Ron Garret debugged the Deep Space 1 spacecraft from the earth in 1999:

We were able to debug and fix a race condition that had not shown up during ground testing. (Debugging a program running on a $100M piece of hardware that is 100 million miles away is an interesting experience. Having a read-eval-print loop running on the spacecraft proved invaluable in finding and fixing the problem.

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
There are many views on this (so please don’t take my word as gospel), but from my experience, Lisp gives the following benefits:

- A fantastic and easy to use open source web server in Hunchentoot

- Very easy integration into databases like PostgreSQL. Just looking at my guide shows how easy all this is (assuming you know lisp, but if you look at the number of lines of code - it’s not that much)

- Live debugging - I.e. I can recompile certain functions and don’t need to restart my web server! That’s a huge win in my opinion

- It’s hard to explain, but I find Lisp very transparent. With knowledge of JavaScript, HTML, CSS and Lisp, I am very comfortable building any web app. Whereas when I use various web frameworks like react, angular, etc, I have to spend so much learning it’s idiosyncrasies (which to me is a waste of time since these frameworks keep changing), and then usually I hit a brick wall somewhere. Other frameworks in my opinion obfuscate too much - they solve for easy wins (which they do), but anything more complex and you are fighting against the language, spending hours on Stack Overflow for solutions to what should be simple problems. In my opinion

I spent 1-2 weeks setting up a CRUD app with Angular and still don’t know the best way to use it. With Lisp, I did the same in one day. It was that experience that pushed to me to learning and using Lisp (I was a complete beginner at the time). For me that was enough proof

- Stuff like NPM I don’t like because there are so many dependencies (which break from time to time) and I’m worried somebody could be putting in bugs / trackers in these packages. I don’t like having many dependencies

- Ability to write DSLs (Domain Specific Language) where I can easily write macros to generate JavaScript and HTML for me from Lisp, increasing the cohesiveness of the whole program

All that said, Lisp by itself is not enough. HTML/CSS/JavaScript are much more important - Lisp is the magic server side plug for all of this, and in my opinion, better than server side JavaScript because Lisp is a very well thought and well featured language (JavaScript is as well, but I think Lisp, at least to me, is slightly more enjoyable to write in).

I find the issue with Lisp is that it’s not used much, so outside of some very good packages, there are many parts which are easier to do in other languages / frameworks with much bigger ecosystems. For me, web development is the exception, because all you need is HTML/CSS/JS and a good server side language.

Other languages are also very good, so this is just a personal opinion. If you like to invest your time in one core language, and not have to keep learning new web frameworks, I recommend Lisp.

It’s very good for solo programmers or small teams, but I do think it’s not suitable in larger teams as I do find lisp code can be a bit harder to read and also most people don’t use lisp.

So in my uneducated view - if you have spare time, if you like working from first principles and have a scientific / mathematical mindset, and if you are working alone or in small teams, I highly recommend Lisp for web dev.

If you are more business minded and want to scale your project quickly and hire more developers, then using an off the shelf package makes more sense.

If you are time poor, stick to what you know - the differences aren’t THAT great, and it’s better to build something now than to spend most of your time learning a new language (unless you have time to devote to it - in which I highly recommend learning Lisp :) It really makes me smile every time I code in Lisp :)

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
I would love to hear more on the security challenges and debugging issues, if you have time. It’s not used as much in industry, so any insights are really very valuable.

Also so cool that you worked in AI! That’s my dream field :)

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
The issue with my code is that somebody can put in arbitrary SQL queries within the data field (I think - not sure if it is 100% possible because their data would be enclosed within the programs SQL query, which may break their attempts)

Best way around it is to put in checks to prevent the code from being anything nefarious. I’ll have a think and figure out what’s the best way of doing this, but I assume not constructing the sql strings from scratch but rather using postmodern’s API (postmodern is Common Lisp’s excellent interface to PostgreSQL) makes sense, or the alternate solution recommended in the other reply to your post.

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
That’s a good point. I will update the code to prevent any potential SQL injections so that others follow the right practice.

Very nice catch! Thank you very much.

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
You are most welcome :) Yes, this hopefully is a complete guide from start to finish and without any gaps (which are not easy for us to solve without having a reasonable amount of background knowledge!)

Thanks for the kind words

abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Argh! Fixed now - sorry about that. Pressed the wrong button when publishing on Medium (ps I really like Medium, sometimes it gets a bit of a rap, but it’s very easy to write and they are quite user friendly in my opinion at least :)
abhinav22··on Lisp and the Web: Creating Web Apps Through Lisp and GCE
Author: I wanted to consolidate some of the steps I did to get the basic functionality for Common Lisp web applications (CRUD, User Authentication, Domains, etc.) as its a big pain to keep revisiting and troubleshooting which step I did wrong.

So I saved these notes in guide form, hopefully its useful for others. The trick is to extend a lot of this, all the hard parts are here - the rest is just basic Lisp, HTML, JavaScript, building upon this platform.

Highly recommend Lisp for Web Development, its *much, much better* than any of the other frameworks out there! So easy to use. Do learn HTML, CSS & JavaScript though. Esp. JavaScript as you would want to offload some of the computation to client-side to reduce your server costs.

Big Thanks to u/linnilbobo on Reddit for his code on user authentication in Hunchentoot - that was one of the missing pieces for me.

abhinav22··on Show HN: PDFs from HTML
Thanks!
abhinav22··on Show HN: PDFs from HTML
Thanks! I will look into and revert, please check the repo from time to time, I’ll create an open issue against it
abhinav22··on Show HN: PDFs from HTML
Try the HTML / CSS / Paged.js workflow with headless chrome - I think it works really well (and open source / free with the exception of Chrome, where you are a bit at the mercy of Google, but they are unlikely to make any breaking changes in my opinion)
← PreviousPage 2 of 12Next →