HN user

srazzaque

449 karma

https://sandipan.net/ https://fix9.net/

Posts4
Comments125
View on HN

This is impressive! Some interesting (and seemingly accurate) insights on my own behaviours :-)

Caveat: I didn't try this on desktop. On mobile (DDG Browser) I couldn't actually see any charts on the questions I asked. Whilst the display of the tables (dataframes?) is nice, my suspicion is a general user would prefer a graph or table _by default_. I needed to prompt specifically to get the workflow to output a graph for me.

I have been using Linux on "bare metal" for quite some time, as my primary operating system on the machines I've owned. When I've needed Windows, I've run it in a virtual machine. This has been my MO on my personal machines for over 10 years.

On my most recent machine however, I've opted to do this the other way around. I'm running Windows 11 Pro, running Linux on Hyper-V.

The experience has been.... Fine! I may actually prefer this setup (time will tell). Everything hardware related "just works". As per another thread on HN, Linux does seem to run very well virtualised compared to Windows. People will get riled up about needing an MS account. But I suppose that hasn't bothered me too much yet (who knows I may change my stance on this).

The reality is, messing around with drivers, the Linux wireless stack, display resolutions, firmware updates (ie the nuances of running Linux on a laptop) offers zero value to cloud workloads.

So I don't think running Linux directly on the hardware is an absolute necessity.

You can achieve similar levels of productivity and knowledge uplift if you: reserve Windows use for only things that require Windows (eg Ms office, and zoom meetings with a Bluetooth stack that won't drive you insane), and do EVERYTHING ELSE in your VMs.

Whilst it doesn't have the mindshare or some features which are tablestakes for enterprise customers, I've found Linode's pricing to be extremely predictable for small projects. Even post Akamai acquisition. I'm sure other smaller players are also just fine.

Couple that with the fact you can achieve quite a bit on simple set-ups that are adequately sized to begin with, you can save quite a bit.

Not all of us need elasticity, or environments being spun up/down on commit.

I Miss BSD/Linux 2 years ago

Makes sense!

What's the current best virtualisation software on Windows in your opinion?

I tried searching online for this. And quickly realised that highly ranked sites targeting Windows users are quite low quality.

I Miss BSD/Linux 2 years ago

At home, I no longer dual-boot because I vm.

Curious, do you have a Windows host and Linux guest(s)? Or the other way around?

I currently have Linux as my primary with a Windows guest OS for when I need it (e.g. Office - I actually think Excel is great - or if I'm doing any Win32/C++ dev). But, I'm thinking of doing it the other way around on my next PC.

Interesting analysis.

I think it suffices to say that quite a bit of thought and justification would precede striking a hospital in all of these scenarios. I do hope that this level of thought and consideration is standard operating procedure in the retaliations right now. Mainly to restore some morcel of faith I have in humanity. But I, and those disconnected from internal Israeli military comms (ie most of us) can't be sure.

The political optics/rhetoric aside, the images that I see of wounded children are heartbreaking. The recounts I've read about what happened on October 7th are horrifying. If the stats are accurate, they are depressing as hell. This war has amassed almost a fifth of the total civilian death toll of the 20-year long US War in Afghanistan. In. One. Month.

Collectively I think we can agree that this needs to stop. I hope it stops. But given the track record of skirmishes and hostilities in the region, I'm losing faith.

If the statistics of civilian and children deaths are even 50% accurate, even if Israel succeeds in destroying Hamas, I fear the collateral damage and the cost of human life will just create a future generation of armed boys who all lost their parents in air strikeS in October 2023. They might just call themselves something different.

And so the cycle continues.

I know many people on both sides alike want peace. But it will take a truly superhuman person to walk across that border and say "I forgive you."

When that day comes, a person who's death would be mourned by both sides, we may have some hope.

Until such a day, stay safe. I'll go give my kids a hug now.

I'll preface this with the fact that I appreciate the opportunity for discourse without degenerating to our base/tribal/Neanderthal brains. And, also, a chance to converse with someone outside my own echo chambers. Most of my circle is non-Israeli, and non-Jewish.

I'm literally running to a bomb shelter multiple times a day as rockets are fired at me

I'm sorry to hear this. This must be a terrible way to live, constantly in mortal fear of attacks from the other side. I will be the first to admit that I cannot relate to this, I've always lived in peaceful/stable environments (touch wood).

Can I pose a completely hypothetical counter-question, based on your own question with one variable changed: If it were somehow true that Hamas was firing rockets from _within Tel Aviv_ hospitals and/or using _Tel Aviv_ hospitals as a base of operations, would you consider it justified for the IDF to bomb that hospital?

+1

I've found that, for me anyway, one centered large monitor with enough real estate for your daily tasks is better than N smaller monitors. This is even if "total number of pixels" is larger on the N-monitor setup.

It's one less decision to make 1000 times a day (which monitor should this thing be on?), and reduces neck strain resulting from switching your focus between monitors.

I see your point, but comparing this with an off-line AV scanner with a regularly updated internal database (assuming that's what you meant) is not an apt comparison.

The analog would be an AV scanner that sends a list of your files/hashes to a centralised server somewhere, so that the company can target ads related to your file contents (or sell your data...), in addition to warning you about viruses.

Agreed that % true positive is not a factor in whether or not to have a given security feature. But it is merely convenient that the vast majority of the usage of this "link protection" feature would benefit Google/MS and not the customer/user (assuming that Google/MS are data mining, which is yet unproven in this use case).

Interesting, I wasn't aware Google had actually stated "we don't use this data for tracking, and we only use it for link protection" (does it?).

Assuming true: you are right in that it's basically no-win. The fact that Google draws so much revenue from advertising makes it difficult to reconcile.

Nothing short of a third-party code audit of Google's code against their asserted privacy policy would appease everyone. And even then, there would be doubters.

I'm pretty sure the stated intent of the redirect is to prevent phishing (that is, provide an opportunity for Google to warn users about visiting a known dodgy site). The ability to track is just an added bonus!

Microsoft does this too with Teams. Links that my colleagues and I share with one another to _internal company sites_ get link checked then redirected. Microsoft must have a treasure trove of data about external company employee browsing habits as a result.

I would have infinitely more respect for companies that are upfront about their intentions, no matter how nefarious: "we're doing this to help protect you from phishing. But also, 99% of links are probably not phishing. So this feature really enables us to collect data to track what you do, and perform analytics to improve our bottom line".

Why sugar-coat it?

To be clear: I'm not bashing Excel. Agree that there isn't a viable alternative for explorative table manipulation, and the experience of "think/change/see-results" is second to none. I myself use it for low-stakes tasks such as personal budgeting and quick analysis to validate my assumptions on tabular data.

Key word there is low-stakes. I think Excel gets a lot of heat because it's often found used in contexts where it's wholly inappropriate to use (eg driving critical production decisions from SalesAnalysis_JimVersion_v1.8_FINAL.xlsx). That's not really Excel's fault.

Yep, I've long conjectured that Excel is what sells MS office. Every other product in the Office suite, including PowerPoint, has very viable alternatives.

Excel has a 100% a strong-hold in most finance departments. I've worked with many finance professionals who's very first instinct for any type of work is to open Excel. When interacting with any data outside of Excel, they'll demand a way to get it into Excel.

(2) is perhaps poorly and ambiguously worded on my part. What I meant to convey was: "It's rude/impolite to refuse your friend's offer to top your drink up" (context being: you're already out drinking).

I've not been to Japan, but heard what seems to be an exception to this rule from a colleague.

When out having drinks, it is considered (1) rude to let your friend's drink go empty, and (2) rude to refuse your friends offer for a drink.

Is this accurate? If so... one can imagine how this can get pretty messy!

Good read, a lot that resonated with me. My comms (written and verbal) to stakeholders are something I'd rate as "OK". But, on occasion I still do catch myself out diving into tech talk at the wrong times.

I'd add that with a certain level of seniority, for those developers that enjoy working directly with clients and stakeholders, it's expected that you can translate in both directions.

That is: not just going from "tech to non-tech", but also shaping a "non-tech" requirement into an actual solution.

Clients will rarely ask for redundancy, persistence or ACID compliance. But they will say things like "I want some sort of completeness check, and I can't have the system drop any messages from the exchange."

KDE for Travelers 3 years ago

Personally I love the usability of KDE, the speed (and information density) of the file browser, and love constantly discovering little "touches" of polish as I use it.

However, the thing that's killed it from being my primary DE is the inability to wake up from sleep on more than one occasion, resulting in me losing work. It's not happened to me on Gnome. (This is on Fedora Workstation on an AMD ThinkPad X13).

I've seen a few reasons in big-corps. To list 2:

1. Old version, and security updates are still required

There's some critical piece of legacy software that has only been tested and observed to work on an old version of the JVM (e.g Oracle JDK 8).

The cost of decommissioning the software OR upgrading and re-testing on a later JDK OR switching to the OpenJDK (without security updates...) is perceived to be more expensive or in breach of company policy versus paying licensing fees.

2. Use of proprietary or deprecated APIs

Either company code or that of a library dependency has reliance on proprietary or undocumented Oracle (or Sun) APIs and toolkits that aren't supported in OpenJDK.

The chances that the existing team members, or the current army of "Spring Boot Microservice Developers" will be able to rationalise or unwind this code in a reasonable time frame is slim.

Though to be fair I haven't seen #2 in some time now.

Full Time 3 years ago

It's basically all vanilla Java

Have you considered rewriting it in rust? ;)

In all seriousness, it's great to see something written in a "boring" language like Java, which seems to get a lot of hate in developer circles, hover at the top of HN.

Java really can perform amazingly well, especially if you minimise the use of unneeded libraries and frameworks. Super curious to see how your stack evolves as you get more load.

Best of luck to you on the journey!

Ps there's truly a world of difference between "Spring Boot Developer" and "Software Engineer with Java experience". I suspect a lot of people who hate Java or think it performs badly have only worked with the former group of people.

Whilst I can only speak anecdata, in my experience majority of people who "know" the song definitely only know the chorus, and have no idea about the song's history or lyrics. They'll sing along (loudly, I might add) during the chorus, but go hush during the verses.

This [1] is Bruce Springsteen performing the song very differently to how you might normally hear it. For me, this particular style seems to "fit" better with the subject matter.

[1] https://youtu.be/xBuZGiisGvs

Your role is to manage engineers. That sounds very simple, but let's break it down.

Starting with the term "management". The best definition I ever received was "management is getting things done through people". This is slightly distinct from "leadership", which is "influencing the way others think". One can lead without managerial skill, but its difficult to manage without leadership attributes.

There are therefore 2 parts to this role title:

(1) identify the "things", that need to be done. This will be different in almost every organisation, so it's difficult to provide a playbook here. But ensure it's crystal clear between you and your own management. Typically it will be some form of "ship features" and "report on progress". But do not be fooled: there is a long laundry list of "unsaid expectations" that you'll simply need to learn over time (recruitment, planning roadmaps, managing performance, foreseeing and eliminating all sorts of risks such as scheduling and resourcing risk). Be kind to yourself. You will be blindsided by things you weren't aware of. KEEP A BUFFER of time to allow yourself to be responsive. Slice up all the "things" and understand what needs more definition, what can be delegated, and what cannot. Get very good at managing others' expectations when things aren't going according to plan.

(2) Get it done "through people" (your team). It's up to you to set up the right structures, communication lines, to get your team working effectively. But the "right way" is completely dependent on what you discover in (1). Feel free to pick (start with) one or more of the many software development approaches on offer (SCRUM, Kanban, etc) and tailor as you go along. Whatever you pick, recognise that it will need to evolve over time.

Now this is a controversial point: I'd recommend to keep your hands dirty, without being on the critical path to delivery. But, be sensible and recognise what's possible within the boundaries of your available time. You won't be re-writing the company's caching layer single-handedly. But you might choose to fix a small bug.

Rationale here is 3-fold: firstly, it's a good break from some of the mundane "manager" stuff (you built that buffer time in, right?). Secondly, it's sometimes much easier than prescribing every fine detail of what you're require people to follow. As a personal example, I delivered a small module for which I included integration test evidence, so engineers could see/understand what I was asking for in the test evidence. Finally, your engineers will actually respect the rules/advice you're giving them, because you're fighting alongside them in the trenches, not "shouting out orders over radio".

Hope this helps.

This is a great list. My thoughts on two of the points:

The biggest value in estimating isn’t the estimate but to check if there is common understanding.

Wholeheartedly agree. The amount of extra detail I've captured out from the team, with wildly varying estimates on a particular work item, is astounding.

It forces the team to articulate assumptions and dilineate between in-scope and out-of-scope details.

This works especially well when stakeholders are in the same session, asking for why a button cannot be made blue in under 5 minutes.

Breaking all the work down to the smallest details to arrive at a better estimate means you will deliver the project later than if you hadn’t done that.

Not sure. Perhaps breaking down tasks has a negligible effect on estimation accuracy. Maybe this is true for simple environments without complex dependencies across teams.

But breaking down tasks provides (1) some certainty that you know a thing is achievable, (2) gives you a strong idea of what can be started immediately, and what can be run in parallel, and (3) hidden dependencies on other teams. This in turn leads to a better estimation.

I have observed many failures when management assign a vaguely specified task (contrived example: "rewrite persistence layer to talk to new database") to a developer, that should really have been broken down into smaller tasks.

Ha! I was a wimp and did a "stage 3" install back in the day. Or was it stage 2? (shrug). Now I'm even wimpier and just use Fedora.

Came across this page, on the motivations of Gentoo, a few years later:

Installing a working Linux box used to require over 550 man hours, learning a Nordic language, sacrificing a goat, wading through hundreds of pages of (purposely) inscrutable help files...Old-school Linux users were desperate to find a new way to feel superior.

https://en.uncyclopedia.co/wiki/Gentoo

I see your point, and that is indeed the case in some companies (or even roles within companies). I also advocate for keeping a separate work/personal phone.

However, being a background checking company, making phone calls is absolutely in their BAU remit. Upon submission of documents, they even state in their automated email response that they may call you for further information. Plus, they regularly call companies to verify employment information.

I got the distinct impression that they have a certain process, and they pay certain ranks not very much to simply follow that process. Any minor deviation from that playbook needs to be handled by a "senior", who is "empowered" to think and handle things like a regular human.

They have some hokey secure email thing that is basically a link to a webform upload.

Not Equifax per se, but my understanding from dealing with background checking companies is that this pattern is to discourage people from sending sensitive information over email. 99% of people won't have a clue about how to encrypt email, nor will they think twice about sending an unencrypted attachment. Whereas a sanely coded web portal can enforce this.

The irony here is that its done for "security". But if the app itself has an unpatched vulnerability...

Ps I once did try sending an encrypted PDF to such a company, and instructed them to phone me for the password. This was apparently way over the heads of the person assigned to my case.