HNHacker News
TopNewBestAskShowJobs

lojack

1,743 karma · joined December 14, 2010

Full stack developer. Ruby/Python/Elixir/random other things I'm interested in.

https://github.com/rclark72

[ my public key: https://keybase.io/iojack; my proof: https://keybase.io/iojack/sigs/TM6mY45JTnTwI5zGX2LT9nUibIwvZU8gAd5KitS6oHA ]

submissionscomments
lojack··on 0x Launch Kit – Launch your own cryptocurrency exchange or marketplace
You've done a good job explaining how to do foreign exchange and how you can personally buy things in other countries. What happens if you're an international business that uses Bank of Melborne and has to pay vendors in Croatia using Primorska Banka? How does actual money get sent? Not credit that can be settled at a later date. Real money, sometimes large amounts that needs to be settled. A forex market is absolutely going to be necessary to do this, and as you pointed out those are very liquid markets which helps. A forex is only one piece of the puzzle though. You somehow need to get money out of Bank of Melborne and into the forex market. Then you somehow need to get the money out of the forex market and into Primorska Banka.

I get it, you want to play devils advocate, but every example you gave solves a problem that isn't "real time cross border remittance and settlement". They either aren't cross border (Venmo/Square Cash), or don't actually result in settlement (TransferWise, Norbert's Gambit), or aren't realtime (Interactive Brokers takes 3 days to settle your account FWIW).

lojack··on 0x Launch Kit – Launch your own cryptocurrency exchange or marketplace
How about real time cross border remittance and settlement? Current fiat approaches require large illiquid reserves, are slow, and not very scalable.

It’s also useful for transmitting money long distances when banks won’t do business and you want to avoid a paper trail (drugs). Fiat is perfectly fine for in person transactions, but not when distance is involved. You may or may not morally agree with it, but this is a proven use case.

lojack··on Tesla Live Stream – Autonomy Day [video]
I question how much of our driving is logic and analytics based as opposed to instinct and reaction based.
lojack··on Interviews with developers who became managers
I self admittedly have trouble with delegation, and maybe you or someone else on here can help. The problem I have is a lot of my time is spent in meetings. I can certainly throw meeting invites to my reports, but I think to when I was a developer and how grateful I was when my manager shielded me from meetings so I could focus on work. It's not that I don't think there's useful information in those meetings for the individual contributors, its that I think there's also a lot of useless information that would largely be a waste of time.
lojack··on Facebook Stored Hundreds of Millions of User Passwords in Plain Text for Years
It happens at fortune 5 medical companies. When you sign up to Facebook you know you’re signing up to Facebook. When you go to the doctors office you are probably completely unaware that your PHI is being shared with a couple dozen other companies often intentionally and sometimes unintentionally. If you are a human in the United States there is a high probability your PHI is sitting in a log file on a server owned by some company you’ve never even heard of.

Fwiw none of this is necessarily a breach of hipaa laws.

lojack··on Don't deploy on Friday and 3 other unwritten rules of software engineering
I don't necessarily disagree with your point about the correlation, but there are a few things I'd like to call out.

First, why not demo partially complete and/or staged but not deployed work? Tangentially, doing things to appease sales is a quick way to reach local optima and build a directionless product (same thing for customers). A good product person will take their requests, identify the problems, throw out things that don't fit the vision, and incorporate the important parts. Sales shouldn't be your drivers, they should be your eyes and ears.

"ASAP" isn't a deadline. It helps you understand urgency, but not importance. Don't waste your time with urgent unimportant things.

> Management generally doesn't care when code is done, they care when it's done and deployed.

I'd argue that these two are the same thing. I'd even take it one step further and say you shouldn't consider your work done until it is deployed and verified working. Thats why you don't deploy on Fridays.

> Fair enough, but I'll observe that in my experience deadlines and deploys are often strongly correlated.

For some code this is true, but not all of it. I'm sure every team is different, but most code I deploy either has no deadline or has a deadline more than a few days out. Of the remaining stuff, deadlines can almost always be pushed back if the work isn't done. Not ideal, but usually a possibility. No need to work over the weekend unless there's a hard deadline which can't be pushed back, which is (or should be) exceedingly rare.

lojack··on Don't deploy on Friday and 3 other unwritten rules of software engineering
> If the whole point of doing the deploy is to pick up new code changes, then the people responsible for doing those code changes run the risk of having to work over the weekend to make sure they're ready.

I feel like you're conflating deadlines with deploys. If its ready to go on a Monday then I see no reason why you should hold off doing the deploy. If you have to work all weekend to get it ready to go by Monday then its probably because there's a deadline.

lojack··on Don't deploy on Friday and 3 other unwritten rules of software engineering
Why would deploying on a Monday result in working over the weekend?
lojack··on AirPods with Wireless Charging Case
The airpods are the only wireless headphones I've owned where this is pretty much a nonissue in practice. It's easy to develop the habit to put the case on the charger when not on the go and to put the headphones in the case when not listening. At least for me those two things is sufficient to pretty much guarantee I'll always have charged headphones.
lojack··on Setting Up a Software Development Environment on Alpine Linux
https://www.twistlock.com/labs-blog/breaking-docker-via-runc...

This is from a CVE that was released a little over a month ago.

lojack··on Setting Up a Software Development Environment on Alpine Linux
The docker daemon runs as a privileged user, so if you're able to break out of the container (which has been shown possible recently) then you can compromise the entire host OS.
lojack··on HIV Is Reported Cured in a Second Patient
Which is completely irrelevant to this because insulin isn’t a cure and has been around for nearly a century.
lojack··on Teen Becomes First Hacker to Earn $1M Through Bug Bounties
What makes you attribute that to exchange rate when you can do the same thing with different parts of the US? $800 for a nice house in a nice part of town isn't that far off from prices where I live (Cleveland).
lojack··on $35,000 Tesla Model 3 Available Now
If there's a 5% chance you'll buy a Tesla, the math still adds up to where you're better off spending $100 to test drive it over a free test drive and paying $2100 more for the car.
lojack··on Cancer Complications: Confusing Bills, Maddening Errors And Endless Phone Calls
None of the surveys linked in this article go over age distribution of savings -- something I'd expect to be inversely proportional to incidences of cancer.
lojack··on Famous Laws of Software Development (2017)
His full quote is a little less prone to abuse

> Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered. We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.

Premature optimization isn't bad, premature micro optimization is bad. You should also be thinking about optimization that results in better architecture and architectural decisions that make it easier to optimize in the future.

lojack··on Show HN: DeskGap – Like Electron, but uses the system webview
Different screen share features only work in the app. I'd use the web app if all I needed was chat, but I'm on video calls and using screen share constantly.
lojack··on Mattermost Raises $20M Series A Funding
Whats wrong with taking large outside investment if the terms are favorable?

As an extreme example, if I thought my company was worth $40m and someone offered $20m in exchange for 10% of my company I would absolutely take that deal whether or not I needed the money.

The problem might not be that the company is taking a deal when they shouldn't. It very well could be that the investors are overpaying. It's also totally possible that this is a good deal if it helps the company get a bigger slice of the market because they can grow quicker.

lojack··on Advice to new programmers
Similarly, don't assume you aren't already someones mentor. Mentorship isn't always explicit. I'm always open to helping solve problems, and giving my (admittedly biased) opinions on things. Came as a bit of a surprise when one of my peers wrote "I don't think he knows this, but I consider him to be my mentor" on my 360 review. I definitely don't need recognition for anything, I'm always going to try to help people, but it was an important lesson for me. That realization has helped me understand the things I'm doing are influencing people -- both good and bad -- and has set me in a direction of identifying and eliminating my negative influences.
lojack··on What It’s Like to Be a Diagnosed Narcissist
I'm married to someone who has a narcissistic parent. One of the big problems for children is they end up entrapped. They can try to cut them out of their lives completely, but there's immense social pressure to not do that. The result tends to be that the narcissist plays the victim and manipulates situations to turn entire families against them. This results in immense social pressure to keep them in their life. Often narcissists will pick favorites too, so its hard for one child to believe their parent is a narcissist when they're showered with gifts and superficial things to win affection.

The only helpful advise given to my wife was that she needs to put actual physical distance between herself and her mom. To move far enough away so she could limit in person interactions to a couple times a year.

lojack··on We can confirm that there was a successful 51% attack on Ethereum Classic
While I don't necessarily disagree with you on that, and I do think a lot of the hype comes from speculation, its worth noting that many ubiquitous technologies we take for granted started as a narrow niche.
lojack··on We can confirm that there was a successful 51% attack on Ethereum Classic
> if you had a computer and Internet

Thats a lot of hand waving for something that wasn't trivial at all in the 60s and 70s.

lojack··on We can confirm that there was a successful 51% attack on Ethereum Classic
> A key difference is most of the new techs like Internet, email, Paypal, and so on improved on what people already had in a way that delivered obvious value.

I'd argue that for most people the value was only obvious afterwards.

To put email in perspective, early adopters had to choose between what they already knew and all the hurdles involved in connecting to the internet and using the new technology. There was also a good chance the people they were trying to communicate with didn't even have email. Outside of a few niche areas, email provided no obvious value to the vast majority of people for decades.

lojack··on Ask HN: Going from Developer to Manager. What should I know or learn?
Knowing when to code and what types of work are acceptable to do is extremely important. My transition to management wasn't immediate, there was a 4 month period where I was taking on more responsibilities as a manager. Initially contributing to projects was easy, but as I took on more responsibilities it became more and more difficult. At a certain point during the transition there was a pull request that I got 80% of the way through and then just sat there incomplete because I was too busy. Ended up handing this work over to one of the developers, and treating it as a sign that I was no longer a developer.

I still do some work from time to time, but I make sure its work I'm doing for my own personal reasons and no other work depends on that being completed. I also keep my technical skills sharp by pairing with team members, directing them on technical decisions, and doing code reviews. You've got to be careful with code reviews because they can come off as micromanagement to some people. Sometimes developers will specifically request a code review from me, and I'll take those. Sometimes I'll chime in if a decision needs to be made. Otherwise I try to only code review if I see something glaring that needs to change.

lojack··on “In 2018 the blockchain/decentralization story fell apart”
> Cryptocurrencies is about divorcing money and state.

Is it though? I used to think that, but over the past couple years I've seen plenty of politics around governance of the future of cryptocurrency. Seems like everyone tried divorcing the two and ended up just creating a new state.

lojack··on Ask HN: How do you fix engineering culture?
While I don’t think you should fire someone just to set an example, the scarcity of developers is precisely why you should fire those who are negatively impacting the teams and are unwilling to change.
lojack··on I wrote a free book about TDD and clean architecture in Python
I completely disagree with you. In practice you probably don't need to be that strict about TDD, but if you're being introduced to it with no TDD experience at all then you should absolutely be doing this.

Dogmatic TDD is the best way to practice and learn TDD. If you don't do this then you _will_ inevitably learn bad habits. Once you learn how to TDD like this you will begin to understand when you don't need to be dogmatic, but that only comes with experience.

lojack··on What I learned from reading a thousand emergency room bills
> Hospitals are required to treat the uninsured

This is actually only a half truth. Emergency rooms are required to treat patients who need emergency care. They don't need to fix all ailments. If you have cancer they can turn you away, but if your organs are failing as the result of cancer they have to treat you. If you need a heart surgery they can turn you away, but if you're having a heart attack they need to treat you. For the most part, treatment is pretty much just making sure you're stable and can leave the hospital without immediately dying. This only applies to emergency rooms as well. Where you go to get surgeries is usually not the same place you go to treat an emergency condition. It might be affiliated with the same hospital, and might be attached to the emergency room, but it isn't itself an emergency room.

lojack··on LiveAgent: Over $250K monthly recurring revenue with a spin-off project
It doesn't explicitly forbid this, which is where the grey area tends to come into place. The official policy is to consider:

> The extent to which the intern’s work complements, rather than displaces, the work of paid employees while providing significant educational benefits to the intern.

The argument would be made that since the company is charging for work from unpaid interns to be fulfilled only by unpaid interns, it would be displacing the work of paid employees as opposed to complementing them. Of course, there's a lot more to it than just that going into the litmus test.

lojack··on LiveAgent: Over $250K monthly recurring revenue with a spin-off project
It wouldn't count as training unless there is some formal training program put on by the company. Additionally, the customers are paying money -- they're paying $49/mo to receive the work of an apprentice.

This sort of stuff happens all the time. Its surprisingly common for unpaid interns to operate in a grey area. Can't really say this company is doing anything illegal without actually knowing what the program looks like for the apprentices. Every company I've worked at has decided its better to just pay them something, even if just minimum wage, to avoid risk of lawsuit. I also just think thats the right thing to do.

← PreviousPage 3 of 23Next →