HNHacker News
TopNewBestAskShowJobs

zkirill

746 karma · joined February 12, 2010

submissionscomments
zkirill··on Ask HN: What would be your stack if you are building an MVP today?
Don't think about it too much. Most of the web still runs on plain old PHP and HTML. New technologies pop up every now and then but most people who do this professionally just want something that does the job and don't talk about "their stack" outside of work hours.
zkirill··on Ask HN: What would be your stack if you are building an MVP today?
python -m http.server 9000

And Bootstrap, if I'm feeling generous.

When you're trying to validate a product, the last thing you should be spending your time on is fiddling with anything more complicated than this.

zkirill··on Just use Postgres for everything
Good reply, thanks.
zkirill··on Just use Postgres for everything
The enemy's gate is down. If a CTO brings the surface area of "built in-house" down to zero while accomplishing all of their objectives, ad infinitum, they win the game.

Obviously, it would be impossible to maintain such an advantage in real life for any extended period of time. However, orienting your team towards that goal gives the CTO a way to quantify risks and costs associated with accomplishing their objectives. Health checks and SDKs are standardized commodities that can be implemented and maintained at a predefined market rate that's always approaching zero. Finding and fixing a bug in your proprietary code has a potentially infinite cost.

zkirill··on Just use Postgres for everything
I think that the job of a CTO is to minimize the surface area of "built in-house" so that your team can focus on things for which your customers actually pay you.

Sure, PostgreSQL can be used for sessions, but Redis has solved this problem on virtually every single platform a long time ago. Your customer probably doesn't even know what a session is, but they will definitely learn about them when your in-house implementation inevitably encounters an edge case.

Of course, PostreSQL has wonderful search capabilities but it was never intended to be used as a search engine. Solr was created in 2004 and is still being improved and used in production every day. Do you know what will happen to your full-text search when your customer types in a mix of English and Chinese characters?

Yes, PostgreSQL addition of SKIP LOCKED was neat but AFAIK the author of that feature himself recommended using a traditional job queue unless you had a very good reason against it. RabbitMQ was designed as a message queue and when you read the documentation you realize that they had encountered virtually every single problem and figured out a way to deal with it so that you don't have to. The documentation pretty much tells you what problems you are going to have later so that you can plan for them today.

Choose boring technology (tm), follow industry best practices, and enable your team to get their work done using the right tools for the job, so they can deliver the product to the customer, and leave the office on time.

zkirill··on Scientists Discover Two ‘Alien’ Minerals in Meteorite
Sorry for what is most certainly a naive question from someone who hasn't studied much chemistry or physics. This line stood out to me.

> Locock’s rapid identification was possible because the two minerals had been synthetically created before, so he was able to match the composition of the newly discovered natural minerals with their human-made counterparts.

Isn't it possible, in theory, to synthesize an infinite variety of chemical elements which would just get heavier and heavier as we append them to the periodic table, or is there some kind of a natural limit?

zkirill··on Ask HN: How is your company training you to become a better developer/engineer?
I always thought the term "10x engineer" was only used in job ads. Nobody I know refers to themselves (or even thinks of themselves) as a "?x engineer", unless it's for marketing purposes in which case you might as well put 100x for good measure.

The "best" engineer in the world would probably tell you that "the only thing that they know is that they know nothing". They may also say that the most valuable thing that they have learned over their career is humility. There is always going to be something new and shiny to learn, things will always be breaking around you, a fake prophet will push today's ideology to sunset yesterday's. The only thing that you can do is to always be resourceful, to grow holistically as a person, and help others grow as well. Avoid any company that tries to distill these virtues inside banal presentations and check-the-box training sessions. It is better to ask an unassuming looking person inside the company if they have grown as a person, who helped them, and whom are they helping do the same. Good luck!

zkirill··on We became experts on Google Play Store policy violations
We switched to distributing our own APK after Google forced Android App Bundles. Definitely sleep better at night because of that decision.
zkirill··on Feather – open source icons
I’m curious how to tell if an icon pack passed any kind of i18n testing.

If I remember correctly, Material Design team did lots of i18n research for their icon pack. I assume Bootstrap icons also score well, owing to the diversity of contributors (although, I’m surprised RTL landed only recently).

zkirill··on Mercenaries Were More Common in Greek Warfare Than Ancient Historians Let On
Xenophon's Anabasis [1] has been on my reading list for a while but it was difficult to find a particular translation that I was interested in.

However, I just checked again and saw that Loeb Classical Library now offers individual subscriptions! [2] Better yet, it looks like you can read your book in the browser where original Greek appears next to the English translation! [3]

[1] https://en.wikipedia.org/wiki/Anabasis_(Xenophon)

[2] https://www.loebclassics.com/page/subscribe/

[3] https://www.loebclassics.com/view/LCL090/1998/pb_LCL090.1.xm...

zkirill··on Reasons young people are choosing sobriety
I was thinking of Diageo but Heineken also fits. Festivals, clubs, and pubs often sign distribution and marketing deals with megacorps or their resellers. Pubs that stock local products or brew their own are becoming increasingly rare.
zkirill··on Reasons young people are choosing sobriety
I suspect that most young people in the developed world are introduced to alcohol by megacorps who just want to sell you as much fun as you can walk away from. That is quite different from being introduced to alcohol at an early age as something that is an intricate part of your culture and diet. Personally, I find fermentation fascinating and a walk through human history: kefir, kvass, berries, barley...

On a personal note, I find that most of the commercially produced wine and beer is of extremely poor quality. A few months ago I was researching a "high end" winery, searched for their land on satellite, and discovered that they were growing their grapes next door to a massive junk yard. Fortunately, the organic/bio movement for alcohol is slowly growing and I find the quality to be much higher.

zkirill··on Ask HN: Xcode users – how do you make it more usable?
1. Have a dedicated Apple machine for Xcode. Don't put anything else on it.

2. Reformat (clean install) machine every 1-2 months.

3. Upgrade machine every 1-2 years.

* Regularly export and back up your Xcode developer profiles and certificates.

* If you're thinking about doing something fancy, don't. It will come back to haunt you in ways you cannot even imagine.

Source: 10+ years of iOS development.

zkirill··on Ask HN: Help me pick a front-end framework
Sure, the following challenges come to mind:

* Must maintain a deep understanding of RxJS, which is its own beast. Angular team sometimes uses it in "creative" ways that change between versions in creative ways.

* Must not go off reservation (or do) where the Angular code is committed but not covered by documentation (because reasons). Template variables (hack an ngIf into an ngVar) come to mind, as well as how not subclass an abstract component (e.g. abstract component can technically have its own template and interesting things happen when children also have their own templates).

* Must understand how Angular i18n works by inspecting various Angular code repositories (and sometimes having to build the Angular project yourself, inadvertently discovering the "wonders" of Bazel). For example, the list of Angular supported locales is generated from CLDR dumps. CLDR likes to release new dumps and so the list of Angular supported locales changes (sometimes). You can think of interview Angular questions from hell such as what is the default build locale and what happens if you change it to "en-US-POSIX"? Or, my current favorite, how to ask Angular put dir="rtl" into the generated index.html for locales that are RTL?

These are just off the top of my head. I didn't even go into various performance optimization techniques which may or may not be made redundant by the next version of Angular because of their own compiler optimizations. Also, having to make the decision of the E2E testing solution (or sticking with Protractor).

zkirill··on Ask HN: Help me pick a front-end framework
Angular markets itself as a tricycle but comes with a manual in which the first chapter after the introduction instructs you to swap out your wheels for jet engines. The learning curve and hidden complexity is absolutely insane and I would only recommend choosing Angular in extreme cases where you actually need to break the sound barrier.

Source: I maintain a complex Angular SPA since AngularJS/2.

zkirill··on Ask HN: Help me pick a front-end framework
Based on your requirements and resources I would recommend using plain simple JavaScript over any framework. The time you would spend learning any framework or build system would be better spent iterating on your core experience and experimenting with things that come out-of-the-box on modern web browsers. Frameworks inevitably drag you into their ecosystem where everyone marches at a certain pace. While there are benefits to this, I think it would be a distraction for you. Furthermore, there are many arcane JavaScript libraries that you may find useful down the road, and it is much easier to drag-and-drop them into your project with HTML "<script>" compared to fighting with module bundler du jour.
zkirill··on I used GPT3 to generate 500 SaaS ideas
These are brilliant! I can imagine each of these taking off as Telegram Bots or TikTok games/fads. I wonder if you can automatically generate bots out of these and track the engagement as some kind of a feedback loop.
zkirill··on I used GPT3 to generate 500 SaaS ideas
AnalConnect may have been the only one that could be financially viable. I'd make a separate list for the "cringy" ones.
zkirill··on Ask HN: Why is the support website traditionally hosted on a subdomain?
I should clarify that all of my examples lack a ticket system. Instead, they have support articles and search. The content is very SEO-able.

https://support.apple.com/billing

https://support.google.com/a/answer/1224185?hl=en

https://support.microsoft.com/en-us/microsoft-store-and-bill...

zkirill··on Ask HN: Solo founders(Multiple projects)- How are you handling customer support?
We discovered that we were encouraging bad behaviour by providing exceptional customer support for many years. Despite us building a support portal and automating most of the tasks that customers asked us to do, users found that it was easier to just email us instead of searching for an answer or completing a form. This was unsustainable given our business model and pricing structure. As a result, we had to cut down on customer support which lead to a few unhappy customers, and serious bounce back of focus and productivity across the entire team.
zkirill··on EU Digital Markets Act, aimed at Google, Apple, Amazon, approved
I like to think of this as payback for Android App Bundles and mandatory sharing of signing keys [1].

[1] https://news.ycombinator.com/item?id=27699476

zkirill··on Ask HN: What is the most complex topic you understand?
data sync
zkirill··on Ask HN: Freemium is doomed, why do many keep it anyway?
Your freemium plan can be devastating to your competitors and discourages potential new market entrants.

It is also the fastest way to build an ecosystem around your company’s products.

In some cases, the person who introduces your product to an organization isn’t the one who will make the decision to pay for it. Freemium lowers the barrier to adoption for the former.

zkirill··on Postgres full-text search: A search engine in a database (2021)
In general, we have absolutely no problem with CJK in Postgres. Search is very application specific and some of our users want to do things like kana + kanji search. [1] I don't even know where you would start with that in Postgres.

We also need stuff like language detection and analysis of mixed language data.

A big advantage of going with a dedicated search tool is that it teaches you what you don't know about search, and it turned out that we knew pretty much nothing.

[1] https://www.elastic.co/blog/implementing-japanese-autocomple...

zkirill··on Postgres full-text search: A search engine in a database (2021)
I love Postgres but lack of CJK full-text search is the main reason why I am going with Lucene/Solr for in-app search.

It's possible to make Postgres do amazing things (e.g. job queue with SKIP LOCKED!) but at what point do you draw the line and use the right tool for the job?

zkirill··on Ask HN: How do you test ideas before building?
You sit on a chair in the library or book store isle next to where you put your “book”.
zkirill··on Ask HN: Have you emigrated recently? Where to and why?
This is the first time I’ve heard about this about Estonia. They’re supposed to be competing for global startups so that’s very surprising to hear. Would you mind elaborating on your experience?
zkirill··on Ask HN: How do you test ideas before building?
I remember a story about a book author (may have been Tim Ferris) printing book covers, placing them in libraries, and observing how many people picked out the book. That story stuck with me and I extrapolate from it for new products.
zkirill··on I hate Java. Can I use Kotlin without touching it whatsoever?
No, but you may grow to appreciate Java in the process.

I also learned Kotlin to avoid Java which I hated since university. A few years later I now have a much deeper understanding and respect for Java, JVM, and the broader ecosystem.

zkirill··on System76 Lemur Pro Linux laptop with 14 hours of battery life
Surprised by this. I’m deciding between System76 and Framework, and Framework is fully upgradable.
← PreviousPage 3 of 8Next →