HNHacker News
TopNewBestAskShowJobs

karterk

4,443 karma · joined October 20, 2010

Co-founder @ typesense.org

kishore at typesense org https://calendly.com/kishorenc/30min

submissionscomments
karterk··on Ask HN: My son wants to make side money programming
I started along the same path 12 years ago, so I can share my experience.

* I started with PHP. My suggestion today is to start with Django (Rails is fine too, but Django has less magic and so things are lot more explicit)

* Bootstrapping out of nowhere is difficult. He will have a lot to learn from the knowledge perspective. So, looking out for opportunities, negotiating payment etc. can be draining. This is where you can help so that he focuses on learning his craft first.

* It will be tempting to work for free. Advice him against that. He can work for a low fee, but getting paid puts the work in the right context.

* Stay away from portals like Elance and ODesk.

* Working as an intern at a company would really help him with the other meta aspects like planning, team collaboration etc. which are all important to pursue his long-term goals.

karterk··on What are some good technology projects to donate to in 2015?
Internet Archive: http://archive.org/

My bookmarks are filled with dead pages - Internet Archive is a very challenging, but important project.

karterk··on Ask HN: What does Engineering culture in a super professional company look like?
Every company is different. Generally, in a smaller high-performance startup/company, you will tend to work more closely with everyone, but that does not mean there is no place for code reviews. In fact, in a smaller team, the bus factor[1] is so high that you need to ensure that there is good code ownership.

[1]: http://en.wikipedia.org/wiki/Bus_factor

karterk··on What does it take to run a web app with 5K – 10K users?
The most difficult thing is going to be getting to 10K active users :)

These days RAM is cheap and SSD storage is also widely available. For a very long time, one of my side projects with 50K users was hosted in a EC2 small instance. With that out of the way, here are a few things you will need to take care of:

* Security (especially passwords) - Rails should take care of most of this for you, but you should ensure that you patch vulnerabilities when they are discovered. Also, stuff like having only key-based login to your servers etc.

* Backups - Take regular backups of all user data. It's also VERY important that you actually try restoring the data as well, as it's quite possible that backups are not occurring properly.

* One click deployment - Use Capistrano or Fabric to automate your deployments.

* A good feedback/support system - this could even be email to begin with (depending on the volume you expect), but it should be accessible.

* Unit tests - as your app grows in complexity, you will never be able to test all the features manually. I'm not a big fan of test driven development, but really, start writing unit tests as soon as you have validated your product idea.

* Alerts, monitoring and handling downtime - Downtimes are inevitable. Your host or DNS could go down, you might run out of disk space, etc. Use something like Pingdom to alert you of such failures.

* Logging, logging, logging - I can't stress on this enough. When things break, logging is crucial in piecing together what happened. Use log rotation to archive old logs so they don't hog the disk space.

karterk··on Those making $1,000+/month on side projects – what did you make?
A lot more people who write books talk about their experience than those who run a niche profitable SaaS app for obvious reasons (competitive advantage).

In my experience, it's much easier to have a stable recurring revenue from a SaaS app than a book. Books go out of date much faster.

karterk··on Roaring bitmaps: A better compressed bitset
One restriction is that random insertion into the bitmap is a O(N) operation. You typically expect to construct the bitmap in a sequential fashion and once constructed, treat it as immutable.
karterk··on Roaring bitmaps: A better compressed bitset
We use EWAH (another compressed bitset from Daniel Lemire) heavily at work to store inverted indices in a compressed form. Apart from lowering the memory foot print (vs storing sorted integers), AND/OR operations are much faster when you want to do stuff like intersecting 2 bitsets to find the overlapping members etc.

You should checkout some of the other impressive compression related stuff that Daniel has open sourced: https://github.com/lemire

karterk··on Ask HN: How do you improve Soylent's flavor/texture?
The reality is quite complex. The problem in most developing countries is the actual distribution of food, rather than the price of food. Apart from infrastructure issues, there is also widespread corruption and hoarding.
karterk··on Ask HN: What should I do, 17 year-old dev?
I don't have a job offer for you, but I hope you are getting professional help for your depression. It's a terrible disease, so don't let it sneak up on you.

There is a freelance hiring thread [1] on HN that's posted every month. Take the last 3 months of postings and send a personalized email to every one of them. Companies are constantly looking for good people. Describe what you bring to the table and offer to send some samples of your work. All the best, and do let us know how it goes.

[1]: https://news.ycombinator.com/submitted?id=whoishiring

karterk··on Ask HN: Marketing and validating side project when already in a job?
IANAL

You should first talk to your HR about how your company treats side projects. In some companies, any work that you do automatically belongs to the company (even if the work is done during weekends). This also depends on your local laws. A large company should definitely have policies around this.

It's very hard to talk to your market in an anonymous fashion. Especially when you are just starting out. However, you can gauge some preliminary interest by setting up a good landing page and buying some targeted traffic from Facebook/Adwords. Describe what problem you are trying to solve, and have an email sign up form. Find out how many people sign up. Send follow up emails to these people. For this to work, your landing page has to be informative and should have a clear value proposition. You can have a great idea, but if you can't communicate that to your visitors within their first few seconds, then you're not going to be successful with this approach.

karterk··on Ask HN: Key-Value Store Database with Historical Lookup?
HBase will fit nicely for this use case. Columns can be versioned: http://hbase.apache.org/book/versions.html
karterk··on Ask HN: Companies that don't use whiteboard coding interviews?
For most medium sized companies, hiring is an important but very time consuming process. So, almost every part of the process is designed to scale as the company grows. While there are companies which have a take-home problem, most will require you to write code on a whiteboarding discussion in a face-to-face round later anyway.

My suggestion here will be to take a few interviews without much expectations and to use them as opportunities to get better at this. There are going to be many times when you will be sharing your code with your colleagues - e.g. during code reviews, pair programming etc. and whether you like it or not, people are always evaluating you even in those cases :)

karterk··on Show HN: Codassium – A better way to conduct remote interviews
Thanks a lot for the feedback about the bugs and the pricing plan. Do you have an email address through which I can reach you (mine is in my profile).
karterk··on Show HN: Codassium – A better way to conduct remote interviews
Quite a few. Code execution support for Java, Ruby, Python, C, C++, PHP, Node/JS, C#.
karterk··on Show HN: Codassium – A better way to conduct remote interviews
We posted a prototype of Codassium last year, and received plenty of positive feedback. We went ahead and built a full product out of it, and we're eager to share it with everyone on HN.

We still have a Lite version of the app which supports collaborative code editing and video chat, while the full version has live code execution and a shared Linux terminal too.

Would love to hear your feedback.

karterk··on Ask HN Mods: Why Do You Completely Change What Users Submit?
I simply don't like the fact that someone can change a link that I submitted to something else. Moderators have the right to kill a story or ban a user for valid reasons, but changing a link to point to another completely different article is just being pedantic and definitely crosses the line. We might as well then just post topics, and let the mods choose the best story for that topic.
karterk··on How we build an MVP on a budget with BizSpark and Azure
Thanks for writing this. A small feedback: "The power of transformation over APIs... without the hassle." does not really convey what you do to a potential customer. People have very short attention spans and you have only a few seconds at most to convey what your service does. Most people will not scroll down to read more otherwise.
karterk··on Ask HN: Ideas for tech in developing countries?
If you can crack portable power supply using solar energy, there is a huge huge market here. For e.g. most parts of southern India are scorching hot most part of the year. Land is cheap in rural areas. Power cuts are common 8-10 hours a day during the summer. I really wish the government invested in solar grids - we really should be able to generate surplus electricity using solar.
karterk··on Apple, Google to pay $324 million to settle conspiracy lawsuit
The settlement will give 3-5K per employee. Hardly anything. I wonder why they settled, instead of going ahead with the trial. I'm totally unsympathetic with these companies, and now they are just getting away literally free.
karterk··on Boring Systems Build Badass Businesses
Boring system themselves do not ALWAYS build badass businesses. It's knowing when to stick to boring systems vs taking the chance on something new. A lot of systems start off as someone's side-project. It's a calculated risk when you pick something that brings different things to the table.
karterk··on Supporting customers gives CEOs a reality check
Depending on the kind of market you deal with, you will quickly realize that the bar for customer support is really low. People often sound surprised when they get a response to their email within 12 hours. Responding personally to their questions and building a community really has a positive effect on your company's brand. I have seen good customer support experience translate to non-trivial number of referrals and word of mouth sales.
karterk··on Ask HN: 14 days off work, help me pick a project
I think you're approaching this in the wrong way. And, trust me, I have been there and done that over and over again and failed numerous times. People work on a side project for multiple reasons, and give that your reason is simply to augment your primary income, there is only one thing you should be looking for: people who are willing to put down their money to pay for what you want to build for them. Is that easy? No, but there are tonnes of crappy software out there which businesses pay for, and if you replace one of them, you can become ramen profitable pretty soon. What you really need to do is pick an industry (boring the better) that you know well or have good contacts in, and spend some time studying how they work and what you can do to make their life better.

You can of course also hypothetically build a product and hope to succeed, but that will be leaving too much to chance.

karterk··on Would you use JavaScript compiled to C for your server applications
With servers being a commodity these days, I can only think of rare use cases where this would be helpful vs just scaling horizontally behind a load balancer. Also, in most real world systems I have seen, the real bottle neck is in the I/O and rarely in the business logic or server application level.
karterk··on Torn and weary (on Brendan Eich and Mozilla)
Judging a persons character by what they have said and done in the past is standard, and fair, practice.

You judge a CEO by the actions/decisions made in professional context. You don't use a personal decision to extrapolate what-if scenarios.

karterk··on How Algolia (YC W14) Built Their Realtime Search
For the search index, I wonder why they did not go with ElasticSearch or Solr, and decided to roll their own replication/distribution layer. RAFT is much simpler than Paxos, but it's still something pretty difficult to get right (as with any distributed system). Given that both ES and Solr have already got this figured out, what were the specific reasons for rolling your own C++/Nginx layer?
karterk··on Burnout
Have you tried applying to work posted in the HN freelance hiring threads? There are many such niche software dev contracting listings. Here's another one: http://www.authenticjobs.com/

I suggest you build a few "apps" which are highly focussed in what they do but are more-or-less feature complete and publish it on GitHub. This works better in some areas of software dev than others, but it will basically demonstrate that you can ship a product in an area that you have expertise in. As a contractor, your ability to ship code is the most important point of evaluation for people trying to hire you. With the source code available, people can also validate that you can write decent code. Having such a showcasable portfolio of work will definitely put you in the top of the pecking order.

karterk··on Burnout
Depending on the terms of your employment, this might not even be possible, but you should try augmenting your primary source of income with some part-time consulting. While the lure of the profitable side project is hard to resist, it's much easier to become financially independent by doing consulting than through a side project. Bootstrapped SaaS projects grow very very slowly in terms of monthly recurring revenue (also known as the Long, Slow, SaaS Ramp of Death [1]).

[1]: http://businessofsoftware.org/2013/02/gail-goodman-constant-...

karterk··on Did Malaysian Airlines 370 disappear using SIA68/SQ68 (another 777)?
Good analysis, but I'm skeptical that this is not already accounted for in the military radars. Given that so many flights fly everyday in almost every route, it becomes really easy for any country to sneak an aircraft anywhere. Such a glaring loop hole should not exist. And we are talking about crossing the borders monitored by multiple countries here.
karterk··on Poll: Asking for a friend – what do you understand by "6x4"
Maybe this is the designer in me speaking, but I immediately thought of width x height.
karterk··on Ask HN: Best way to do a coding exercise for a phone screen?
Hi Chris,

Try out Codassium (http://codassium.com/), which is built exactly for this use case. Disclaimer: I helped build it.

Google Docs is just too painful for both the candidate and the interviewer.

You might also want to consider using Interview Street, if all you want to do is to eliminate people who don't know how to code without spending too much time on the phone.

← PreviousPage 8 of 18Next →