HNHacker News
TopNewBestAskShowJobs

mrmekon

797 karma · joined October 20, 2010

Everything is so very, very interesting.
submissionscomments
mrmekon··on Firefox Multi-Account Containers
Docker didn't invent the term 'container' for... well, _containing_ an environment.

It's not really overloaded here. 'Container' means a contained environment that can see itself, and cannot see other contained environments on the same machine/network. It has the same basic meaning for both Docker and Firefox.

Docker was released in 2013, so if you search for "software container" or "software virtual container", or "chroot container" on Google filtered to before 01-01-2012, you will find plenty of examples of it from the past.

LXC - Linux Containers – was released in 2008... Virtuozzo Containers since at least 2000.

Here's something called Aurora for containerizing CORBA services in 1998: https://link.springer.com/chapter/10.1007/BFb0054506?no-acce...

mrmekon··on Text-only CNN
I can't believe wayback machine has this. I ran a text-only scraper for ~200 websites back in the early 2000s.

https://web.archive.org/web/20060803053549/http://inr.cjb.ne...

Most were RSS feeds, since those used to exist. The rest were hand-written parsers, which were highly temperamental.

mrmekon··on Our Broken Economy, in One Simple Chart
Internationalization, exponential worldwide population growth, and technological advancement are probably all major factors in making labor, across the board, less valuable. I would imagine that it affects low/non-skilled the most, but also cuts into high-skilled labor. And when labor is cheap, value shifts from the labor itself to the holder of the goods [citation needed].

Isn't it intriguing that in all of these talks and comparisons of now to "the good ol' days", whenever you pick those days to be, it's seldom mentioned that the world population grew by multiple billions since the comparison started? There are twice as many humans on the planet as there were in 1970. What that means for income distribution isn't for me to say, but it seems a safe bet to assume it's at least _related_.

mrmekon··on Things Hackers don’t tell you about Hackathons
You left out a third group: C (or "systems" or "embedded") programmers. What am I going to do in a weekend that will be fun to show off? "We made a minimal binary IPC protocol over named pipes that is 2.5% faster than typical examples for a few certain types of data, on certain architectures, sometimes." Wooo!
mrmekon··on Ask HN: How do you define a junior developer?
It depends on when and why I'm defining it, but my guidelines are more based on how they work than what they know:

* Junior developer - Will not produce much business value if left alone, and may produce nothing at all. Requires supervision.

* Intermediate developer - Will produce something if left alone, but not necessarily what the business most needs. Needs minimal supervision, but defined goals.

* Senior developer - Will produce immediate business value if completely ignored.

The domain and language don't matter for these, really. A Senior Go developer is going to produce immediate business value if you suddenly throw him/her into a Lisp team, too. Just slower.

When someone is considering hiring you, this is more or less what they're thinking about. It's not "do you know Scala," it's "are you going to make us more money than you cost." It's just hard to prove, for either side, so we talk about past experience instead.

mrmekon··on How much do salaried programmers really work?
As a consultant, you get to decide how often you take jobs. You can work yourself to the bone, or you can take 6 months off per year. You can change your work schedule as your mood or personal situation changes. If you're up for it, it's quite easy to work your ass off, and it's quite easy to turn that efficiency into more money. And when you're young and/or strongly financially motivated that's easier to do.

As a salaried employee, you usually can't control when you work. You're (supposedly) going to be in the office ~40 hours a week for ~50 weeks a year, every year. So you naturally shift into a slower pace to avoid burnout.

I don't see it as a problem. You trade off efficiency for long-term stability.

mrmekon··on Ask HN: I have a hardware product idea, how do I make it happen?
[This post assumes you actually need hardware design. If you really just want a Raspberry Pi with some custom inputs, none of this applies.]

Yes, there are hardware design firms. Your software experience may or may not help at all, depending on the type of product you're going for.

Basically, you need to find a company that does this. This is pretty hard to do. "Hardware design" firms may or may not do it, "embedded systems consultants" may or may not do it... you just need to find some local ones and talk to them. Some do hardware layouts, some do board manufacturing, some do industrial design, some do RF, some do product management -- decide what you need, then find a company that can handle it. Or find a company that can help you decide what you need :)

One way to find these companies is to call the local representative for chip manufacturers (Atmel, Texas Instruments, Silicon Labs, etc) and ask if they can recommend a local consulting house that does product development. They know everyone in your area who buys ICs. They'll be more inclined to work with you if you find a specific one of their chips that suits your needs, and tell them you're thinking about using it.

"How much would it cost" is mostly unanswerable. The answer, though, is definitely a LOT more than you suspect. I'm assuming you've phrased the question correctly and you actually need hardware design, but if you really just need to throw an Arduino or Raspberry Pi at something it will be much cheaper. But if you need custom hardware design, the answer is a LOT. Nobody can give an estimate without knowing what you're doing, of course... a digital thermometer will be pretty cheap, a self-driving car will be quite expensive. But creating a hardware product usually requires 1+ hardware designers, 1+ embedded software developers, 1+ industrial designer, and possibly more... and since you don't own a company, you'll be paying them consultant rates. $100+/hour each. Plus the cost of raw materials, which is high in low volumes, plus the cost of manufacturing a board, which is very high in low volumes, plus the cost of doing it over and over again until it works.

How long: again, nobody can answer without knowing what you're doing... but longer than you think. It takes a long time to manufacture a board. They come back broken, always. It takes a while to figure out why they're broken, then you get to make the next revision. Rinse and repeat. Don't forget that you'll probably need something -- an IC, a JTAG debugger, a person -- that has a 6-month lead time. And it's easy to get stuck on a bug for a few weeks/months that turns out to be a defect in the microprocessor you're using. There are a lot of things that can stall the project and burn time, and nearly every project hits one.

The cost and time of projects is all over the board, and very hard to predict, but it's not unusual for a very "simple" project (ex: USB microphone) to run up $250,000 and 6 months for 10 prototypes, and a complex project (ex: television cable box) to run over $2 million and 1.5 years. On the other hand, maybe you luck out and your microphone works perfectly and only runs $30,000. Or nothing works, and you throw paycheck after paycheck at it, until you're down $5 million and years have passed and people don't even use USB anymore.

And that's just to get a prototype.

Something to remember: a digital thermometer costs $5 at every corner store because there are digital thermometer companies with a very large staff dedicated to making millions and millions of digital thermometers per year. They can make them for $0.50 each. You are not a digital thermometer company, and you will not make one for $0.50... your first one will cost $100,000. Hardware is only profitable if each unit is worth a fortune, or you're going to sell millions of units.

I strongly recommend it -- hardware is a blast -- but be aware that it is far, far, far more volatile and uncontrollable than software development.

mrmekon··on Childhood amnesia kicks in around age 7
I see two other people commenting about framing memories based on moving at a young age. I have the same thing, and I wonder if moving at a young age correlates with higher childhood memories.

I moved when I was 7, and it's a very distinct transition in the quality of my memories. I have tons of pre-move memories, including one confirmed by my parents as my 2nd birthday party, but they're primitive. No sense of time, just a jumble of memories that I can't place chronologically, and most are very brief moments. However, I remember the move and everything after it vividly and in chronological order.

I would suppose that the move made me reminisce about my old home during the period when my childhood memories were fading, and saved many of them from being lost.

mrmekon··on Ask HN: How did you get started with the programming languages you use?
Georgia Tech. Quite a few American universities have co-op programs, though they aren't hugely popular.
mrmekon··on Ask HN: How did you get started with the programming languages you use?
To do anything, if you want to do that thing on a processor with Von Neumann architecture and guarantee efficient memory or CPU usage.

Admittedly, this comes with a significant cost of development time.

mrmekon··on Ask HN: How did you get started with the programming languages you use?
I was in my university's co-op program, but didn't apply for any jobs. A couple of weeks after the interview period ended, a representative from the school's co-op program called me and said they had a company that was desperate for a co-op, didn't find any who were qualified during the interview process, and my résumé was the only one they could find that listed experience with C.

I took the job. Embedded systems, primarily extremely resource-limited microcontrollers. It was beyond anything they could teach a student on the job, so they really did need someone who already knew the language. That was apparently a difficult skill to find among students in 2003.

10 years and 5 positions later, all of my work has been in C, and I regret nothing. It's a practical career choice: the jobs are plentiful and the competition is not. Also, it's the best language :P

mrmekon··on Where to begin when learning C? Start by making lots of errors
I once had a particularly slow week at work, and decided to write an article about how "Hello World" works in C. How it really works -- including compiling, linking, system calls, operating system involvement, hardware I/O, communication between ICs, etc. The path from the block of text to photons emitting from the screen, with fairly detailed explanations at every level.

I ended up with a 50 page LaTeX document that barely even scratched the surface, and then work picked up and I never finished it. A "full" explanation would probably be a 600+ page book.

I still think it would be a neat resource to have. We kind of take for granted that the simple "Hello World" is built on 60 years of research, and is anything but simple.

mrmekon··on Toyota's firmware: Bad design and its consequences
The software has become dramatically larger, dramatically more complicated, and dramatically more important. At the same time, the process around developing embedded projects has not even slightly kept up.

Most of the crappy projects I've worked on weren't crappy because the developers didn't know what they were doing. They were crappy because they were old code bases that were recycled over and over and over again through small hardware iterations, and no team working on a single iteration can ever get permission from management to do the necessary maintenance (refactor, redesign, whatever) -- they are just required to get their little port finished fast. Everybody makes the smartest hacks they can on top of the crap they were given, and each step of the way the system gets worse.

Most companies don't start from scratch -- which is almost impossible anyway, given the low quality of documentation from chip manufacturers -- but start from whatever example code base or framework the manufacturer provides. These are invariably bad, and were developed like I mentioned above (hacks on hacks with each hardware iteration)... and then the hacks for your specific project start.

Then the actual development cycle is pretty much dictated to be the 'waterfall' method since it's tough to be 'agile' with hardware. Proper debugging tools, at the level you would get with desktop software development, are either unavailable or cost more than the company is willing to invest. Proper code analysis tools are the same. Continuous deployment and automated testing are practically impossible unless you have tens to hundreds of millions of dollars to spend on infrastructure.

And there's never enough time for any of it.

And there's never enough documentation for any of it.

At this stage, embedded has reached the complexity of enterprise software running on desktops/servers, but without the process and tools needed to make that actually work.

mrmekon··on Toyota's firmware: Bad design and its consequences
I was an embedded contractor for 8 years. It was a huge majority of EEs writing the production code at every company I worked with. I probably worked closely with about 300 engineers in that time, and fewer than 20 of them had Computer Science backgrounds. This was especially true in aerospace/defense, where I very well might have been the only CS guy in the (large) building.

And, no, most weren't "EEs who are talented at writing software" :)

mrmekon··on Reverse Microwave Chills Beer In 45 Seconds
Homebrewers have been doing this by hand for years. I do this often at parties when I don't have space in the fridge.

Fill a pitcher half full of ice, add cold water to above the ice, and a bunch of salt. Insert bottle, and spin by hand for 30-60 seconds.

This device saves on the cleanup time, in exchange for having another permanent appliance on the counter.

mrmekon··on Ask HN: Should I go to Sweden for work?
Taxes are easy to look up. There are calculators where you input your salary and the state you will live in and it'll spit out a pretty close number. Expect somewhere around 30% income tax for a middle-class salary.

Numbeo is ok for comparing the cost of items, but it's not clear how your consumption will change. My consumption is much lower in Stockholm.

http://www.numbeo.com/cost-of-living/compare_cities.jsp?coun...

Cars are expensive, but hopefully you don't need one if you're looking at NY metro.

The big differences that are harder to predict are insurance, healthcare, and retirement. Healthcare costs can be sudden, large expenses ($2-20k USD) even if you have insurance through your employer... to be safe, you need to keep a pretty gigantic emergency fund. If you don't have insurance through your employer, you will probably bankrupt.

Children, college, and retirement cost more than you will ever earn. Don't do any of those things!

mrmekon··on Ask HN: Should I go to Sweden for work?
I'm terrible with languages... it will probably take 5 years to reach 'conversational' levels.

My company is extremely international, and all business is done in english, so there is no problem. Other companies I interviewed with did bring it up as a problem. Startups seem to care very little, major corporations care a lot.

mrmekon··on Ask HN: Should I go to Sweden for work?
I moved to Stockholm from the US earlier this year. The salary is supposedly good for Stockholm, but about 20-30% lower than offers I had in the US. I took it because I particularly loved the idea of living in Sweden, and I was not disappointed.

Comparing the cost of living is difficult. I don't know anything about the lifestyle in Moscow, but the US is so extremely different from Sweden that it turns out I did all of my comparisons wrong... I thought my expendable income would go down by moving here, but it actually went up. This is not because Stockholm is cheaper (it's much, much more expensive), but because I imitate the Swedish lifestyle, and the Swedish lifestyle is much cheaper than the American lifestyle :)

Swedish salaries aren't going to make you wealthy, they are just going to make you comfortable. And if you live your whole life here and retire here, the government programs will keep you comfortable through your retirement. It's a good system to live in long-term, but it's not the most competitive for short-term positions.

Most of my friends here are non-Swedish europeans, and I really only see two stances: either they moved here because they needed a job and they can't wait to move home, or they moved here because they wanted to live in Sweden and they love it. Marriage complicates it even more... some love it, but their spouses desperately want to move home. (good news: young children seem to transition very well)

If you or your wife is particularly against moving to Sweden, drop it immediately. You'll probably never get over that. But if it sounds like a fun adventure, then it probably is! If the first thing you want to do here is find some surströmming and köttbullar, you'll have a good time... if the first thing you want to do is find other Russian expats and a Russian food market, it's going to be a long winter.

mrmekon··on Detaining my partner: a failed attempt at intimidation
My god. The responses are basically saying that they agree with the government kidnapping and robbing the family of a journalist in retaliation for the journalist's legal news coverage.
mrmekon··on The 3 Most Absurdly Outdated Internet Laws | Mother Jones

  > internet activist Aaron Swartz, who was threatened with 35 years in
  > prison under the CFAA for allegedly stealing mass amounts of
  > academic articles
Using the word "stealing" at this point is not only wrong, but destroys the very point he was trying to make...
mrmekon··on [dead]
Certainly not arguing that it's difficult. It's extremely trivial.

It just makes no business sense for the camera manufacturer. The CCD is a generic chip that spews clocked image data over some serial connection. Keep it simple and generic, and ship to any business who wants it.

You can have a camera controller IC/ASIC/FPGA/µcontroller one step up from the CCD that manages the CCD and LEDs. That would have either firmware or hardware support for LEDs, but you'd still imagine that it would be configurable for cases where there is no LED installed.

It's absolutely possible, and I don't know all the options out there, but I can't imagine a manufacturer shipping an off-the-shelf IC that _always_ ties an LED to CCD operation.

mrmekon··on [dead]
Hardware-based can mean two things.

    1. The CCD IC controls the LED
    2. A intermediate IC has firmware that controls the CCD and LED
It is safe to assume that the LED is always controlled either by an OS driver, or by an intermediate firmware. I doubt it would ever be controlled by the 'final' camera IC.

This means that, for Macbooks, running the CCD without the LED is _very difficult_, but, if the camera supports firmware upgrades, it is possible. And there could be undocumented commands to enable video without the LED.

If you're afraid of script-kiddies watching you read Reddit, you can probably trust the LED. If you're afraid the NSA has identified you as a special target, you probably cannot.

mrmekon··on [dead]
That would be hardware-specific, but probably _always_ independently controllable. It's not like the IC manufacturer is going to link the CCD to an LED.
mrmekon··on Will Ubuntu Edge commit to using only free software?
Hardware vendors have the absolute worst, lowest quality software I have ever worked with. It's ubiquitous across the industry. The best players in manufacturing silicon ship software that's unworthy of a student in a high school student in an intro to CS class. I wouldn't be surprised if many of them don't want to release it because they know how bad it is.

Much of it is also an amalgamation of licensed software. They can't release what they don't own. And remember, we're not talking $15/year startup prices here, we're talking $0.50/unit or $2 million/year licenses -- you want to bring open source to hardware, you need to deal with changing that industry. And that industry charges so much because they get "certifications". And certification costs.

And for the big guys, a few hundred thousand phones is a good customer, but nothing worth changing your business over. Not when the DoD just ordered a batch of 15 million.

The FAEs I've worked with from most hardware manufacturers have been pro open-source.... but their software departments always seem powerless and anemic, despite being the front-line for making sales, and unable to really push for it.

mrmekon··on Will Ubuntu Edge commit to using only free software?
Agreed.

Hardware costs a ludicrous amount of money to design. It costs a ludicrous mount of money for each prototype run, of which there will be several. It costs a ludicrous amount of money to have PCBs fabbed. It costs a ludicrous amount of money to design a nice case that everything fits into and that doesn't destroy the radio signal. It costs a ludicrous amount of money to hire RF engineers for anything. It costs an above-average amount of money (for HN) to develop software and firmware for hardware. It costs a ludicrous amount of money to package for consumers, to store, and to ship. It cost a ludicrous amount of money to convince stores to carry your product. It costs a ludicrous amount of money to support the product and the customer after it has shipped to market.

I would be shocked if $32 million covered the development and first run of product (assuming first run >100,000 units).

mrmekon··on Will Ubuntu Edge commit to using only free software?
Many IC manufacturers treat their "API" (hardware registers) as proprietary IP, require an NDA from the driver developers before releasing the development guide, and require an agreement not to publish the driver.

I'm mostly referring to the smaller support chips here. Things like I2C->I2S bridges and ADCs and other crummy little parts that every board needs, and that need small drivers. The big ones, though, would be WiFi, Bluetooth, and cell radio chips. They can be very strict.

Even if Ubuntu had the time and money, they might not have the rights.

mrmekon··on As Feds Demand the Keys, Preparing for the Death of Public-Key Encryption
And as Feds demand skeleton keys to buildings, prepare for the death of cylinder locks?

Prepare for a change in how we use it, not for its death.

mrmekon··on OpenNVM: new interfaces for non-volatile memory
I don't really understand your question here. NVM is non-volatile memory. Stick a filesystem on it and it's still non-volatile memory.

Do you mean they were writing configuration files directly to a known address in Flash instead of using a filesystem? It's much simpler and less resource-intensive and doesn't require writing and maintaining a driver. There are plenty of cases where direct-writes are better, and plenty of cases where a filesystem is better, and a nice big gray area in between.

mrmekon··on Yahoo wins motion to declassify court documents in PRISM case
If the NSA actually pays any consideration to how the value of their data helps find "terrorists"/criminals, iTunes data is probably not particularly valuable.
mrmekon··on Complaint filed against Irish subsidiaries of Apple, Facebook
Very late response: this comment thread was a general discussion about privacy, it wasn't specifically about the article.

And a maaku on HN could easily be this maaku on github from California: https://github.com/maaku

And the 'online robots' and 'direction of the government' almost certainly refer to the recent NSA case, which is an American issue.

So, yes, the US data protection laws do seem relevant to the conversation.

← PreviousPage 2 of 4Next →