HNHacker News
TopNewBestAskShowJobs

externalreality

415 karma · joined June 1, 2015

submissionscomments
externalreality··on How to design perfect software products (2013)
What is being described here is very similar if not identical to what can be found in Agile software and lean software development books that gained popularity in the mid 2000's.
externalreality··on HermiTux: A Binary-Compatible Unikernel
Agreed, agreed.
externalreality··on Nuclear power is the fastest way to slash greenhouse gas emissions, decarbonize
So there are problems. Its also the fastest way to the destroy the world. If you dot the world with these things we become one climate disaster or earth quake away from having written a check that our collective asses can't cash.
externalreality··on HermiTux: A Binary-Compatible Unikernel
> only two things that matter: ease of use and memory consumption

Those are seriously not the only two things that matter. Not by a long shot. Depending on what you are doing there are other serious concerns like security, OS Noise and other performance concerns. From the literature I've been reading security is a huge concern when deploying containers. From experience I can tell you that Dev-Ops with containers can be a nightmare and a half costing companies heavily.

Saying Ease-of-Use and Memory footprint is all that matters is serious misinformation that no research or other literature or anecdote supports.

That said, at least, ease of use is coming. There are some tools on the market right now that make Unikernels fairly easy to use Ops and BoxFuse come to mind.

externalreality··on HermiTux: A Binary-Compatible Unikernel
I think there on the right track from a usability standpoint in making tools that will help build a minimal kernel by determining what system-calls need to be included based on the application. Pulling in the correct dynamic libraries is also important.

I envision a system that can use static analysis to chose system calls, find libraries (ldd), and perhaps even choose between appropriate algorithms (thread schedulers) all based on the particular program it is going to run. In other words Kernels that optimize themselves based on the program much like compilers optimize programs based on the various things like architecture. I think uni-kernels have great potential.

Also for system calls that are not security concerns or performance concerns why not continue to proxy them to the host kernel as Hermit core does?

externalreality··on Good work, great work, right work
> This kind of work needs to stop. There's no discernible purpose to this refactoring and no discernible improvement in the code following. It actually adds code!

I hope this serves as a lesson for everyone. Saying "I'm Sorry" for your rude outburst is a lot easier than (forgive me but) rambling on about a fictitious, subjective definition of "Good Work" to make yourself feel better. That is a road to madness and vulnerability, and it is dangerous.

externalreality··on Microsoft workers shared sexual harassment stories on an internal email chain
First we need to stop acting like HR does anything. HR is paid by the same employer as the victim and will take the employer's side over the victim any time. The only thing HR will do is collect information from the victim and pass that on to legal so they can get a head start in debunking the claim in case of litigation. There are federal laws that say you should attempt to resolve the discrimination or harassment issue with HR before a lawsuit or else the company can use the fact that you did not against you in a federal court of law. Any such law should be abolished given it's akin to asking a rape victim to resolve the issue with the rapist's family before going to the cops.

Second, MS, Google, and Facebook are not the only companies where employees face sexual harassment and discrimination. Smaller company's employees face the same shit, probably at a higher rate, but are never mentioned in the the news unless someone is outright groping women or hanging nooses in the common area. Smaller companies are even held less liable when found guilty because the USA, in all of its capitalist BS, is worried that it may put the company out of business - I mean all they did was break the law, why should they face any financial hardship. Maybe I'll go rob a gas station and tell the judge not to lock up my dumb ass because I'll loose my job and face financial hardship. Basically the United states has no problem bankrupting citizens when they break the law, but companies get a free pass.

Third, no one is ever held accountable in these cases anyway. The EEOC claims very few of these cases go to trail and even fewer are actually won. Why? Because companies pay off women/minorities/disabled people to keep their mouths shut after firing them (very R-Kelly style). Maybe we should make a documentary called "Surviving Microsoft". Something should be done to limit the power of these companies. Australia, for all its racist and sexist faults, is leading the way on this with current legislation that says, F-THAT if you big companies can't follow the law then execs will start getting jail time. I would like to see the day when that law is actually enforced but at least it is a start.

externalreality··on You Are Not Google (2017)
This article has been written many times by many authors (even using the same cargo cult airplane image) and yet is no less true than the first time it was written.

That said, clamoring toward things like React has yielded a net positive result. So cults can be a double-edged sword.

externalreality··on Australia Passes Law to Punish Social Media Companies for Violent Posts
You could help to decrease the prevalence of the attitude whose extreme form was responsible for the passage of the law in the first place. Ever give that a thought? There is no totalitarianism here its Law & Order.
externalreality··on Ask HN: Why Isn't Functional Programming Taking Over?
Yes, they are. Its not the dominate paradigm and you wouldn't want to program them that way, but that's my point.
externalreality··on Ask HN: Should I omit education on resume?
Nah, don't remove your education. I did that once and people just kept on asking anyway or assuming I didn't have any at all. Not a good idea.

Just like anything else if you want to code you don't need a degree. Just prove that you can code.

Just keep improving your skills. May be difficult at times with no background but that goes for anything.

externalreality··on Jot #2600: Zuckerberg's joke on us
That was seriously cool. I had to scroll to see the last section. That was cool.
externalreality··on [dead]
> Immediately closed the article

You shouldn't have done that because a few sentences later the wiki describes how he was motivated by other mass shootings, which is precisely what the article is talking about. Was he a white attacker, well yes, but based on the wiki I wouldn't say he was a supremacist.

externalreality··on [dead]
> Right now when things escalate

What do you mean by "escalate"? I hope you are not using the word "escalate" to describe the murder of hundreds of innocent people by extremist terrorist.

> to people who are already triggered.

These killers are not "triggered" they are just crazy, bigoted, racists who somehow feel the need to kill. Your words sound very sympathetic in suggesting that the solution is to give these killers "time to cool off". The solution is to identify them early and get them some mental help.

externalreality··on [dead]
One reason these attacks will continue to grow is because authorities are not looking for these individuals because they are white. So when they start planning and collecting weapons the flags that would be raised, for say a dark skinned muslim, are not raised for the white extremist. The sad fact is that white privilege applies to extremist mad-men just the same.
externalreality··on The End of the Desktop?
> Hardly any work is being done towards personal "small-computing"

That's not true.

externalreality··on The End of the Desktop?
> Well, maybe we’ll still have Linux... None of the major Linux companies — Canonical, Red Hat, SUSE — makes the desktop a priority anymore. The Linux desktop will continue on, but it will keep going in the same way it is now: a platform only for power-using enthusiasts.

I'm a "power-using enthusiast" because I use Gnome3? Gee, thanks... but wasn't desktop a thing despite (in spite) the so-called "Major Companies". Canonical for one made "Unity" which was about as painful as a Rubix-cube covered in shards of glass. It couldn't have died sooner. I mean that what you get when a "Major" company tries to dominate the FOSS space - layoffs and an alienated base. Red Hat was corporate from the outset, they never pretended to otherwise, which is probably why they are actually successful and not using millions of person fortune to put on a show while loosing boku bucks in the background and laying off employees.

In short, desktop is not dead. FOSS people love desktops. Microsoft doesn't dictate anything anymore.

externalreality··on SUSE will soon be the largest independent Linux company
> I wish they'd produce a systemd-less version like Devuan.

I've been hearing similar often. What's the beef with Systemd anyway? I've haven't heard much and Googling will surely just turn up a bunch of theoretical, philosophical, or hate posts. Why is Systemd bad from the perspective of a regular user.

externalreality··on Running Forth Unikernels
> because 99% of developers aren't kernel developers

That is like saying you have to be a kernel developer to work with containers.

externalreality··on Running Forth Unikernels
> Your shell, sshd, and networking stack have probably all been exploited many times.

Yes, I've exploited them myself with script-kiddy tools. Its not hard. Remember those your average libos application may not have any of those things (if not only an simple IP stack).

externalreality··on Ask HN: Why Isn't Functional Programming Taking Over?
You kind of forget the fact that the language has first class functions. That alone qualifies it as a functional programming language in every sense of the MF word. It also has interface and (like you mention CSP). Its more than a strictly procedural language. I'm afraid I am going to have to standby what I said.
externalreality··on Does Apple even care about computers anymore?
Apple was able to pull off a lot of its super human, ahem, super company feats based on the immense god-like celebrity aura of Steve Jobs. Superb, frankly ridiculous (for the other side), business deals would magically materialize at the man's feet. Authorities would look the other way on arguable topics in favor of Apple, engineers would put in uncounted extra hours for the greater "good", and massive manhunts would take place for a prototype phones at his bidding.

Now Apple has to do something it hasn't done in a while - and that is simply to deal with reality. Such is the case when a legend passes.

externalreality··on In Defense of Narcissism
I can't help but think the term "narcissism" is being used in the article as a provocative substitution for the work ego or egoism. The way the article uses the work its almost as if the work egoism would be more accurate.
externalreality··on Vala Deserves a Closer Look
The author is my kind of dude. Despite all the hype he is trying to see what is out there through experience, self -study, and personal interest. The web is the best thing since the light bulb but it also encourages group think as surely as the bulb encouraged light pollution and energy waste. Bravo to the author for checking things out that aren't all the buzz.
externalreality··on Ask HN: Why Isn't Functional Programming Taking Over?
> In some sense, it is, it's just happening every slowly.

Yup, real world engineering doesn't heed purity of concept. What you get is a hodgepodge of best practices and ideas that work. Today we see JS, Golang, Ruby, modern C, C++, all of these things have ideas and features directly drawn from functional programming and likewise, many functional programming languages use ideas from other paradigms.

We likely won't see Lisp or Smalltalk become dominant anytime soon but there is no denying that many of their features have made it into many of the main stream languages that have become mainstream for reasons far detached from their programming paradigms (um maybe not Java, for better or worse, Java sold OOD and OOD sold Java).

externalreality··on Running Forth Unikernels
The kernel is small so security patches and such will be less frequent and there are minimal utilities like ssh, shell, what have you.

Also, the key is that there is very little to exploit so the likely hood of it being exploited is reduced.

externalreality··on SUSE will soon be the largest independent Linux company
Its good to see the brand reemerge. For a while there I thought they were done.
externalreality··on Running Forth Unikernels
There are generally three kinds of these systems.

1) FWK (full weight kernel) a stripped-down version of a full featured kernel only having the things needed to run a particular application. Remember as the upstream kernel progresses you have to some how find a way to update your modified kernel to keep up with security fixes and all.

2) A LWK (light weight kernel) a small kernel built from scratch that is added as a library to an application (it will likely be incompatible with many existing applications built for other systems) - a pro is that system updates are practically non-existent. You don't have to rebuild your image with Debian patches or anything like that since the kernel is minimal and unique. And exploits have minimal impact in any case.

3) Then there is the hybrid approach where you have a LWK that runs along side a FWK with the light weight kernel handling most of the system calls while the full weight kernel (e.g Linux) handles system calls for compatibility. A multi-kernel approach.

I have no idea what route Nanos takes since I can't see the code and its not mentioned anywhere. Keep in mind a Unikernel is usually a single address space kind of thing, so you shouldn't be able to fork or exec. Since Ops permits arbitrary Go/C/C++/Ruby programs I wonder what happens if you try to exec something.

In any case these systems are more secure than containers because an exploit in the code running in the container can affect the host kernel (There is no real isolation). With Unikernels, in some cases, the system will actually unplug cores from the host kernel and boot the Unikernels on those cores utilizing available NUMA features of the CPU. This allows for more isolation and the kernel itself is minimal so it has small attack surface and, in some cases, added performance characteristics.

There are good debugging tools these days for libOS's (Unikernels) and they date back all the way to MIT's exokernel design and even further back. They have caught traction recently because:

1) They are easy to make (You are either stripping down a working kernel or building a very small one - think smaller than minix3).

2) Cloud computing (security) and HPC (performance on commodity) make them relevant again.

3) Not to mention they are fundamentally a better technology than containers, IMHO there is no debate, containers will be replaced by libos(s)/unikernels.

externalreality··on How not to hire a software engineer
I don't know. Procedural code in Golang is pretty trivial - you basic constructs are regular in the selection, iteration, and sequence sense with a sprinkle of interfaces and some CSP constructs for concurrent design. That covers like 99% of what you need to write good code. I'd say pattern matching is pretty helpful Ala ML, Haskell, Rust. Beyond that all the GOF and Solid and all that jazz seems to do way more harm than good IMHO.

> If you want to get very far with any of those, you will need to write "good code"

If you have ever looked at the code of the most successful programs the code is anything but "good". Have you glanced at the Linux Kernel code lately? But again, "good" is very subjective. The Linux Kernel works well enough to server the purpose of millions of users and enough people understand it. Its good code!

externalreality··on What Makes a Good Developer?
Good developers develop. Good pipers pipe, good swans 'a swim, and a partridge in a pear tree.
← PreviousPage 4 of 7Next →