HN user

Zarathu

651 karma
Posts16
Comments140
View on HN

Out of curiosity, what would an "OTP-first" design look like?

ETS is built into OTP, so how is using ETS not "OTP-first"? What's wrong with using ETS? It's just an in-memory store.

I looked through the code and didn't find it to be anywhere close to procedural in style.

I really feel for the author. We had once decided to participate in Stripe's Identity Verification beta. After submitting the form to request participation, Stripe's system locked our account pending verification.

We were fortunate in that we had a backup payment gateway integration "just in case", because otherwise we would have been completely unable to accept any payments at all for a full week.

That week was still extremely stressful. They offered no explanation or reason for putting our entire business on hold.

In particular, I was itching to learn more about handling concurrency in Elixir. This, of course, led me to GenServers.

Might be a nitpicking here, but GenServers aren't useful for concurrency. They just manage state, and only process one message at a time. If you're using this as a cache, your reads will be bottlenecked by however quickly the GenServer can handle the read requests.

[dead] 15 years ago

Hi, I'm a sledgehammer. Your head looks attractive.

[dead] 16 years ago

Your site similarly looks like garbage. :(

[dead] 16 years ago

He's being irrational because it involves his brother's work, and HN usually offers sound advice.

I don't care what happens, as long as it's best for the company.

Yes. Very solid yes.

You don't see much of this in the media, but Iraq is a stunningly beautiful country. There's a lot that you can learn from the people there (and certainly much they could learn from you), and the Arabic language is nothing short of remarkable.

Diving head-first into another culture is one of the few educations that the Internet and college cannot fully convey via text. You won't regret it.

Tabs vs. spaces is soon going to join the following: GPL vs. BSD; VIM vs. Emacs; Centralized vs. Decentralized; et cetera.

As long as people are consistent, either way is fine.

I'd be disgusted too, if Ruby (my current language of choice) contained a bunch of completely random methods/functions in the core.

I think including things like that in the core is particularly poor practice.

Agreed. The dish can last for days, with little preparation (other than the pre-soak).

It's a high calorie meal that'll keep me filled for hours. Pretty ideal when I need to just lock down and code for a long period of time.

As an avid FreeBSD user, I must say that the article didn't really provide an unbiased comparison of Linux to FreeBSD. It didn't offer any of the advantages Linux may have over BSD.

Linux has an amazing community with better application support. Linux also has an optimized C library. For example, you should take a look at BSD's strlen() versus GNU's strlen().

"improve my PHP abilities to OOP"

Reading that made me laugh. PHP's OOP is extremely flawed (among various other things, like their inability to universalize the $needle and $haystack argument order: http://bugs.php.net/bug.php?id=37088), so using PHP to "improve your technical abilities" wouldn't really get you anywhere except having a better understanding of PHP.

I think that what you're trying to accomplish really needs to be defined in terms that aren't so broad. Especially these days, "technical skills" is such a vague term that it can really be applied to anything.

You don't need to have a complete understanding of some silly framework or whatever in order to still be considered an excellent developer in many ways. For example, you could write a stunningly elegant and clever mathematical algorithm in C without using a function more complex than sqrt(). (Or maybe you could write a more efficient sqrt!)

I think that learning something like that might improve your understanding of machines and could, indirectly, improve your understanding of "web apps and services"—that is, understanding HTTP, statelessness, and so forth.

tl;dr Figure out exactly what it is you want.

When I was 11 I grabbed a small book on Visual Basic so I could write a keylogger to steal my sister's AIM password. It was fun, learning about how to use the WinAPI and various other components, even though I didn't really understand the abstract concepts behind it.

I did VB, ASP, and dabbled with the .NET framework until I was about 14, which is when I started to get into languages like Java and C.

After studying Java for a couple years, I started learning about buffer overflows and shellcode, so I did x86 for about two years. At that time (I was 16), I had a job for a VoIP security company in Texas, and I published various exploits for VoIP phones. I think I was 17 when I gave a talk on overflowing SIP at Toorcon and Blackhat.

I did PHP and Perl for about a year after that, but I dropped that pretty quickly when I found out about Ruby and Python. I'm running several web-based startups now, and I love it.

I'm currently 19.

The problem with mocking something up in XML/HTML is that you're particularly limited because you're forced to think in boxes. Photoshop doesn't put that restraint on you.

In Lebanon, there are tons of startups. That's because the Arab population isn't oppressed by their own government the way they are in Saudi Arabia (women being executed for witchcraft and so forth).

I can't believe someone down-voted my previous comment. Is it now anti-Semitic to say that the Jews aren't genetically superior to everyone else?