HNHacker News
TopNewBestAskShowJobs

mightybyte

3,114 karma · joined October 20, 2007

[ my public key: https://keybase.io/mightybyte; my proof: https://keybase.io/mightybyte/sigs/W3DaSte19QuydDeQO-lgB6CMP8yGPfwbdK6Jx-9k34M ]
submissionscomments
mightybyte··on I Really Blew It (2020)
Well said. The book Extreme Ownership has a slightly different take of what I think is basically the same idea. It opened my eyes to a new way of thinking about people above you in the organizational hierarchy and advocated taking ownership up the chain as well as down. Instead of asking yourself "why isn't my boss listening to me?", you should ask yourself how you are failing to communicate to your boss. Obviously things aren't entirely your fault all the time, but changing your ownership mentality is a tremendously empowering idea--especially when it goes in the opposite direction of traditionally perceived power vectors.
mightybyte··on Why blockchain is not yet working (2018)
Depends on what area. Depending on where you're focusing in the blockchain industry any of the following can be important: cryptography, large scale distributed systems, economics / game theory and designing incentive systems, programming language design, pure functional programming (because smart contracts can't have side effects), frontend development, UI/UX design, and on and on.

Ultimately dapp (I hate that term but have long since grudgingly accepted that it's become ubiquitous in the industry) development is just normal web app development except that you might also be making AJAX requests to a blockachin and possibly also writing your own smart contracts. Writing your own smart contracts is a somewhat distinct skillset, but the rest of it is just normal web app development.

mightybyte··on FIDO2 security key company releases hardware that's open source and uses Rust
I think that would be the public key. You can roughly think of it as the hardware key has a private key embedded in it in a way that it (supposedly) can't be gotten off. That private key has a corresponding public key. You can think of the private key as the password and the public key as the username. So I think the public key is the "key ID" you're looking for.
mightybyte··on Haskell: The Bad Parts, part 2 (2020)
Starbucks themselves didn't use Haskell. They used a system built by another company that used Haskell.
mightybyte··on Haskell: The Bad Parts, part 2 (2020)
Starbucks uses a system with a Haskell frontend and backend for generating their personalized offers. I have it on good authority that it's probably been responsible for more than a billion dollars in revenue lift for Starbucks.
mightybyte··on Heavy social media use associated with lower mental health in adolescents
Until six months ago, I consumed very little mainstream media or social media. I started following the news leading up to the presidential election because it seemed like this one would be more consequential than most. I can definitely say that I've been meaningfully less happy / more anxious / etc as a result. I definitely intend to scale back my news / media consumption to the level it was before in the near future.
mightybyte··on Kids find a security flaw in Linux Mint by mashing keys
To go in another off-topic direction...of course I mainly did it because I wanted to. I had a view about how to teach/learn typing that the popular typing programs then didn't seem to have. When you're learning typing for the first time, IMO it's fundamentally a kinesthetic endeavor. It's more important to focus on burning the motor pattern of moving your finger from the home row to the key you're typing and back to the home row than remembering where the letters are placed on the keyboard. (Of course you have to also remember where the letters are, but that will happen automatically in the process of doing the former.) So I wanted to take this into account and have my students type things like this:

fff ggg fgf gfg ffgg fggf gffg

jjj hhh jhj hjh jjhh jhhj hjjh

This forces the student to exercise that movement pattern in a way that just telling them to put their fingers on the home row and type English words does not.

So the above sentence you quoted was a an over-simplification for story telling purposes and not the whole story. :)

mightybyte··on Kids find a security flaw in Linux Mint by mashing keys
My memory is getting a little fuzzy. I think the machines we were using were running Windows 98 or perhaps Windows 95. But I didn't want people to be able to do other things on the computers that day as the whole point of the endeavor was to emphasize typing skill, so I looked for some kind of way to make it impossible to do ALT-TAB to switch to a different program. I was thinking I booted it up in DOS only but I also might have run it full screen in Windows and just hoped nobody knew about ALT-TAB. :P
mightybyte··on Kids find a security flaw in Linux Mint by mashing keys
Years ago I taught a high school typing class in a K-12 school. The school didn't have the funds to get a commercial typing program so I wrote my own typing program. It evolved over time with features to help me track the students' progress etc. One day we had a school open house where all the parents could come to school. We had a bunch of different activities set up in different classrooms and I ended up getting assigned to the 3rd grade classroom to set up my typing program so anyone coming through could test their typing speed. It was a DOS program and I didn't want people using anything other than my typing program, so I modified it so you couldn't quit the typing program. Over the course of the day the 3rd graders were hanging out in their homeroom not really doing anything productive. Of course the computer was a novel attraction and they were just smashing keys and exploring my program's UI. Eventually at one point I noticed that they had somehow crashed my program with a segfault in what had otherwise become a pretty stable piece of software. To this day I have absolutely no idea what the bug was.
mightybyte··on The Insurrection Will Be Live Streamed: Notes Toward a Theory of Digitization
I recently discovered Axios and have been very impressed with them so far. They are the closest I've seen to the type of news coverage I'm looking for. You can see a summary of their approach here: https://www.axios.com/about/ They stick to the facts and refrain from opinion. For example:

> 3. Every item will be written or produced to inform, analyze and explain. Axios will never be a platform for incitement or argument. We will never have an opinion section.

mightybyte··on Haskell is our first choice for building production software systems
I don't think that it's wise to try to optimize for some kind of speculative long-term success at the expense of higher early-stage costs that reduce your odds of getting there. This is similar to companies that choose their initial technology with scalability in mind before they're even remotely close to needing to scale. I've actually done this only to discover that scalability has a very definite cost and when you're small it has an outsized impact on your burn rate. If you have success, you're going to figure out a way to make the changes you need. Case in point: Facebook. They successfully grew a PHP codebase into one of the most popular apps in the world. It definitely cost a lot more money for them to make PHP work, but when they got to that point they were a lot less cost-sensitive.

Planning for that far down the road is the least of your worries. And any plans you make along those lines are not likely to be very accurate anyway. You're much better off optimizing for the near to mid term. Based on the hosting costs described by the OP they are already reaping a tangible value here.

mightybyte··on Haskell is our first choice for building production software systems
You're off by probably an order of magnitude. You can absolutely scale this organization to 100+ engineers. I've worked at a company with ~30 Haskell developers and I was involved in hiring most of them without lowering our hiring bar. If we really needed more it would have been quite easy to lower the bar a little and increase the numbers significantly. Here's another example of a company that has a large Haskell team:

https://iohk.io/en/team/#team=development

Now if you needed to hire 1000 developers, then you'd have more of a problem, and perhaps Haskell wouldn't be the right approach. But in my experience, Haskell engineers get a multiplier effect over the average non-Haskell engineer because the code is more concise and the average engineer skill is higher. I don't know what the multiplier is, but it's definitely non-zero and positive. This not only pays the obvious direct benefits, but also reduces the communication overhead of your team and the number of managers you need to hire.

mightybyte··on U.S. Capitol Locked Down Amid Escalating Protests
More than that...I think personalized media recommendations are a significant contributing factor here. I think the prevalence of this approach to curation is a big part of why we see so many echo chambers. The tech industry needs to take a good hard look at itself and the kind of patterns its business incentivizes. Of course, ultimately one could make the argument that it's just human nature. It's not the tech companies, they're just trying to make a profit. That's when it might make sense for governments to step in with regulations--to push things n a positive direction where the free market can't. It seems to me that we're still figuring out as a species how to handle this information deluge we've started to experience in the last 20-30 years. Like any powerful tool, it can be used for good as well as for harm.
mightybyte··on 27th International Obfuscated C Code Contest winners published
Here's a nice talk that goes into this dichotomy a bit.

https://www.youtube.com/watch?v=GqmsQeSzMdw

mightybyte··on Why I Love Tailwind
If that's the case, then I would say the CSS was poorly structured.
mightybyte··on Encryption Lava Lamps (2017)
Casino grade dice
mightybyte··on Why I Love Tailwind
In my experience it has a lot to do with the scale of the project. Beyond a certain size (lines of code, length of time, number of people, etc) semantic markup starts to pay off. But if you're just trying to put together a prototype as quickly as possible, these kinds of frameworks usually speed things up because you don't have to think about proper semantic organization. I've worked on multiple projects where something off-the-shelf like this was the way we started, then at some point as the team grew we re-organized the CSS to be semantically defined. Yes, there is some amount of waste, but this pattern tends to optimize for the things that you need to optimize for in the moment. No sense spending time to carefully design your semantic abstractions until you know the project is going to be a large enough scale to make it worthwhile.
mightybyte··on Billionaires Build
I would say that slavery absolutely fits into this broad generalized definition of leverage that I am using. Here is another example:

In the case of the founder, as I have mentioned, hiring someone gives them leverage. But conversely, a person taking a job with a large company gives the employee leverage. For instance, as a Google software engineer, you have the ability to command huge amounts of computing hardware that Google has at its disposal. Different roles may have varying degrees of ability to leverage the corporation's scale to their purposes but it's certainly a very real thing for many roles.

mightybyte··on Billionaires Build
Another interesting perspective...

The term "using leverage" is often used in a creditor / debtor relationship. But it's funny how the term works because in that setting "using leverage" is usually associated with the debtor being the exploited one in the relationship.

More generally, in a given exploitive relationship it's not always obvious who is exploiting who.

mightybyte··on Billionaires Build
I'm using a generalization of the mechanics definition of "leverage" (https://en.wikipedia.org/wiki/Lever). A mechanism by which a small input can result in a larger output.
mightybyte··on Billionaires Build
> In general, leveraging technology capabilities seems less exploitive than leveraging human/environmental resources.

I see what you're getting at here, but I don't know that I completely buy it. Case in point: privacy. I guess it depends on how one defines exploitive.

mightybyte··on Billionaires Build
I'm intentionally trying to separate the moral and the mechanical for the purpose of understanding--both understanding the structure of the way the world works and how we can make it better as well as understanding the arguments of those for whom it's ideological.

(See also the sibling comment to your by pdonis.)

mightybyte··on Billionaires Build
> the only way to become a billionaire is by exploiting people

Here's a slightly different take on this idea:

The only way to become a billionaire is to use leverage.

I think this is a much more defensible argument. You can't become a billionaire by yourself. You have to have some mechanism of leverage to magnify your impact. Hiring employees is a form of leverage. Using a computer is a form of leverage. Putting your software on a large number of cloud computers is yet an additional form of leverage. The question of whether one is exploiting their employees is a worthwhile question to ask, but it is a completely separate (and much more polarizing) question. I think that leverage is the core kernel of truth lurking within this question.

mightybyte··on Apple’s M1 silicon is all about platform control
As a counterpoint...I've been using Mac laptops for 10 or 11 years after having grown up staunchly anti-Apple and previously using Linux for some years. I will not be buying an M1. I was already about to ditch Mac after the escape key debacle, but they realized their mistake and lured me back this year. Well, no more. I'm not willing to support the vendor lock-in and privacy invasions with the recently discussed ocsp phoning home.

Sorry Apple, this is a bridge too far. I'm out.

mightybyte··on The Failed Promise of Web Components
> Here's what killed web components: lack of native databinding on the web.

I tend to agree with this broad idea. Although I don't think it's because it was left out or someone didn't do it. I think it's because it's REALLY HARD™. This is certainly the problem that React/Vue/etc are trying to solve. But I think web components never lived up to the promise because as an industry we simply haven't solved that problem yet. OOP possibly came as close as we've come. The various JS frontend frameworks have also been a decent attempt, but I just don't think it's good enough yet.

If I had to guess I'd say that FRP, functional programming's take on it, has the best chance at succeeding here. But I don't think it's quite there yet either. And even if it was, you still also have to confront the fact that the HTML/CSS split doesn't completely live up to the goal of the style being completely independent from the markup.

mightybyte··on How to Get Promoted
@alexryan's dead sibling comment...

I actually work at one of those companies. At the moment we're not hiring, although we may be in the future.

mightybyte··on How to Get Promoted
Well put. I completely agree. One thing I'd like to add though is that choosing to not play this game does not mean there's no path to large impact / success by conventional metrics. I came away from this article with the distinct feeling that it is focused on big corporate jobs. That certainly is where a large segment of workers are at, but it's not the only place you can be. In particular, I think that in the early stage startup world you don't get a lot of what the article is talking about. In early stage startups decisions made by rank-and-file employees can have very tangible and significant impact on the time scale of weeks to months, not quarters to years like this article seems focused on. Does this early stage startup world have its own set of issues? Of course. But there do exist good opportunities where culture is healthy and good work gets rewarded.

I really like this article's take on this general notion. http://www.samkyle.com/work-for-yourself/

mightybyte··on What Is a Minimally Good Life?
This seems like a pretty good list. I'm sure it's possible to debate the details, but it seems to hit the big points. What I think is interesting about it though is that aside from "enough income to not have any substantial worries about the future", none of these items can actually be provided by society / government. Government certainly can't provide a loving partner, fulfilling sexuality, good mental and physical health, or work/private life recognition. And as 2020 has seen with COVID, it also can't provide absence of existential worries due to cataclysms.
mightybyte··on VTM: A Text-Based Desktop Environment
Oh yeah. I'm going to date myself here, but I was just going to say this reminds me a lot of Borland Turbo C++ way back in the day. They had this thing called Turbo Vision for building text UIs. It seemed super cool back then.

https://en.wikipedia.org/wiki/Turbo_Vision

mightybyte··on C.I.A. Lacing (2014)
This. I've been tying my shoes this way for 15 or 20 years and they essentially never come untied unintended while still being able to be pulled open with just a single tug. The security of a double knot with the convenience of the standard knot.
← PreviousPage 6 of 23Next →