
Kalzumeus Software Year in Review 2016 - mkeeter
http://www.kalzumeus.com/2016/12/30/kalzumeus-software-year-in-review-2016/
======
dsacco
I owe a great deal of my own personal success to Patrick McKenzie and Thomas
Ptacek, both of whom have been steadfast, consistent and generous advisors
(both in public comments and in "hey can I bounce this off of you" emails).

After following Patrick's writings and stories for a number of years now, I
can confidently say that his relentless transparency has been one of the
greatest gifts I received in the industry. His advice may not strictly work
for everyone in the literal sense, but I believe that diligently attempting to
use his suggestions as a template is, itself, a highly productive exercise in
programming and business.

There is one particular note I want to make about patio11's success: Patrick
is a phenomenal marketer with remarkable business savvy who _happens to be a
programmer._ He is _not_ primarily a programmer, which is evidenced by his
recent work at Stripe and the work he is best known for on HN (essentially,
writing about shipping software, not the software itself).

This is not to say he is not a good programmer - I simply can't comment on
that, though I have reason to believe he is after seeing Starfighter's game.
Rather, he leverages that skill set as a means to an end, not an end in
itself.

I think this is a really important point to make because I see many people who
try to pursue significant career success by e.g. ranking up on TopCoder, or
open sourcing impressive software. While those things can lead to success,
there is a vast, long tail of people who are very capable programmers with no
recognition doing those things. Healthy self-promotion and _efficient_
improvement/maintenance of one's technical skills has a much higher
probability of success than attempting to become Fabrice Bellard.

This is demonstrative - in my opinion, the sum of all of patio11's advice can
be summarized as follows: _Don 't be a programmer, be a $SOMETHING who happens
to program, and program well._

~~~
sanderjd
I've taken this lesson too, and I'm curious about what set of values for
$SOMETHING is. In theory it is "everything", but in practice the two common
values I see are "marketer" and "scientist". I really can't get excited about
marketing, and it's difficult to justify going for a PhD. What are some values
for $SOMETHING that others here have seen success with?

~~~
cosmie
The reason "marketer" seems so common is because those who are good at
marketing are inherently good self promotors. Making them far more visible
than other, less common examples.

Anecdotally, supply chain and business operations are two big areas where I
have success.

You don't even really need any domain knowledge to get started in those
fields. I did a 6 month internship at one of the world's largest companies
that has a consistently top ranked supply chain organization. They had the
expense of a 10 person recruiting team (all expensive line managers and
directors, not HR personnel) coming to campus for 3 days, and only gave offers
to two of us. And I explicitly said during my interview I knew jack all about
supply chain. Their response was that supply chain was their expertise and
they had training for that if I needed it, but my general analytical skills
and Excel knowledge were far more rare (in their applicants).

Turns out they were piloting a new inventory management methodology and were
using Excel-based "models" to trial it manually at a dozen manufacturing
plants before deciding if it was worth the 8- or 9- figure cost to have SAP
make that an official model in their system. It involved running batch exports
from SAP every morning, putting that into Excel, updating the figures, and
sending that out to the plants. But the pilot had scaled to a high volume
plant that basically maxed out Excel, and they were struggling to make it
work. All I did was essentially refactor a lot of logic to do batch operations
(made a few VBA scripts that connected to the Excel spreadsheet with an ODBC
connection and ran a series of SQL statements instead of in-cell functions).

It's been about 5 years since then, and I still get calls every few months for
contract work essentially doing the same thing (Excel got bogged down -> needs
a refactor).

Part of my day job involves essentially doing the same thing, but in a more
generalistic sense on business operations. Process engineering is a portable
skillset across verticals. Whether it's in supply chain, sales, marketing, or
operations, there's always a bottleneck that's preventing growth or efficient
resource utilization. I am a piss-poor programmer. I have never once been
hired or paid explicitly to program, and I don't have enough experience in any
particular language to pass even a junior level programming interview. I get
paid to make irritations or problems go away while causing the least amount of
friction utilizing whatever constraints exist. In the course of doing so I've
tweaked C# and PHP programs. I've written bash, awk, perl, VBA, Python, and
NodeJS scripts. I've written a whole lot of SQL. And I've refactored an
incredible number of Google Sheets and Excel workbooks. I'm not valuable
because I can program; I'm valuable because I can reliably and consistently
resolve whatever issue is thrown my way in a self-sufficient manner, and ramp
up on whatever knowledge or tool is needed to do so incredibly quickly whether
I have prior exposure or not. I'm not a consultant that provides a report that
then requires additional resources to execute; I provide a working solution
(or prototype) that immediately solves the issue. And in the case of a
prototype, provides a stopgap solution that (crudely) solves things in the
immediate term and provides an explicit, working example of the functionality
that their engineering resources need to incorporate into their internal
tools/processes for a long term fix.

One piece of advice that seems to serve me well: people hate change. And
people also tend to hate relying on others to perform their job. The greater
the change, or the more reliance on a programmer to make modest changes to a
process, the more resistance and ill will you'll create. Engineers thrive for
perfection, and invariably lean towards "optimal" solutions that are very
invasive and supplant existing practices, rather than supplementing them.
patio11 didn't create an entire Customer Management System or appointment
management system that had automated appointment reminder functionality. He
created a simple system that supplemented whatever process and system was
already in place and added incredible benefits with minimal additional steps.

~~~
shostack
As a marketer I've started thinking that the marketing operations side
actually has a ton of value to unlock for many orgs for similar reasons to
what you stated.

I've taken 50MB Excel reports that took a couple hours to pull manually and
reduced them to <1MB and updating automatically with data connections. That's
real time savings.

Then there's the other marketing plumbing like properly setting up analytics
(non trivial), conversion tracking, tag management, connecting various ad
platforms, setting up automation in an ESP, etc.

It actually shocks me how many senior marketers have no idea how to do this
stuff, but then again that is my marketplace advantage.

~~~
cosmie

      It actually shocks me how many senior marketers have no idea how to do this stuff, but then again that is my marketplace advantage.
    

A lot of senior marketers come from traditional marketing/advertising
backgrounds. Where they work with marketing channels that operate on imprecise
exposure figures and ballpark ROI calculations. That's what they expect, so
when moving into a medium like online advertising they're perfectly fine
operating in the same mental framework.

And to be fair, software engineers also tend to suck at that type of marketing
plumbing. Did engineering put your conversion snippet directly within an
onclick event on the submit button? Then they chose a poor implementation
method with a lot of gotchas that could compromise your reporting. You could
be over counting by including clicks on submissions that never go through due
to validation handling. Or you could be under counting conversions because
they didn't properly intercept the submit event and there's a pretty little
race condition between the page submitting and your conversion code executing.
Or a half dozen other potential pitfalls that need accounted for when using
the onclick or onsubmit event.

Marketing Engineering is definitely a good niche to be working in.

~~~
shostack
For sure. Oddly enough, a lot of people in the traditional/advertising
backgrounds do get how to use the mediums effectively, or even how to measure
and optimize within them, but when it comes to the technical aspects of
setting them up, they are clueless, and don't grok the minutiae.

I wouldn't call myself a Marketing Engineer by any means. I am learning how to
be a better coder, but, despite the buzzwordiness of the title, I feel like
Marketing Technologist is a better descriptor (for me at least).

------
idlewords
I read these reports from Patrick with interest, but feel like he inhabits a
different universe than I do.

Pinboard made $256K last year, so I operate in at least the same financial
ballpark. But I do my taxes on TurboTax and have never spoken to an accountant
or lawyer. My business is a sole proprietorship.

From my perspective, Patrick overcomplicates everything he undertakes with
business processes and overhead. From his perspective, I'm probably a
irresponsible slacker.

The upshot is that there are as many ways to run an online business as there
are people, and how you do it depends as much on your personality as on
objective factors. Big props to him for writing about his experience so
openly, and in a way that so many people clearly find helpful.

~~~
tptacek
I've had an accountant do my taxes since I was 19, and feel like I've probably
saved a pretty substantial amount of money --- not by doing elaborate things
to structure my income (there _are_ accounting tricks that do that, and I
agree with you that exploiting them feels skeezy), but simply by ensuring I'm
doing them correctly and, more importantly, on time.

Legal expenses are, as you say, a question of personality and risk tolerance.
After we sold Matasano, I talked to people who'd been operating other large
consultancies, and was shocked to learn that there are big firms that _just
sign every contract their clients give them_. We got every contract reviewed,
one by one, at significant expense. They just signed and started working. Our
outcomes were comparable!

We still get everything reviewed at the new company. It costs money, but not
so much that it changes the economics of the work, and I've had enough close
calls over 20 years of working that it's worth it just not to worry. But
reasonable people disagree about this all the time.

I do think you're wrong about the sole proprietorship thing, though. An LLC is
extremely cheap (you don't even need a lawyer) and protects your personal
assets from business liabilities. On the other hand, your legal strategy
probably just involves fleeing the country to hide amongst the penguins along
the 70th parallel.

~~~
ahh
> I've had an accountant do my taxes since I was 19, and > feel like I've
> probably saved a pretty substantial amount > of money...simply by ensuring
> I'm doing them correctly > and, more importantly, on time.

Can you give one specific example of something you wouldn't have been able to
do correctly and on time yourself, that has at least $1000 in value to you?
I've been doing my own taxes (with a six figure tax bill and often 15+ 1099s)
for ten years; I'm pretty confident I've not made any meaningful errors other
than typos or transposing labels on the odd stock entry, a mistake that would
cost me $0 even if audited.

I--at least for a W2 worker who is a US citizen living in the US--have a
uniquely bad tax situation, and I'm pretty confident that I'm not missing any
major tax breaks, short of doing absurd accountancy.

~~~
iakh
The first time I used an accountant, they immediately found that I had not
been taking advantage on a SEP-IRA. Which immediately saved me several
thousand dollars in taxes that year. While it's not something I couldn't do
myself the next year, it was admittedly something I never knew about
beforehand.

------
whichdan
Speaking of salary negotiation, Patrick's article[0] on it is one of the
single most valuable things I've read in my career. I can probably attribute
about 25% of my salary to it.

[0] [http://www.kalzumeus.com/2012/01/23/salary-
negotiation/](http://www.kalzumeus.com/2012/01/23/salary-negotiation/)

~~~
cpach
Seriously, everyone should read this.

~~~
floodyberry-
"How to ensure everyone is paid fairly" would be a "must read". This is more
of a "Employers and potential employees are expected to try and screw each
other out of as much money as possible - Here's how you can help perpetuate
that!"

~~~
packetslave
That's a pretty uncharitable view of it. I would characterize it as "Your
potential employer is going to do everything it can to pay you as little as
they can get away with. Here's how to maximize what they DO pay you."

------
spitfire
Patrick is such a tease. I want to know what that two week project at Stripe
that /every/ company should have is now.

~~~
gcr
Right? Half of us on HN would be dying to know.

Maybe it's some kind of code review/search tool...?

~~~
erpellan
I'm going to guess one of: time tracking, holidays, expenses or internal
directory with pictures and desk locations.

~~~
mistermann
> internal directory with pictures and desk locations

I sometimes wonder if no one will ever say out loud how much they'd love this
(at bigger companies), or if it's just me that can't easily learn 100 new
names/faces/roles/projects.

~~~
gcr
I struggle with names and faces too.

I've been thinking of turning my coworkers into an Anki deck to study on the
subway. That would really help me, come to think of it.

------
grow91
If anyone is interested in how much Appointment Reminder sold for:
[https://feinternational.com/buy-a-website/6192-b2b-saas-
prof...](https://feinternational.com/buy-a-website/6192-b2b-saas-professional-
services-106k-mrr)

~~~
forgetsusername
$120,000 in credit card debt (with interest) for a sale of $215,000 (less
taxes)? Something doesn't add up.

~~~
sethev
What are you implying? He said in the post he paid off most of his creditors
after closing. If the final price was $215k it certainly seems possible to pay
off most of $120k with that.

~~~
forgetsusername
> _If the final price was $215k it certainly seems possible to pay off most of
> $120k with that._

Right. I was "implying" that perhaps the business wasn't as good a business as
I thought.

~~~
charlesdm
A business like AR with $60k in profit sold for $215k seems like a pretty good
deal for the seller.

On a yield basis, that seems like a great deal, but given the work involved (+
chance of the business being disrupted), I'm not sure I like that profit to
price paid ratio. It certainly isn't a price I would have paid.

~~~
sjg007
Why? Seems cheap? <4x? Next phase is a sales force to get customers.

------
charlieirish
Patrick never ceases to deliver on value to this community and many others.
Even though this is a story about how he latest startup didn't go as planned
(he's now full time at Stripe), he drops knowledge bombs for us all to learn:

\- knowing when to move on to something new (Appointment Reminder ->
Starfighter) when he didn't have the 'fire in his belly'y any longer

\- financial planning using a simple spreadsheet: the retirement fund!

\- when to borrow money and how to calculate risk

\- when to join a company (rather than start something new)

\- the value of personal leverage (personal and professional development)

\- when and how to sell your startup

\- the trials of shipping (six weeks became three years)

\- setting goals for the future

\- the value of family

I've added Patrick's year in review to a few other bootstrappers and
solopreneurs that I have felt are helpful, instructive or inspiring:

[http://startupclarity.com/a/bootstrappers-2016-year-
review/](http://startupclarity.com/a/bootstrappers-2016-year-review/)

~~~
jodrellblank
\- Appointment reminder: how to ignore a business for four years, while not
improving it and giving you stress

\- financial planning using a spreadsheet, then moving to more expensive
lifestyle, getting in debt and having the retirement fund turn negative when
he has a wife and child and is closing down his companies. Something we can
all learn from?

\- when to borrow money and how to calculate risk: Except he says not to trust
his calculation of risk when he encourages the reader to play poker against
him if possible because he's so bad at risk estimation.

\- when and how to sell your startup: again no, he says it put him in a bad
position to be wanting to sell quickly, and he glosses over 'how' with "I know
how because I've done it before". The only good read there is "don't wait
until it is declining before selling, like Bingo Card Creator was".

\- the trials of shipping (six weeks became three years): the trials of
promising and pre-selling a thing, then changing your mind and doing a startup
instead, and trying to turn that into a positive. (Aside: Three years? I
wonder how long before there's a reasonable chance that some of the purchasers
died before the release?)

\- setting goals for the future: where he keeps saying he didn't meet his
goals, or they have changed?

\- the value of family: "I had not felt as effective as a husband / father
recently as I wanted to be" \- the value of family is lower than a side-
business he was bored of and wants to sell? Lower than a "huge amount of
personal fulfillment" that he got instead during that time? Lower than the
guilt of refunding customers over his video series? If you were a potential
customer and he said "I choose to spend more time with my family, I can't do
this work justice, sorry, here's a refund", wouldn't you be fine with it?

I don't dislike him at all, I do respect him, and I like the transparent views
into his life and businesses and plans and thoughts, but I'm not seeing the
same things you are at all. If anything these are more cautionary tales along
the lines of "you can sometimes get what you want with hard work, but it comes
with a price".

~~~
gwern
> Aside: Three years? I wonder how long before there's a reasonable chance
> that some of the purchasers died before the release?

Assuming all his customers are roughly 20-40 years old, the annual mortality
rate is ~0.1% IIRC on average (mortality rates, because of the exponentiality
of the Gompertz curve, only begin substantially increasing post-40 years, up
to the ~90s with annual mortality rates like 10-50%). So then the 3-year
mortality rate would be 1-(1-0.001)^3=0.002997001 or ~0.3%. So roughly you
would need ~334 customers to expect 1 death over 4 years (100/0.3, since
333.3333333 * 0.002997001 ~> 0.9990003332), with the full binomial
distribution covering 2/3/4/5/6 deaths as well (but not much higher with any
meaningful probability). I forget where I read it, but I feel like I remember
that at least 1000 people pre-ordered the course, in which case the mean
number of deaths becomes more like 3 with up to 9 deaths, etc.

------
stevoski
From the article:

"Doing [meat-and-potatoes work on marketing and sales that the business
needed] was a real joy back when I was running Bingo Card Creator, but
repeating it felt a lot like repeating high school."

Oh boy, that's exactly how I feel when I'm in the mood to make a new product.
Patrick nailed it.

------
patryn20
Reading these is always interesting to me. Looking at these sorts of sites and
the amount of articles and buzz they gather on Hacker News and other sites, I
always assume they must be doing high six-figures in income. Yet the ones that
are transparent are generally in the $300k a year or less revenue range.

I've always considered my side projects and businesses failures, but judging
by these numbers I've been more successful than I realized. So I feel good
about that, but I think I really need to re-evaluate my goals and how I pursue
them. Because I've been extremely negative about what are apparently
successes.

Perhaps I also need to be more open to hiring a broker next time I sell a
project.

------
dennisgorelik
It is hard for me to reconcile:

1) "Tokyo is a wonderful city and I love it a lot – enough to not regret the
rent"

2) "the balance in my Excel file went progressively negative. This was
expected, but caused me a bit of stress."

Ogaki is a city where Patrick successfully launched his first startup - Bingo
Card Creator.

Patrick met his wife in Ogaki.

Then McKenzie family moved to Tokyo, which "helped" Patrick:

\- to fail at his another startup - Starfighter and converted him from
entrepreneur to an employee;

\- "not felt as effective as a husband / father";

\- to accumulate "health debt".

What is so "wonderful" about Tokyo and what is there "to love"?

~~~
sgdesign
The fact that you're wondering why Tokyo is so wonderful compared to Ogaki
makes me think you've never been to Ogaki… (or Tokyo, for that matter).

~~~
graeme
But Patrick previously wrote about how he loved Ogaki, and was in Japan
because Ogaki was there.

So it might well have made a mistake inflating lifestyle while cutting
consulting AND before any of the businesses were "done".

I have the good fortune of being in a low cost of living city that's also a
real, wonderful city: Montreal. Excellent place to start and scale a
solopreneur business.

Currently scaling up my business processes (accounting, support, etc.) which
increases business costs. I'd be very wary of moving anywhere more expensive
until I've increased revenue to match. (This _shouldn 't_ be a problem –
outsourcing the backend processes will let me move on several revenue
generating projects I've been deferring while dealing with a backlog of
administrative stuff)

------
mutagen
I'd love a series of interviews with the people you've dealt with over the
years at your Ogaki bank and their perceptions and misconceptions about your
account and the transactions that go in and out of it.

------
emiliobumachar
At least here in Brazil, credit card debt has a fame for having the highest
interest rates of all possible forms of debt, by a wide margin.

If you don't mind saying, did you ever considered other forms of debt, e.g.
applying for a loan at the bank? If yes, what tanked it?

~~~
patio11
Yep! There used to be a product called a "signature loan" in the US which was
an unsecured debt without a piece of plastic attached to it, at a rate
materially lower than credit cards. These are very difficult to get these
days; I was rejected three times, generally on a "You're asking for an amount
of money that we'd find difficult to profitably underwrite and your business
wouldn't qualify for it anyway; have a nice day; consolation prize we'd LOVE
to give you a credit card" basis.

This is complicated by my business being international in character, where
banks in two countries both think that perhaps a bank in the other would be
more appropriate.

~~~
chatmasta
Why does your US bank need to know that you are in Japan?

------
pavlov
I'm a bit surprised that he was running Appointment Reminder as a sole
proprietorship. My business ventures have mostly sucked, but I've always found
the separation of personal and business concerns afforded by proper
incorporation to be invaluable, and not expensive at all in the big picture.
(This was in Finland; I imagine Japan could be very different.)

On the other hand, I guess that makes AR a fine example of a company that
would have benefited from Stripe Atlas if it had existed back then? :)

~~~
chatmasta
You are asking about the difference between C-Corp and LLC in the US. Really,
your options are:

(a) LLC

(b) S-Corp

(c) C-Corp

The rules, AFAIK but IANAL:

\- Sole proprietorship (single person) can file taxes for an entity with TIN
as LLC, S-Corp, or C-Corp

\- S-Corp can elect to file as a C-Corp at any time

\- C-Corp can issue multiple classes of shares; S-Corp cannot

\- Easy to convert from an S-Corp to a C-Corp

\- Difficult to convert from a C-Corp to an S-Corp

\- LLC has lowest setup cost

\- C-Corp requires you to pay double taxes on some income.

\- LLC and S-Corp taxation effectively identical

In my opinion it makes sense to incorporate an LLC, then decide between filing
taxes as LLC or S-Corp at the end of the first tax year. If at any time you
want to raise investment, file the requisite paperwork to convert the S-Corp
into a C-Corp.

~~~
tptacek
Theoretically the big difference between an S-Corp and an LLC is that an
owner/member/principal of an LLC can't simultaneously be an "employee", and so
must be paid by profit sharing distributions rather than W2, which can be
inconvenient.

But as you point out, most LLCs can file taxes as S-Corps, which gets rid of
the major difference.

Fun fact: LLCs can also have multiple share classes.

------
__derek__
@patio11, there's a broken link to your post about salary negotiation. It's
currently relative and needs a leading slash.

    
    
        <a href="2012/01/23/salary-negotiation/">previous writing on the subject</a>

~~~
patio11
Fixed, thanks.

------
Epenthesis
(I realize this is rather tactless, but I ask in the interest of fairly
weighing the risk/rewards of startups/consulting vs. big tech)

Is it fair to read this to mean that patio11's net worth is < 250 k$? (Based
on the fact his liquid assets were negative prior to the sale of AR, and said
sale netted less than the price of a house in Tokyo, median price: ~250
kUSD.).

~~~
uiri
I would be _very_ surprised if the median price of a house in Tokyo is ~$250k
USD. I would ballpark it more to the $500-750k USD range.

My impression was that he had liquid assets and took on debt in order to avoid
potential cashflow issues should he deplete his liquid assets.

I would hazard a guess that the value in the range of (new house, new house in
Tokyo) refers to (sale of AR - $120k in debt) rather than his total net worth
after the sale.

~~~
0x1234
Prepare to be surprised :)

[http://resources.realestate.co.jp/buy/what-is-the-average-
pr...](http://resources.realestate.co.jp/buy/what-is-the-average-price-of-a-
house-or-condo-in-tokyo/)

We have a mental model from the 80s. Decades of recessionary prices catches
up.

~~~
guy_c
... and don't forget a shrinking population. Accommodation in Japan is
surprisingly inexpensive.

------
tabbott
Why were you unable to keep StockFighter running?

~~~
tptacek
I've written this before on HN, so will re-share it to buy more time before
completing a big write-up on Starfighter:

All three of us are software developers. We like developers. We spend a lot of
time talking to developers, in particular about their careers.

We had no trouble finding clients, but a lot of trouble convincing clients to
take the CTF model seriously; virtually all of them wanted us to function like
a traditional recruiter, offering 10 candidate profiles for every open req.
That's a job that is 90% saying "no" to people.

It was dispiriting watching developers we knew to be strong get rejected for
positions because they didn't have the right resume, or didn't solve some pen-
and-paper programming puzzle quickly enough. It was a drag for all of us. It
made us unhappy.

Life is too short.

~~~
sogen
Why didn't you listen to your customers and do just that?

I mean, change some puzzles/tests or simply recommend someone to the job if
you knew he had the skills?

Wasn't this what you were solving? Matching positions to great devs.

~~~
tptacek
No, that's not what we were solving. If we wanted to be conventional dial-for-
dollars recruiters, we would have done that.

I understand and appreciate the mentality that your comment comes from. But
the premise of our startup wasn't Steve Blank-style customer development,
where we started with a vague idea of the space we wanted to be in and then
worked with customer prospects to figure out exactly what product we would end
up building.

Rather: the company we started was an experiment, a very opinionated one, to
see if we could port a hiring model that had worked extremely well for us at
one company to a larger set of companies.

I think there's a way to make that model work, but I've become convinced that
"contingency recruiter" isn't the way to deliver it.

~~~
jc4p
Innovation in the recruiting space is a really hard task. Most recruiters
would rather throw money at yet-another-job-board-and-funnel-source than try
something unique which requires putting in extra time and effort.

The last "innovation" I've witnessed in the space was the Hired model, and
everyone is trying different versions of that now. It's a hurtful model that
abuses the inefficiencies and lack-of-transparency in the two sided market.
(For anyone wondering what I mean: When you sign up on Hired they ask you what
your preferred salary range is, then, as of last time I checked, they show
_that exact value_ to the companies looking through prospective candidates. So
guess what the first offer you get is? Not what a "fair" market rate is, but
exactly what you typed into the sign-up form.)

I do a lot of talking to recruiters as part of helping them use our Stack
Overflow Talent product, and honestly it feels like taking crazy pills half
the time. Having to answer "why?" to "You need to at very least explain what
your company actually does, or maybe the tech stack you use" makes me feel
insane.

I loved Starfighter, but thinking back what I liked most about it was the
content you and Erin and Patrick wrote about it. Your point about "life is too
short" is very very poignant.

I guess the whole point of this comment is for me to say I completely respect
that decision, you all did the right thing. Trying to convince people who
would rather just throw more money at a wall than try something unique to use
your unique product is an awful feeling.

I'm very glad to hear your new project is easier to make money off :)

~~~
user5994461
The last innovation I witnessed was Hacker Rank.

I'd better do a stupid coding test online that have to schedule a phone call
during working hours with a guy who just want to get away from the phone call
and could barely present his company and what he's recruiting for.

~~~
sidlls
My view is that Hacker Rank just perpetuates the "textbook academia" and
"trivia question" model of interviewing, except it automates out part of that
step. If that's innovative, my bar is too high, I guess.

~~~
user5994461
There is a wide range of options on HackerRank.

Standard interviews: multiple choice trivia, red black tree programming
puzzles.

Innovative interviews: Custom code exercises with custom unit tests written by
the company, ssh exercises where a server is created automatically per
candidate and he has to connect to it and configure/fix/change some stuff.

After many interviews (both given and received). I have definitely settled
that:

1) I'd rather write a stupid program on HackerRank than deal with an
annoyingly scheduled phone interview (where I might be expected to spell that
code over the phone WTF). Automation is nicer than the average interviewer. A
proper code editor for coding is better than the average shared editor.

2) No matter what we try to do: 20% of candidates won't show up + 20% won't be
able to code a program to print numbers from 1 to 10. There's nothing we can
do about that (the sad state of interviews is probably all because of that).

3) For the first initial screening, very simple exercises are all that's
needed (see 2). Hacker Rank is perfectly appropriate for that.

------
grok2
patio11, why does the ToS page on Appointment Reminder still list your name as
the one the agreement is with?

[https://new.appointmentreminder.org/terms-of-
service/](https://new.appointmentreminder.org/terms-of-service/)

------
jonaldomo
Great write up. Does anybody have more information on the attack near the end
"...defrauded by Lithuanian hacker gang which figured out how to use our
application to proxy a telephone call through Twilio’s phone number
verification feature to a phone sex line in the Caribbean..."

~~~
patio11
This is fixed now, but for historical context:

Twilio has a feature to allow you to make calls which appear to come from a
non-Twilio phone number. To do this, you have to make an API request (see
here: [https://www.twilio.com/docs/api/rest/outgoing-caller-
ids);](https://www.twilio.com/docs/api/rest/outgoing-caller-ids\);) Twilio
then responds to your application with a code that the user needs to enter,
you tell that code to the user (via e.g. displaying it to their web browser),
and Twilio calls the user to ask for the code. If they key in the correct code
on their phone, their number is verified for your account, and you can now use
it as the caller ID for future calls from your application.

Because this causes an actual real-world phone call but doesn't look like a
phone call to either Twilio or Appointment Reminder, it (at the time of the
attack) bypassed some protections like, to name one example, AR's anti-abuse
rate limiting logic.

The bad guys "attempted to verify" the phone sex lines in the Caribbean, in
much the same way as a legitimate AR customer would attempt to verify their
office phone number so that appointment reminders would appear to originate
from their office (and they'd get callbacks) as opposed to originating from
our 1-800 number.

Some of our customers are at larger institutions, which require you to put in
an extension prior to reaching the customer. Think "hospitals." The bad guys
put in an extension with over 100k digits to keep their phone calls from
timing out. (Dial a 5, wait a second, dial a 5, wait a second...)

The economic incentive here is "If someone calls a premium-rate number that
you control, you get paid money." The economic damage is "If someone calls a
premium-rate number, that someone pays to do so", so all the money the bad
guys made came from either Twilio or I.

~~~
sjg007
Seems like pure fraud and there should be contracts to prevent it...

~~~
lamby
Contract...?

------
Ayraa
Maybe the time and effort demands of both wouldn't have allowed it but given
how Patrick's personal debt grew, it seems it would have helped to do at least
a little bit of consulting while he was working on Appointment Reminder.

Doing freelance / consulting work on the side while bootstrapping your product
to profitability seems increasingly common now. Though this is definitely more
sustainable in locales with lower costs of living while you also don't have to
provide for a whole family.

~~~
mooreds
I am doing some consulting while working on a company and man does it add some
stress. Not that having zero money coming in would be stressfree.

------
mythrowaway99
No offense, but how do you get $120,000 into credit card debt with the claimed
$30,000 per week consulting income.

~~~
vinceguidry
He explained it in the article, though it was easy to miss. If you need a
large amount of cash for something, and a lot of smaller figures coming in,
you pay for everything with revolving debt and let your receivables stack up
in a bank account. It's one way to save up money for a down payment on real
estate, maybe the only way if your lifestyle is close to your income.

~~~
jldugger
I can't imagine anyone accepting a downpayment when you have a downpayment's
worth of revolving debt.

~~~
thefalcon
That's why Debt-to-Income ratio is a thing. If you're someone who's typically
adverse to debt but willing to make an exception in the case of real estate,
and you're living close to your means (while renting), then it can seem to
make sense to get your necessary down payment (plus closing costs etc.)
through revolving debt. As long as your DTI remains below the cutoff, lenders
are happy to let you do it.

~~~
sjg007
Yep, quite common. Cheaper than a cash advance too... however it's changing
now with 3% down...

------
tbrooks
Why host Jekyll on AWS Lightsail and not S3?

It's simpler, faster, and cheaper.

Plus you can use Cloudfront and use AWS Certificate Manager for SSL.

~~~
jdboyd
I doubt it is cheaper if you already need the VPS for a seperate rails
application.

