HN user

jinfiesto

1,177 karma

http://www.hackernewsers.com/users/jinfiesto.html

Posts11
Comments224
View on HN

Was about to type the same thing, am also pianist. Using small muscles to do repetitive things is exactly how you get RSI. Don't do stuff with small muscles that you can do with large ones.

Unfortunately, even in the piano community, this knowledge is not that widespread. Really common to see repetitive motion injuries from very finger heavy technique.

You shouldn't swallow errors like that in FP either. You can trap the error in an effect type and throw it at the top level of your app when your effect type gets run after all of the code that processes that error value has a chance to recover. See something like Zio for an example, though you can do similar things without Zio.

It’s definitely hard to explain an idea like SVM, it’s applications, and how it works/what it does without a background in some linear algebra.

I don't actually think this is the case. The basic idea is that you can represent data as points in n-dimensional space and draw decision boundaries in that space. I think most people should at least be able to understand this geometrically for n=2/3 and then accept that it possibly extrapolates to n > 3.

I agree that in a vacuum, zero sum games aren't necessarily a bad thing. However, in our hypothetical economy, the actors obviously aren't at parity for their level of skill at playing the game. In a zero-sum economy, consolidation is inevitable. At least in the presence of growth, the avoidance of consolidation is a possibility.

Suppose every year Farmer Joe has to borrow money to buy seeds and pay workers to plant, grow and harvest the crops. Then after harvest he sells the crops and uses the money to pay back the loan. Every year it's the same, every year he starts and ends the year with the same amount of money, there is no economic growth, but the lender is still earning interest on the loan every year.

Meanwhile the lender is your 401K, so it makes money over time which you then spend down in your retirement and die with the same amount of money in real terms as your parents did, and so on indefinitely.

I feel like you're making the assumption that the agents in this system don't make an attempt to consolidate (and obviously if and when they do, they will have varying levels of skill at doing so.)

Completely agree with the last paragraph. The economy is tilted way too far towards incentivizing value extraction instead of incentivizing value creation.

Don't know that I agree with some of the previous stuff though. Even if we assume a steady state population, if the economy doesn't grow every year, we're playing a zero or negative sum game literally by definition.

RE your second paragraph, I both agree and disagree. As far as I can see (at least the US system) is predicated on ~4-7% economic growth being the way that people systematically grow relatively small savings into a large nest egg for retirement (not that this appears to be working particularly well, see your comments on pie stealing.) If we assumed a steady state for the population and economy, I don't see how people working for average salaries can set enough aside for retirement (without pushing themselves to a pretty low standard of living) without the benefit of ~4-7% compounding.

I have a developer's salary, so I could probably put away a couple million cash before my retirement even without the benefit of compound interest paid by economic growth. That's not the norm, or even the average though. Participating in society/the economy has to be an attractive enough proposition to incentivize people to do it, or bad social problems start popping up. In a steady state system, I don't see how we can make an offer more attractive than "Enjoy your subsistence lifestyle up to retirement, so you can have barely enough to have a subsistence level lifestyle in retirement."

I used to think this, but I've come around somewhat. The economy as a basic premise is expected to grow at least 3% a year or bad stuff starts happening. Obviously no kind of exponential growth is sustainable, even at a low rate. The best minds are getting sucked into this at least partly because the work is necessary to keep the economic wheels spinning. If we give up on having an average % of yearly growth, we're committing to living in an economy that's a zero or negative sum game.

So yes, we are stagnating scientifically, but it's not necessarily for no reason. The longer we keep running the economy as is, the more smart people are going to have to be allocated to figuring out how to keep up with the exponential growth our system demands. Unfortunately, no one seems to have cracked steady-state economics, so it looks like we'll be doing this for the foreseeable future...

Additionally, I don't know how we're supposed to keep up with this absurd need for exponential growth without leaning hard on technology (at least if we presume we don't want to wreck the planet more.) I feel like big tech is actually doing something important with regard to growing the economy disproportionately with the physical resources they consume.

You can be nouns first and still be anti-OOP. I think the objection anti-OOP people have with OOP is the business of folding your verbs up with your nouns, not being "noun oriented."

I don't know. I've been slinging Haskell on the side for the better part of a decade and do most of my day to day in RoR (trying to start moving clients over to Elixir/Phoenix.)

Haskell is an amazing language. I would totally buy that Haskell teams probably win in the medium to long-term as the wins you get in terms of support/maintenance/extensibility are pretty obvious.

However, anecdotally, Haskell forces me (and I imagine other programmers) to invest a lot more time up-front into getting your design in order. Haskell punishes an "oh I'll just hack that out" attitude pretty badly. Which, as I said above I would completely believe leads to wins in the medium to long-term. If I need to bang out an MVP over the weekend, I'm probably not choosing Haskell unless it's well-trodden Haskell territory.

Additionally, while the language itself is amazing, the ecosystem has issues (enumerated in the article.) Tooling sucks, there aren't enough examples of people doing normal things, there are frequently not libraries for basic things, obviously integrations with popular services are lacking, and the list goes on.

When Haskell has a decently mature and actively developed web framework that has reasonable docs, examples, and a not pathetic ecosystem (by the standard of modern web frameworks) I'll happily jump into using Haskell in production. Unfortunately, these aren't things enough of the community seems interested in to have significant movement on.

Servant looks very interesting with regards to what I'm looking for, but I'd be lying if I said I understood the types.

Was going to say exactly this. Major common misunderstanding about even Haskell. Mutable state has to eventually be a part of basically every program that does something useful. The Haskell philosophy is more about having an explicit and predictable boundary between the pure and effectful parts of your code/system.

Though you'd be surprised at how much you can do while forgoing mutable state entirely.

Skill-wise, absolutely. Demand-wise, absolutely not. I'm a freelance developer now, but before I was a senior engineer at an international software company. I've considered several times pivoting to productized Wordpress consulting because of how easy it is and relatively scalable vs other kinds of software development. The level of demand for basic Wordpress setup/configuration is really pretty astounding.

I didn't mean to say that SPAs were easier at all. They're not. I think they're under most circumstances much harder than traditional webapps. That being said, my experience is that users and in my case clients are starting to expect SPA features and it's harder to try and coax extensive SPA functionality out of a traditional web app than it is to just write a SPA.

It's been probably 2 years since I've seen a front-end dev listing that doesn't list experience with a SPA framework as mandatory. I'm not going to question that hybrid and traditional apps exist in the wild. I maintain some myself. That being said, I think it's pretty clear that at the very least the world is moving on. We are asking for more out of the web than what it was designed for, and it's difficult to meet the expectations of modern users without modern tooling.

By way of example, I do a lot of freelancing and have quite a lot of clients that I think would be better served by a traditional web app (much faster to develop, though not nearly as rich interactions dollar for dollar. Also a lower infra bill generally.) Many of them refuse though because they've been conditioned to expect the kinds of features that SPA's provide.

I write a lot of business automation sorts of apps for SMBs. Something I see requested a lot is wizard style workflows (on a web app.) This is trivial in a SPA and a major annoyance at best in the context of a traditional app framework. I totally agree that the world might not have moved on yet, but I think it's pretty clear which way the wind is blowing. Users are expecting rich SPA interactions as the new normal.

Nuclear is a political non-starter. No one wants to live near a nuclear power plant, and people tend to fight tooth and nail to fight the placement of nuclear power anywhere near them. The result of this is that nuclear power plants get foisted onto communities that don't have the political clout to fight them, or get thrown where there isn't anyone to fight. What ends up happening is that power plants get placed by politics instead of by science and engineering.

Further, it appears (at least to me) that proponents of nuclear underestimate the degree to which we (as a species) underpredict the likelihood of catastrophic events. In general, we're pretty bad at assessing the risk of so-called "black swans," but when the downside is so high, I understand why people are skeptical.

I personally am pro-nuclear, for many of the reasons described in the article, though I don't think the case is as clear cut as most nuclear proponents. On a rational level, I can understand that the likelihood of disaster is vanishingly small. I still don't want to live anywhere close to a nuclear power plant.

You don't want to participate in such a market even if it exists. Your wife is a human being and a professional, not a faucet. Participating in an undifferentiated labor market commodifies her and turns her into the latter rather than the former.

In those types of market places, the primary way for participants to differentiate themselves is price. It's not like you can exercise a lot of control over how any given platform is going to let you market. A bunch of people competing on price without being able to effectively differentiate in any other way is going to have predictable and unpleasant results.

So yeah, doing sales work sucks. But it doesn't suck as bad as the alternatives.

If you/your wife go down the road of trying to source hourly contracts from such markets, you're setting her up for a working situation that's almost strictly shittier than working a "real job." It's basically impossible to rack up 40 billable hours a week on a consistent basis. 25-30 is much more realistic. If she's charging 50/hr, that'll work out to about $58,000 gross a year assuming 75% utilization and that none of her clients ever flake out. Nevermind that the work is more precarious than a "real job", doesn't have insurance or other benefits, and you get slammed with self employment taxes. Also, you/she don't even get to count on a paycheck at any particular interval. If you provide net 30 (I don't recommend, but it's fairly standard,) you have to have enough of a financial buffer to deal with clients cutting you all of your invoices at once instead of as you bill them. Enjoy praying for the mailman to come before the bank closes so you can pay rent.

Finally, I assume your wife didn't spend 6-10 years of her life grinding out a PhD so she can make 58k a year in the most precarious possible way. Get off of this freelancer mentality, start a business, deliver real value, and get her the income and respect she deserves. If you/she bill yourself out like a commodity, people and businesses are going to treat you like one.

There's no magic here. I too am an engineer, and find sales work yucky. If you want to make more than 5$ an hour on upwork and you're not about working a "real job" sales work is going to be an unfortunate fact of life.

Given that a contract is probably worth 50k+ to your wife, traditional sales approaches are probably a good fit. Unless she wants to do data-set building, I would assume that her target businesses are sophisticated enough to be keeping data. So start there, make a list of businesses that fit the profile, find contacts (put them in a spreadsheet) and start calling or emailing. No magic, just a grind and a lot of rejection.

In terms of a longer-term strategy, she might pursue some sort of content strategy and start funnelling traffic to her website that way. Some % of that will convert to leads and some % of those will convert to clients. Once you get that pipeline set up, you can spend infinite time optimizing whatever parts of that pipeline. I assume though, that in the short-term, she needs work now and not x months from now. "Traditional sales" are likely a better fit in that case.

She might also consider joining a referral network like BNI if there's a local chapter(s) that look like there are enough members that fit your target profile.

And as the other commenter mentioned, your first port of call should be friends and family. Don't harangue them for a sale, just let them know your shingle is out. Presumably some % of them want you to succeed and you'll probably get a lead or two kicked your way in fairly short order.

I don't know what country you're in, but if it's the US, my advice would be to just start a company, throw up a decent looking website and start pounding the pavement. Most of the freelance sites encourage commodified race to the bottom behavior on your labor. Also, 50-100 is too low if you're in the US. If she wants to hit parity with what she would make in the industry working a "real job", she needs to charge closer to 200. (Assuming a target wage of ~150k)

Don't charge hourly, charge weekly or daily (if a week is too large of a unit). It will save you a lot of headaches and free you/her from time tracking at an annoyingly granular level. It also discourages clients from micromanaging your billing (which they definitely will do when you essentially turn in time sheets.)

When she's selling, the goal is to anchor your estimated price to the value of the project (you have to understand the client's business well enough to do this.) The idea is to frame your cost as a fraction of the total value. The rest of the sale is demonstrating you're low risk and that you can deliver. Typically you do this through social proof, or through a small starter project that demonstrates ROI.

Poker is much harder now and it's hard to find tables that will happily pay off nitty play ad infinitum. I'd make a list of concepts you should learn about, but I think it'll be easier for me to make a list of books you should read:

The Mathematics of Poker (Chen and Ankenman)

Applications of No-Limit Poker (Janda)

Expert Heads up No-Limit Hold 'em (Tipton, this one is nice as the author is a Computer Scientist and also has a course on building a solver.)

Professional No Limit-Hold 'em (Flynn, Miller, Mehta)

Finally, you should get a membership to something like Upswing or RIO to help synthesize the information into a useful framework for play. Also, you'll want access to something like PIO or Pokersnowie for analysis of your hands.

I stopped teaching piano for much the same reason. The level of focus just isn't there any more (obviously there are exceptions.) Not that I blame the students, If I'd grown up in this day and age, I certainly would rather be gaming or jacked into social media than practicing.

My advice would be not to worry about this too much at this phase. A lot of "best practice" is institutional and has to do with how the stack/org/community is structured. There's not a lot that's "best practice" in a vacuum. In terms of stuff that would be considered best practice in a vacuum, you can maybe look at some of the classic stuff like Code Complete, or any of the TDD or pattern books.

Other people have mentioned that "best practices" can be a double edged sword. Software engineering is very varied and it's hard to abstract out "best practices" that apply in all situations. Don't get blinded by "principles" and evaluate each technical situation on its own merits and weigh the tradeoffs of the solutions you can think of before proceeding. There are way too many variables for you to have a playbook that reads "in x situation do y" most of the time.

With regard to best practice being institutional, you'll formulate a lot of it on your own as the org grows (if it does.) For example, having code reviews would widely be considered a best practice across the industry, but in your situation it is obviously not reasonable. Who would review your code? You? Lots of institutions have style guides for software engineers (I would consider this a best practice) to keep software easily readable to as many team members as possible. In your situation, what engineers are you trying to keep on the same page? None? In your case, this is then not a useful best practice.

There are community best practices that sometimes spring up around quirks of the language and its tooling. I would say the best way to deal with the first is to use a lint. That will teach you a lot. The second is something you usually have to get bitten by to find out.

Finally, read a lot of code in your language/framework of choice (critically of course.) You'll learn a lot of tricks, and will also see a lot of traps to avoid by doing this. If you're in Node, reading the source to Express is probably a good place to start and is obviously applicable to your work (and can only pay dividends in that respect.)

Counterpoint, being exposed to other people's ideas within your discipline of choice is important. You learn a lot faster when you're plugged into a network of brains that are all generally oriented in the same direction. College isn't the only place to find a good network of brains to plug into for your field, but it is convenient, and the barrier to entry (rapidly less so) is relatively low.

Maybe I'm just old and crusty, but I think motivation and passion are overrated. Just put your butt in the chair and do it. Passion and motivation are important, but no matter how passionate you are, you're eventually going to have lows that you're not going to get past unless you just slog through. That takes a certain amount of discipline.

With regard to number 1, I've found that some places that do grocery delivery in house (like Raley's,) apparently keep separate stock for delivery (discovered by asking) and it's often in better shape than what's on the floor. I think this is because there's some sort of 100% satisfaction policy to incentivize adoption. This has borne out in my practical experience as I've almost always been more than pleased with the produce delivered by in-house grocery delivery services. The only thing I don't love is that the online interface isn't always synced accurately with what's in stock, so often I get calls having to hash out substitutions before they can deliver.

WRT alcohol, I personally usually shop for that stuff at a specialty store like Ben's or Total Wine. I realize other people have different shopping habits, but I would have to make a special trip for groceries separate from my alcohol trip, and I appreciate that delivery helps me save a trip.

I like Wesley Yang's writing quite a lot. As a 2nd generation Asian American (Korean like Yang himself,) I understand and have experienced quite a lot of his pain. However, I think he and others somewhat misattributes the origin of his/our pain. I'm more inclined to think that a lot of this pain comes from how we are raised and an impedance mismatch between the "American dream" as our parents understood it and the dream as it is (to be fair, he acknowledges this is a possibility.)

For example, I think the stereotype of Asian men being effeminate/sexless robots is largely a byproduct of our childhood upbringing. In my childhood (and in the childhoods of most of the 2nd generation Asians I've met) dating was strictly verboten and generally seen as a waste of time that could have been spent studying. Even in young adulthood, dating is frowned upon by most 1st generation Asian immigrants unless you're explicitly looking to get hitched. Obviously, when you raise an entire generation of people this way, a large % of them are going to grow up to be sexually awkward and therefore unsuccessful in the sexual market.

I'm aware of the data drawn from online services that show that Asian males are the target of some unfair prejudice. I'd respond to this by saying that obviously online dating brings out the "worst" in people. Given the sheer number of available "mates", I'm not surprised people lean on racial stereotypes to help filter their inputs on such a platform. And if I'm being honest, yeah, a large number of us Asian males are pretty sexually awkward. If we're not, it's almost certainly in spite of our upbringing.

I'm aware that this is anecdata, but after some practice (really just putting myself out there enough,) I haven't had any issues dating in an in-person format. I'm actually inclined to believe most people are willing to give anyone a fair shake (presuming some base level of sexual attraction) after getting to know them a bit, though this assumes that you're comfortable enough with the various dating rituals to not scare anyone off (which I suppose may be a tall order if you were raised in a way that prohibited the necessary practice.)

With regard to being passed over for workplace promotions, Asians are raised to be deferential to authority. The cultural norm is basically for our parents to be regarded as dictators within the home (for better or worse.) Moving up the corporate ladder isn't just the result of "hard work" per say. It takes a certain amount of arrogance and disregard for your "superiors" and peers to engage in the kind of self-promotion required to move up the ladder. Yet again, if we're successful in this domain, it's in spite of our upbringing and not because of it.

If you've ever read Venkatesh Rao's essays about the office according to the office, you'll be acquainted with the notion of power talk. Asian Americans are not typically raised to understand this particular game and there's little room to practice this growing up when your parent's rule within the home is as absolute as it is. As Yang puts it, this requires a certain level of "calibrated insouciance" Asian Americans just don't grow up learning. Once again, if we learn to play this game successfully, it's in spite of our upbringing.

From an Asian perspective, White children appear shockingly disrespectful to their parents. Now being a bit older, I've come to believe that this is up to a certain point a selective child rearing strategy. Asian children are treated as if they have no table stakes 100% of the time with regard to negotiating with their parents (there's basically no negotiation ever.) While this does lead to a certain "harmony" within the home, I don't think it teaches people the skills they need to be fiercely self-advocating when they grow into adults. The American economic system doesn't reward meekness in anyway (I can't be strong enough on this point.) So to me, it seems counter productive to be raising meek children if the desire is for them to become competitive at the highest levels. Our identities are honed on conflict, and it's also through conflict that we develop a set of values and the ability to make value judgments about when it's when in our interests to fight or retreat. Our 1st generation parents aversion to conflict within the home I think has raised us to be overly meek in the outside world.

With regard to the lack of Asian CEOs despite disproportionately high Asian representation at elite universities, Asian Americans are raised to not be risk takers. There's honestly a certain amount of cultural distaste for risk-taking and there's huge social stigma attached to failure in this domain. Once again, if you observe successful Asian Americans in this domain, it's because they've overcome their upbringing and learned to become calculated risk takers.

Yang also mentions this notion of "pumping the iron of math." Even in the educational domain, I've noticed a lot of Asians prefer to substitute repetition and rote learning for time spent actually thinking about and understanding what they're doing at a deeper level. This kind of practice is useful to a point, but unfortunately puts a ceiling on how far you can progress. This is something that was particularly painful to me in particular. I spent a lot of time laboring under the delusion that there was a "right way" to do most everything, if only I could find it and practice it enough. Beyond a certain level of prowess (surprisingly early sometimes), you find yourself "trailblazing" for lack of a better word, and this sort of mentality can only get in your way.

I know this is an uncomfortable discussion because it raises the specter of "cultural superiority." To be clear, I'm not arguing here that Asian American culture is inferior in any way, only that in some respects it might be maladaptive to the system we find ourselves in. In a lot of ways, I think our parents have a major blindspot in that they want us to go farther than they did, using the same maps and tools that they did.

I think what our parents were blind to was the fact that there are a lot of "hidden" games that you need to learn how to play to be successful in this society, and that learning these games isn't something that's surmountable by hard work alone. As much as we like to pretend otherwise, societies are a lot more than just their laws and institutions. White folks in this country have had their hands on the levers of power for a while (for various reasons,) and as a consequence, their children are able to learn the games they need to know to be successful in this society from their parents and grandparents. Most of us are still only in our second or third generations. We're obviously comparatively on the back foot in terms of what our parents are able to give us in terms of the cultural knowledge necessary for success in this particular iteration of our society.

Again, to be clear, I'm not arguing that this situation is "moral," just that in my opinion, it's pointless to be bitter about it. If we want to go farther than our parents, I think it's clear we won't be able to do it using all of the tools they tried to give us.

Obviously, there's a larger discussion here about whether or not this situation is moral in the first place. I'm inclined to think not, but I'm also of the mind that it's not much use to be bitter about the fact. I think we'll change the situation faster if we learn how to play the games we don't understand and are able to get our hands on the levers that move the media, politics and business. In many ways, I think as a cultural group we should be looking to the Jews as an example. Despite being so aggressively pogromed over the centuries and despite there being so relatively few of them, they've managed to become dramatically overrepresented at the top of basically every major domain of human endeavor.

To finish, I don't think there's anything wrong with our faces as Yang conjectures. I think we can learn the games we don't know how to play yet and hopefully by doing so make a world that's a little kinder to our children and grandchildren (not that the world is particularly unkind to us in my opinion.) It'll just require some tweaking of our cultural values and maybe rejecting some of the tools and maps of the world we were passed from our parents.

Solar foods 8 years ago

The real solution to carbon is immediate reduction of fossil fuel usage with a very short-term goal of nearly absolute cessation of greenhouse gas generation.

The problem is that while this is accurate given the current state of science/technology, it's a complete political non-starter. There's always incentive for someone to be a bad actor, moreso if everyone else is behaving themselves. Unfortunately, very few nations are going to be willing to commit to massive greenhouse gas reduction while any other nation is profiting from it.

I think the comment from Altman (we will figure out fusion because we have to) has the subtext: 'or we're all dead.' It seems unlikely that killing fossil fuels and other greenhouse gas polluters will get killed by political fiat. That leaves killing them economically, which means creating a more efficient energy source.

I'd never claim it's not a masterpiece. Both it and the 3rd Liebestraume are in my repertoire. But since it's more in line with the Romantic idiom, Clair De Lune and Suite Bergamasque in general gets compared against the masterpieces of Chopin/Liszt/Brahms/Schumann, and against that bar I'm not sure it necessarily measures up. Debussy was obviously a/the pioneer of impressionism, and in that idiom, his work is unmatched. I haven't seen a serious argument that he could out-compose any of the composers that are the pillars of romanticism in that idiom though, and since Clair de Lune is in that style, that's what it gets measured against.

Speaking as someone who studied music academically for a while, I imagine they left it out because it's pretty unremarkable despite it's popularity. Debussy was actually reticent to publish Suite Bergamasque (which contains Clair de Lune) as it was from is "immature period" (his words not mine.) The suite was published 15 years after its initial composition.

In terms of its importance to the literature as a whole, despite being beautiful music (I'm really not trying to discount that the music is beautiful) Suite Bergamasque still represents an extension of the Romantic style. It's not nearly as groundbreaking as the Preludes/Images/Estampes which are a serious departure from all of the music that came before. Art was never the same after Picasso tore down the establishment. Ditto music and Debussy.