HNHacker News
TopNewBestAskShowJobs

kiawe_fire

1,063 karma · joined February 9, 2019

submissionscomments
kiawe_fire··on Ask HN: Inherited the worst code and tech team I have ever seen. How to fix it?
> It sounds like less about the refactor itself and more about the skills of the team doing the refactor. You certainly can't expect a refactor to go well if the team makes poor decisions to begin with.

This has been my biggest struggle with rewrites where I’m currently working. We have several large, messy old codebases that everyone agrees “needs a rewrite” to (1) correct for all the early assumptions in business needs that turned out wrong, (2) deal with old PHP code that is very prone to breakage with every major new PHP version released, and (3) add much needed architectural patterns specific to our needs.

I’ve seen rewrites of portions of the project work when they involve myself and one other mid-level dev who has a grasp on solid sw engineering practices, but when the rest of the (more senior) team get involved on the bigger “full rewrite”, they end up quickly making all the same mistakes that led to the previous project being the mess that it is.

Sure, it will be using fancy new PHP 8 features, and our Laravel framework will force some level of dependency injection, but the you start seeing giant God classes being injected over here, but duplicated code copy-pasted over there, all done by “senior” devs you feel you can’t question too strongly.

To that end, an open and collaborative culture in which you start the rewrite with some agreed upon principles, group code reviews and egos kept in check, are all necessary for this to work.

kiawe_fire··on 60-80% of Tweeters posting on Russia-Ukraine war are bots, 90% pro Ukraine
I think it warrants caution that measuring bot usage as a correlation to narrative truthiness might also be wrong?

Something like “I stand with Ukraine” has become such a ubiquitous feel good signal on social media among the masses, that I could see a good bot farm tweeting it out amongst a sea of other tweets, just to “keep up appearances”.

Kind of like tweeting a “condolences” tweet after a celebrity dies or something - a relatively timely, non-vulgar thing to lend credence to your bots.

But then I’m not sure I know how these bots are typically controlled, so I’m just speculating.

kiawe_fire··on 60-80% of Tweeters posting on Russia-Ukraine war are bots, 90% pro Ukraine
It’s not just Reddit, either. This same story has played out for me on Anime News Network’s forums, some gaming forums, etc.

Ultimately I just take my toys and go home - they don’t want me there, and it’s their legal right to say so.

But it results in a forum of views that appear to show unanimous consensus that {x} is good or {y} is bad, which is potentially dangerous for society at large and certainly bad for an open society of debate and knowledge sharing.

Even worse, I’ve seen instances where a blatantly bigoted, racist, or violent extreme view is allowed to stay (down voted to hell, of course) while my and others’ more nuanced or intelligent takes are scrubbed and banned.

I can only presume this is intentional with the effect of demonstrating that “only violent extremists are anti-{x} or pro-{y}, and you wouldn’t want to be associated with those people, now, would you?”

I only wish I had an example handy to share, because it’s been pretty blatant at times.

Ultimately the moral judgements associated with every political argument is getting ridiculous and (intentionally?) stifling debate while stirring unrest, and most of it feels artificial.

kiawe_fire··on ‘Return to the office’ rhetoric needs to end
Sorry for not being clear, but my post was more so addressing my anecdotal experience with small to medium sized companies, not big tech or FAANG type companies.

I can’t really comment on whether Oracle’s culture is more or less repressive than Apple or Amazon. I mean, we all probably know the reputation for each of the above companies, but given your findings on who’s remote friendly and who isn’t, it could be just as likely that those reputations are backwards today.

Regardless, to clarify, my post was very much based on my own anecdotal job hunting in my own state of Michigan. I was also trying to bring attention (albeit poorly) to the dichotomy of wfh vs office, and the missing (and still-being-defined) middle ground.

I’m sure there are exceptions, and as someone who is looking for where I can fit in and contribute in a post-pandemic world as a software engineer who enjoys working from home but also greatly values the work I was able to do in an in-person, collaborative environment, I would welcome anything that proves me wrong. :)

kiawe_fire··on ‘Return to the office’ rhetoric needs to end
It’s unfortunate, but there is a strong link between company culture and their remote work offerings.

At this point, companies that are “office first” tend to be of the poorly managed, tech-debt riddled, low trust variety, while remote first companies tend not to be, but also tend to have an actively hostile culture towards in-person work.

I believe there is a slowly growing cohort of people who do their best work when regular or semi-regular, in-person collaboration is involved. In time, I think well-managed organizations with proper tech practices will emerge that recognize this, and will attract the right people for it.

Until then, and for as long as each side in this straw man debate views the other as a mutually exclusive, almost existential threat, then this “rhetoric” from both sides most certainly won’t end and we will all continue to be subject to articles filled with lists of value judgements and personal projection on “the one true way everyone must work”.

kiawe_fire··on California approves bill to punish doctors who spread false information
Actually, I totally meant tenant in a metaphorical sense, in which the precepts of a teaching takes up metaphysical residence in the soul of the —- alright, fine. Yes, tenet is the word I was reaching for. Thank you. :)
kiawe_fire··on California approves bill to punish doctors who spread false information
And was, and still is, frequently mischaracterized by critics as “all the bacon you want”, failing to mention the core tenant of “healthy natural greens and unprocessed meats”.

I wonder if the people spreading what may have been deliberate misinformation about the diet would fair better under such a law, than the author of the diet information itself?

kiawe_fire··on The Big [Censored] Theory
And if a population doesn’t like it and/or wants access to the original, then the corrective action is less destructive, more equally available, and more quickly realized.

I.e. “stop subscribing to the censored service and back any company with the means and intent to stream the originals and everyone wins” as opposed to “vote and/or overthrow the dictatorship or die trying and possibly nobody wins”.

kiawe_fire··on A dad took photos of his toddler for a doctor – Google flagged him as a criminal
Moreover, there is evidence that Google (along with Twitter and Facebook) frequently take actions to suppress opposing views on behalf of, and in collusion with, one side of the US government, including removal of information from one side and amplification of misinformation from the other.

In some cases, it conforms more to classical fascism than many realize.

That said, in this particular case, I’m still not sure it applies.

When it comes to stopping the distribution of child abuse material, there’s no reason to believe that anyone’s acting in bad faith. We can certainly see where they have everything needed to do so (access to people’s personal data, ability to mobilize law enforcement, and a relationship with government that is amenable to suppressing criticism as “dangerous”).

But in this specific case and others like it, we actually see that law enforcement did their job - they did not overreact, they investigated as appropriate, and nobody was charged.

Google continuing to be a dick about it and holding someone’s account hostage isn’t exactly fascism yet, but it is a great demonstration to people how easily big tech can become weapons of fascism, and why it’s important to opt out of centralized big tech (while they still have the chance), to discourage public/private collusion, and reason to support efforts to keep their powers in check, the same as they would any government.

kiawe_fire··on Why aren't smart people happier?
This is something I’m struggling with at work.

If I take the initiative to build something that I think will be helpful, or fix something that’s broken in someone else’s project, then I suddenly “own” that thing.

Which is ok, until I get 20 things piled on me that I now “own”, and I can no longer keep up with them all.

Suddenly I’m the impediment to getting anything done, because everyone turns from “collaborative problem solvers” into “users of my thing”, and when any of the things need more things added to it, then my “things” are no longer just tools to make their jobs better.

They are now, instead, obstacles somehow keeping everyone from doing the things they were managing to do (less efficiently and less comfortably) before.

kiawe_fire··on What Tech Workers Don't Understand They've Lost by WFH
That sounds very one sided.

The compromise (as the poster to whom you replied mentioned) should be “as members of society, we should occasionally compromise our needs to help meet the needs of people who prefer a more social office atmosphere, perhaps once or twice a week”, should it not?

Why should one type of member of society always be inconvenienced so that the other side never is?

kiawe_fire··on What Tech Workers Don't Understand They've Lost by WFH
Not everyone has other social activities they enjoy.

Or the social activities they might enjoy, involve some skill prerequisite they don’t have, or time commitments they can’t keep.

Essentially, if someone was already a social person and had existing social groups for those hobbies that the office commute interfered with, then wfh was a gift.

But for those who enjoy their job, and enjoyed in-office collaboration, there is going to be a lot of effort and several prerequisites required to attempt to replace that outside the office.

kiawe_fire··on Ask HN: How do you deal with code frustration?
I will start off by saying that I have a messy legacy project that I work on and try to improve where I can, and I also would prefer to rewrite and start over. I haven't been fully successful at either approach yet myself, but I have made some progress, at least, so I can share some thoughts.

First, if they have "brought" you in and now expect you alone to fix things while they continue business as usual, that's a setup for failure all around. They need to "buy in" as much as you have, and everyone needs to establish some guidelines and expectations ahead of time.

Presumably, they have already bought in to the notion that things need to improve if you've been tasked with this at all, which is good (I don't always have this benefit). But it's not enough to bring somebody like yourself in, and then just continue business as usual.

So, first order of business - try to find a couple areas of the app that is a good combination of (1) relatively self-contained, (2) less of a moving target, and (3) able to provide visible gains when improved.

You might not be able to hit all 3 points, but find a good balance that gives a good bang for the buck.

For example, if one of your problems is data acquisition is too tightly coupled with view code, that might be a huge problem spread all over the place. So, find a subset of the problem -- something that gets used frequently (maybe, user login status? user permissions?) but is changed less frequently relative to other things.

Once you have a few suggestions, work with the team to agree upon ONE area. Take a little time to plan out how you want to improve it and why, and then propose your solution to the rest of the team.

With that done, get everyone to agree -- this one piece shouldn't be changed during your first "sprint" on this item without your involvement in guiding its direction.

I would suggest regularly updating the team on your progress and letting them in on any decisions you make along the way. The more they can be involved and help, the better.

The end goal is to end up with something that everyone has a little bit of ownership in, AND something with visible improvements such that the rest of the team will want to continue working with it "the right way" rather than piling on top "the old way".

Once done, try to find another feature and work it out the same way. In time, hopefully more developers will be more "sold" on newer patterns for development that you help establish, and will be more inclined to follow them when adding new code.

If this approach can't work for refactoring code, something similar can happen with a rewrite.

But there are two unfortunate problems that I continue to run into and don't know if they can be overcome.

1. If management insists you can work a miracle without the rest of the team needing to modify behavior, work alongside you, or include you in prioritizing or estimating new features, then the whole task is unrealistic.

2. If the developers working on the project are hostile to your efforts, have no desire to modify their practices and learn new patterns, or continually and stubbornly resort to old habits, then you will be fighting an uphill battle, even if you were to hand them a newly rewritten app.

kiawe_fire··on Things I've learned building a modern TUI framework
While TUI apps are not new, and I’m not inherently against them (I very much like them), I am worried that the recent proliferation of frameworks is going to give a lot of developers a shiny new toy to build fancy apps with that will now be much more limited as a result.

IMO, the simple input/output and parsable nature of a good CLI app lends itself to chainability, scriptability, and reusability that is still more powerful and flexible than just about anything else.

Put in other terms, you can build a GUI/TUI over one or more CLI apps, but you can’t build CLI apps over one or more GUI/TUI apps.

If developers using these tools realize the need to build these things in layers and not force usage of their app solely through the TUI, then great - everyone wins.

But I’m pessimistic that will be the case.

kiawe_fire··on Rumor: Google Stadia May Be Getting Shut Down
This is why I think things like Stadia are targeting a very small market.

You have casual gamers, that are perfectly happy playing natively on their phones or laptops at low settings.

Then you have “serious” gamers, that tend to be happy spending hundreds of dollars to make sure they have up to date hardware to get the most of their games (and thus, likely won’t be happy with the latency or game selection of Stadia).

Somewhere in between is a market of people that say “gee, I really want to play Destiny, at full graphics, and I’m ok with a little latency, but I can’t or don’t want to buy a better PC or $500 box for it”.

I’m sure that market exists, but it’s gotta be rather small in the best of circumstances, right?

kiawe_fire··on Developers are burned out, quitting jobs and creating a crisis for recruiters
I can confirm that, anecdotally, this is a fairly accurate portrayal of the reasons for my burnout over the last couple years.

The past several years at my company have been particularly focused on “quick and dirty results” that I predict will end badly, and so far it has every time, leaving me feeling responsible despite management decisions that ignored the consequences and recommendations I laid out. It gets old.

So, shortly before the pandemic, I took initiative to work extra nights and weekends to build a working prototype of a new version of our core internal app, that would ultimately let us go faster and would transform the way we communicate and give us unprecedented flexibility with our clients.

It was passed off as “that’s nice, but let’s get {x} out the door first”. It quickly became apparent that there was, and will always be, another {x} that needs to get out the door before we do anything else.

Having more autonomy and trust that I might actually have a solid grasp on what projects will yield the biggest returns, and being able to commit my focus to those tasks, and being able to hold my managers to the same accountability that they hold me to when making decisions, all would go a long way to improving my job satisfaction AND most importantly, improving our product and our value that we provide to our clients.

kiawe_fire··on A clip from Stray got me banned from Twitter
In my circle of friends and family, I’ve been warning them every time I hear of someone unjustly banned somewhere that:

(a) big tech has too much power (b) you should probably not rely too much on Facebook or Twitter for photos, groups, etc

Without fail, I’m “just delusional” and “if someone was banned, it’s because they did something to deserve it”, _until_ they themselves get banned for something.

The most frustrating part - one friend of mine who was banned for something he posted, appealed and was reinstated. When he was banned, “big tech has too much power”, but since _his_ appeal was successful, he’s already back to “anyone who’s banned deserved it”.

I have yet to be banned myself for anything (a fact that my critics like to use as “proof”), but i recognize that if it can happen to someone posting a video game clip, it can happen to me.

kiawe_fire··on Build Your Own X
I don't think this is necessarily a bad thing on its own - it's actually quite reasonable that one person's focus when "building a text editor" is going to be lower level along the lines of "how do I write a buffer and process key presses" while another person's focus might be "how do I embed a text editor in my app so I can add my own UI around it".

But it probably does warrant some kind of rating or explanation for each tutorial, especially for the less experienced developer.

kiawe_fire··on Show HN: Netflix Calculator
I've considered myself "not a morning person" for a while now, but maybe just making sleep the priority at night and attempting to trade that time for a movie or TV show in the morning might be worth a try.
kiawe_fire··on Show HN: Netflix Calculator
I was being partially serious - now that you mention it, between this project's ability to show my time spent watching something, and my phone's app usage, I could probably figure the difference to be the time spent browsing vs watching, which might actually be an interesting metric to track.
kiawe_fire··on Show HN: Netflix Calculator
Good advice - I think if I approached streaming apps as a means to watch something that I already have chosen to watch, and less as a means of finding something to watch, it would be a more purposeful activity and thus wouldn't feel like something that ends in frustration.

For gaming, there's an added dimension every time I browse my Steam library in that I need to consider not only whether I'm in the mood for each game, but also how long it is, how are checkpoints spaced out, does it have complex mechanics or story line that I would have trouble following if I took a break for a few weeks, etc.

I have identified that starting a new game is the hardest part for me - getting past the tutorial phase, getting into the mechanics and game loop - it always feels like a bit of a chore (that hopefully turns into something fun, eventually). So, just not worrying about it until I can block off a good couple of "work days" to get into it isn't a bad idea.

I should probably give in to YouTube play-throughs more often though. I used to avoid them because I didn't want to spoil the game if I intended to play it some day myself, but realistically I could probably gain a lot of what I'm looking for with less stress this way.

kiawe_fire··on Show HN: Netflix Calculator
Interesting ideas - if I understand, essentially the "browsing" phase is a distinct activity from the "watching/reading/playing" phase, and the browsing phase can become its own form of "unwinding" as a sort of meditative activity?

The comment and link are appreciated!

kiawe_fire··on Show HN: Netflix Calculator
I might need something that tells me how much time I spend browsing Netflix only to not watch anything.

My Netflix habit consists of aspiring to actually watch something as a way to relax before bed, opening the app, scrolling through a bunch of lists, deciding “that looks really good, I should probably save that to watch with my dad”, “this looks good but too heavy for me tonight”, “this looks good but only one season that ended 2 years ago, so probably cancelled”, “this looks like a candidate but I’ll keep looking just in case”…

45 minutes later, I’m tired, and either close the app or watch 5 minutes of something only to decide I’m too tired to follow it and that’s that.

I don’t have this problem with short YouTube videos or music. Even books I can eventually power through and make a choice.

But movies and video games I have severe analysis paralysis that leads to a lot of browsing and no actual watching or playing. It’s frustrating.

kiawe_fire··on Why 8kun Went Offline During the January 6 Hearings
Same reason people believe the clearly fabricated conspiracies made popular by CNN, MSNBC, Fox News, and most other “news” sources over the past several years - a polarized nation with institutions and authority figures that have found success in dividing people against each other to get them to support “their side” more unequivocally, leading to a persistent sense of underdog-ism and susceptibility to hero complexes.
kiawe_fire··on Reckless Software Construction
> Be an engineer, not MacGyver.

This “MacGyver” mindset over an engineering mindset is a core problem with most devs I work with.

Nobody takes the time to understand fundamentals, theory, or engineering principals. They copy-paste and flail around until it works, and aren’t even curious to learn why.

But the problem is, software dev culture seems to embrace and celebrate this MacGyverism.

Look at all the memes about how software devs’ job consists of copying from Stack Overflow for a living, or how they have no idea how their app is even working, or any number of memes that reduce software development to wizardry - but not the “Hogwarts, study and master it” wizardy, but instead the “I accidentally spilled the glowing purple vial on a frog and created a lizard person” kind of wizardry.

I do think software development has room for, and even requires, both true engineering work AND “super user”-type developers, especially as low code tools help make things more accessible. I also think almost anyone can learn an engineering mindset if motivated to do so.

So I’m not trying to gatekeep, in fact I’m happy if my job becomes building the tools that help the super-user-devs fumble their way to success.

But I also am very much concerned with the industry’s joyful conflation of purposeful engineering with fumbling tinkerer as though they are one and the same, and as though being the fumbling tinkerer is all that should be expected of all developers, all the time.

At some point, we need to return to teaching and promoting the value of learning fundamental principals, and of building a solid, well-engineered, well-documented product that works because it was built to work, and not because “I don’t know but if I paste this here and that there then it seems to be fine”.

kiawe_fire··on Let's Encrypt swag is here and I love it
I do have a “goal shirt” already… but maybe two would double my motivation?
kiawe_fire··on Let's Encrypt swag is here and I love it
As per usual, fat asses like myself are left out. Was all set to buy one to support them.

I know, I know… “lose some damn weight, fatty”. I will, I’m trying, but that doesn’t mean I wouldn’t like to rock one of these in the meanwhile.

kiawe_fire··on I don't care how you web dev; I just need more better web apps
Honestly, I find it more than a little ironic that the author is arguing against single-page web apps and then praises native apps as “doing it right”.

Native apps are built and run in a way FAR closer to how single page web apps work in that the browser becomes the runtime environment and the server becomes mostly just an API.

And you are not likely to ever see the kind of fluid results from a traditional full page render web app that you do in mobile.

And mobile at this point has more edge cases to develop for than modern browsers.

But the difference is, as I see it, there’s way less bickering on mobile over “the right way” because most developers use the native stack and instead of complaining about everything they think is hard, they roll up their sleeves and build a good product.

Maybe if we all stopped whining about single page apps being hard and started worrying about making a great product, then we too could match the quality of a nice native app built by devs like yourself.

kiawe_fire··on France bans veggie ′steaks,′ ′sausages′ to describe vegetarian products
We have all these (justifiable) regulations to help inform people with nutrition labels and ingredient lists and allergens…

And then people just ignore them, leading to (egregious) regulations to force arbitrary naming restrictions that people will STILL probably ignore because “the picture of the meat on the front looked so good” and yet “I had no idea they were tricking me into buying VEGGIE CHIX’N and it’s not real meat”.

kiawe_fire··on Mark Cuban is tackling out-of-control drug prices
Trolling? I was making a genuine observation. I wasn’t aware that Cuban was a supporter of many of Trump’s initiatives like this, but perhaps he was.

I was just pointing out what I thought was an objective observation that a business person opposed politician working towards {thing x} and then suddenly emerged with a business doing {thing x} once the potential public sector competition was out of the way.

But of course this assumes a degree of pessimistic motivation from Cuban. Given how often these kinds of motivations are assumed of people who challenge a public sector solution, I didn’t think to justify that assumption much, but I can see now how not doing so might have come across as trollish.

← PreviousPage 4 of 9Next →