German nuclear plant infected with computer viruses, operator says - <AUTHOR> http://www.reuters.com/article/us-nuclearpower-cyber-germany-idUSKCN0XN2OS <comment><USER2> Possibly important to note the timing of this admission right on the heels of the announcement of our defense minister that she wants to build a 'cyber' division in the army with 13500 people working there. Thats almost 10% of our armed forces.

I could only find decent reporting about this in german: [http://www.tagesspiegel.de/politik/plaene-der- verteidigungsm...](http://www.tagesspiegel.de/politik/plaene-der- verteidigungsministerin-ursula-von-der-leyen-will-cyber-armee- mit-13-500-mitarbeitern/13503698.html)

<comment><USER3> Here in Germany that only means that 13000 people print out reports for the minister, while 500 people look at screens. 10 of them program the stuff that happens on the screens.

<comment><USER4> You have that many Australians working in Germany?

<comment><USER5> I don't get the reference.

<comment><USER6> He just means that it's the same everywhere. In Australia, Germany, etc.

</comment></comment></comment></comment></comment><comment><USER3> I found that part much more .. interesting:

> As an example, Hypponen said he had recently spoken to a European aircraft > maker that said it cleans the cockpits of its planes every week of malware > designed for Android phones. The malware spread to the planes only because > factory employees were charging their phones with the USB port in the > cockpit.

<comment><USER7> The next sentence pretty much confirms my impression that this claim is almost certainly bullshit:

> Because the plane runs a different operating system, nothing would befall > it. But it would pass the virus on to other devices that plugged into the > charger.

That's just...not how computers work.

<comment><USER8> See the recent BadUSB attack [1][2] for how this sort of attack can work; the firmware of the USB microcontroller itself can be infected.

[1] [https://srlabs.de/badusb/](https://srlabs.de/badusb/) [2] [http://www.wired.com/2014/07/usb-security/](http://www.wired.com/2014/07/usb- security/)

<comment><USER9> Doesn't badusb have to pwn the host OS to propagate?

<comment><USER10> Nope, and reinstalling it wont help it..

</comment></comment></comment></comment></comment><comment><USER11> It's more alarming to me that, apparently, critical infrastructure in a nuclear plant is running old versions of Windows.

<comment><USER12> > It's more alarming to me that, apparently, critical infrastructure in a > nuclear plant is running old versions of Windows

Don't worry, the most important parts are running on DOS or OS/2, so we're saved from doom!

<comment><USER13> "Nuclear is safe", they said.

I'd rather have my local solar power plant infected with viruses or hit by cyberattacks.

<comment><USER14> Modern nuclear reactor design is such that you _cant_ cause a meltdown without violating the laws of physics.

<comment><USER15> Unfortunately most nuclear reactors aren't modern.

<comment><USER16> As far as I know there isn't even a single one of those designs which was successfully built somewhere yet (as in: Is able to generate more power than it uses).

<comment><USER17> The being able to generate more power than it uses is a problem for nuclear fusion reactors.

The problem with modern nuclear reactor designs is that they're just that, designs. Great ideas people in comment sections love to mentally masturbate about. In reality almost all nuclear reactors are decades old.

Politics alone ensure nuclear reactors with the exception of maybe fusion (which will be way too late for climate change) will never get off the ground. In the meantime renewables, solar especially, get cheaper and more efficient every day, not designs but actual installations.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> Let's just say it's not new.

Operators mostly watch the plant during the weekend while the engineers are not there. It is a security job: check if something turns red and pick up the phone if it goes bonkers. The operator has a limited access to the core process. Boring, and they get busy by going to the Internet and downloading random stuff. And yes they do have access to the Internet...

<comment><USER19> Remember saw a job ads for PDP11 programmer to work on Nuclear power related project a few months ago.

One thing for sure: you can't infect a PDP11 system with Windows or Dos Virus, nor can one plug in an USB.

<comment><USER20> I wonder if the new hire raises eyebrows constantly talking about "core memory", "dumping core", etc.

</comment></comment></comment><comment><USER21> I wonder what scale of disaster will have to occur before information security is placed under the same legal and regulatory scrutiny as physical security?

<comment><USER22> I think it won't happen until everyone in society has good "computer literacy".

<comment><USER23> The number of people who have no idea how their car works, despite them being fairly ubiquitous for nearly 100 years makes be think that that will never happen. There will always be people who know only just enough about the technology around them to get by.

</comment></comment></comment><comment><USER5> We have to be more concerned about the things that are not reported. And why is it even technically possible to infect the control system of a power plant at all, or was this just a virus in some auxilliary sytem like, say, the machines only connected to another network, totally decoupled from the control system? Without details, this is just fear mongering on the heels of recent media outbreak regarding Belgian reactors.

<comment><USER24> The article said the virus was on "a computer system retrofitted in 2008 with data visualization software associated with equipment for moving nuclear fuel rods".

Control systems generally have two components; the actual controllers that interface with the machine or equipment and then an HMI for the operator to interface with the controller (ignoring completely hard wired systems consisting of lights, buttons, chart recorders, etc). The majority of the HMI software runs on windows.

Once an attacker is on the HMI system they can probably easily do anything the operator can do, and possibly have full access to the controller and make things happen that Should Never Happen.

</comment></comment><comment><USER25> What am I even reading?

A _nuclear power plant_ has computers on its airgapped network infected with _a computer virus from 8 years ago_ for _an operating system which expired from support two years ago._

At least the nuclear power plant near me runs on a PDP-11.

</comment><comment><USER26> The head of the BND, the German equivalent of the American CIA, has been booted out of his job on the orders of chancellor Angela Merkel, two years before he was officially due to retire. No reason for the leadership change was disclosed

[http://qz.com/671383/germany-has-sacked-its-spy-chief-but- ha...](http://qz.com/671383/germany-has-sacked-its-spy-chief-but-hasnt-said- why/)

</comment><comment><USER10> Virus claims german nuclear power plant run down by underfunded operators. "Cant spread, if you are all on old breaking down hardware on outdated systems that nobody bothers to update." says virus.

</comment><comment><USER27> Mandatory Simpsons quote:

Homer: "NUC-U-LAR"! IT'S PRONOUNCED, "NUC-U-LAR."

[https://frinkiac.com/meme/S09E19/665197/m/Ik5VQy1VLUxBUiIhCk...](https://frinkiac.com/meme/S09E19/665197/m/Ik5VQy1VLUxBUiIhCklUJ1MgUFJPTk9VTkNFRCwgCiJOVUMtVS1MQVIuIg==)

</comment><comment><USER28> Stuxnet coming to mind.</comment>


Regression Test Automation Strategy in 8 Steps - <AUTHOR> https://www.leapwork.com/blog/regression-test-automation-strategy <comment><AUTHOR> Why it pays off to take a strategic approach to regression testing There isn't necessarily one right approach to regression testing, but you can save your team a lot of time and resources by thinking the process through from the start. This will not only help increase output quality while containing costs.

How? By moving away from a reactive, put-out-fires-approach, and toward a strategic, plan-and-execute approach, you essentially decide to spend a few hours up front on deciding how you want to go about your regression testing, instead of spending weeks on programming later.</comment>


Hackers hack and delete websites of prominent tech blogger Amit Agarwal - <AUTHOR> http://thenextweb.com/insider/2012/07/01/hackers-hack-and-delete-websites-of-prominent-tech-blogger-amit-agarwal/

<comment><USER2> That's not cool bro, hacking and deleting, pff

</comment><comment><USER3> Very sad news...

</comment><comment><USER4> The world could use less jerks who when they see someone building a sand castle proceed to stomp all over it, and these jerks weren't even brave enough to show their faces.</comment>


Parsing Date in JavaScript - <AUTHOR> http://simplified.me/javascript/development/cross-browser/2014/02/10/js-date-as-string.html

<comment><USER2> Moment.js has the unfortunate property that it will recognize many non-dates as dates, so it's not much good for validation. For example: `moment("cats 123 <3!!!").isValid()` returns `true`. I have yet to find a date parsing library that will correctly reject this input.

<comment><AUTHOR> I always prefer handling all the Date related stuff on backend and avoid relying on JS as much as I can.

<comment><USER2> This is a good idea, unfortunately I've worked on projects recently in which the "backend" is in JS.</comment></comment></comment>


Why developers hate 8 - <AUTHOR> http://www.reactos.org/node/637

<comment><USER2> As a WPF/C# developer it sure _seems_ like Microsoft is trying to ditch their developer base.

It should be obvious to anyone, that when you throw your developer base overboard like that, those soaking wet, pissed off developers aren't going to be inclined to swim to your "new" boat.

<comment><USER3> Unfortunately things in reality aren't going like that. It was hard for me to accept the idea that a company might dare to charge developers for "developing rights" (or something similar), yet Apple did that, didn't it? It seems that the (lack of) courtship and respect isn't a primary driving factor for people in such scenarios, money is. What Microsoft doesn't realize though is that their new boat isn't filled with gold (yet) to count on a gold rush.</comment></comment>


How to hire a lot of talented people, very quickly - <AUTHOR> http://ryanleecarson.tumblr.com/post/23990414000/how-to-hire-a-lot-of-talented-people-very-quickly

<comment><USER2> I am running a bootstrapped start-up (by choice). We pay salaries to 5 people (three MIT EECS grads, one Berkeley CS). I think these people are very good. From my prospective, if you operate without VC money, I.e. from the actual revenues that you get, what's described in the post is irrational exuberance. It's a sign of a VC investment bubble. We absolutely could NOT work 4 days a week and remain competitive ( we could not even run the existing service that way, with user all complaints, attack threats, vendor interactions, hardware failures).

<comment><USER3> I'm a member of the product team at Treehouse, and was employee #3. We don't go around talking about the 4 day work week because it's something that we think is a great gimmick that we were fortunate enough to be able to pull off because we hit the VC lottery. It's something at the core of who we are as a company and something we've seen help us compete - not only in hiring but also in productivity. We see a huge benefit in rest, fresh thinking, and a healthy balance between our work and the rest of our lives. The 4 day work week builds that into who we are. It's not the only way to achieve those goals, but one of the primary ways we pull it off.

We've been working the 4-day work week far longer than we've had VC money. Our first investment came in the fall of 2011, long after we existed as a company, and we were profitable prior to raising VC.

<comment><USER4> So how do you address the points made in the GP post? Specifically, attacks, hardware failures, other issues that immediately impact customers? I assume that you don't wait until monday to address a failure that occurs thursday night, right?

<comment><USER3> When it comes to keeping the service running, there's always one person on call. We're really flexible on our team about hours, so if you need to do something on Saturday night you can cut out a little early a different day - honestly if you feel done for the day you can be done any day, but most of us are super driven and don't want to stop working when it's time. Despite the general 9-6 guideline we're not super formal about our hours.

Our support team also works a bit on the weekend (around 3 hours per day), and that's something we're working on fixing by adding to the team.

<comment><USER5> Are you saying that in general people work more than 32 hours a week? What is the average number of hours you work each week?

<comment><USER3> I work between 32 and 35 hours each week. I think about Treehouse a ton more (if I'm not asleep I've probably thought about Treehouse in the past couple of minutes), and answer email from time to time, but I don't know anyone who doesn't do that, and I usually get mean looks from my wife when I spend much time outside of my normal work hours answering email or playing around with code.

In general I don't think people on our team work more than 32-35 hours or so. One exception is our support team, and that's something we're working on remedying.

</comment></comment></comment></comment></comment></comment><comment><USER6> First of all, I'd like to congratulate Ryan Carson on the idea of 4-day work week. Hopefully this would start the ball rolling on the whole discussion of work/life balance here in the states. It is such a great concept and I'm sure will attract a lot of top talent.

The only thing is, it needs validation. I hope the company does really well in the long run, and therefore puts 4-day work week on the table for others to follow. Wouldn't that be great...

<comment><USER7> I'm not sure how sustainable this 4day work week will be. Will it last the acquisition? Imagine buying a company that either makes your existing employee unhappy, make you lose the talent you just got, or forces you to convert the entire company into a 4 day week operation.

<comment><USER8> Two comments, you assume they intend to be acquired, and why optimize for something that late stage when you are trying to remain an competitive edge? (The edge in this case is a skillful happy workforce)

</comment></comment></comment><comment><USER9> I don't think the 4-day week makes sense. Once everyone switches to 4 days, what then? 3 days?

I think limited hours per day makes more sense. People can be laser focused for 5 or 6 hours per day if you give them a good work environment. Once you move to the usual 9 or 10 hours per day, personal life gets in the way and people goof off, achieving as much productivity as in the focused 5 hours.

<comment><USER10> > I don't think the 4-day week makes sense. Once everyone switches to 4 days, > what then? 3 days?

You could say the same about lowering prices: "why should I lower my prices to $X, what's next, $X-1?" If it gives you a competitive advantage, and yet you are still able to profit and succeed, then the economics of it make sense.

<comment><USER11> <http://en.wikipedia.org/wiki/Slippery_slope> ?

</comment></comment></comment><comment><USER12> Let me start by saying that I don't know anything about Treehouse or their profitability... but based on that benefit list, they're either REALLY profitable or they've got a bunch of upfront investor money to burn through.

Given how young they are and that their investor list includes the likes of Kevin Rose and Reid Hoffman, I'm going to go with the latter.

I operate a small ecommerce company with about 15 employees that include everything from developers to warehouse workers. There's no way I could sustain such benefit list and I know none of my competitors could either. There's just not a high enough margin (and we're in a high margin business).

The answer might be that a company whose product is "knowledge work" might be in a different boat, but it really makes me wonder if you can sustain that kind those kinds of benefits when you're standing on your own two feet.

<comment><USER13> We were profitable before we raised any money.

Now that we've raised $5m, we can increase our burn to outpace our revenue to speed up customer acquisition and product development.

<comment><USER12> Well then congrats to you sir. When a company can manage that kind of profit, it's nice to see them using those resources to invest in serious talent for the long haul.

<comment><USER13> Gracias

</comment></comment></comment></comment><comment><USER14> It's great that they are having success with the 4 day work week.

However, one thing that would still appeal to me more though as a developer would be the ability to work remotely.

It's surprising even to me that I'd rather do 20% more work for the same money if it's at home!

I also suspect this would make it easy to 'hire talented people, very quickly' as it opens up the whole world to you in terms of candidates.

What are your thoughts on this Ryan?

<comment><USER13> A lot of our Product and Marketing Team Members work remotely. The only folks required to be at our Orlando office are the Video Pros and Teachers.

<comment><USER11> How often are they required to travel to your head offices for face to face meetings?

<comment><USER13> We have a huge company-wide meeting for a week, every quarter.

</comment></comment></comment></comment><comment><USER15> Money, it grows on trees and its great for balling up and hurling toward people.

</comment><comment><USER16> I like this approach, it is very straightforward and allows for easy internal collaboration. Obviously, buckets visualize the amout of people in different stages of your hiring process very well. If I had to hire people, I'd try this instantly.

Edit: I have to apologize. I overlooked that the names are made up, so the following statement is incorrect. Sorry Ryan!

Sadly, I have to whine about some privacy issues: I don't approve of Ryan Carson's publishing the names of his applicants how it can be seen in the screenshot at [1]. I'm quite sure these are real names beloging to their applicants, and I wouldn't like to see my name published when I'm applying for a position at this company. On top of that, I would feel sad to see that my name had been greyed out but Person XY has advanced to the next stage.

Perhaps it is better to anonymize the information as I suspect it was not Ryan's intention to publish these names.

[1] <http://media.tumblr.com/tumblr_m4s36gOUJz1rneiz8.png>

<comment><USER3> As someone with access to the Treehouse's real hiring board I can say that those aren't real names :)

<comment><USER16> Oops, sorry for the mistake. Its time to get off the computer I suppose :) Thanks!

</comment></comment></comment><comment><USER17> We've been doing four-day weeks since 2008, with two offices in Australia and remote team-members in Berlin and the Phillipines. Apart from the obvious 50% more weekend for 20% less work, and the flexibility to work from anywhere, doing it this way has a less-tangible benefit: it requires and inculcates discipline and responsibility. Your attention is like a gas: it'll diffuse to fill the space available. Timeboxing your energy provides more work potential -- and your downtime is more productive too.

It's also a great talking point with clients. The 4DWW is gaining traction in the wider world: I was interviewed this week on dot-au national television to talk about it.

</comment><comment><USER18> Also, move to a "developing" startup market, like Portland, where a Treehouse is one of the top 5-10 startup employers, vs. SF or Silicon Valley, where you are competing with a lot more startups, and where the Giants (FB, Google, Palantir, ...) are stronger competition than the giants in Portland.

(and living on 50-60k in Portland is fine even if you have kids; it is poverty unless you're either long established (own a home from the 1990s, or cheap rent), or alone. This opens up a lot more potential hires for non engineering roles)

<comment><USER19> Everyone is competing with Silicon Valley for talent, regardless of where you are.

<comment><USER18> True for the high end (where it's worth relocating), but not for any of the jobs I've seen posted on treehouse's site.

</comment></comment></comment><comment><USER20> Reading this post makes me fear for a bubble -- when I read stuff like this it brings me back to 2000 all over again: "401(k) contribution matching, 100% matching up to 6% of your salary + Full coverage for medical, dental, and vision". I'll grant you that this isn't quite on the level of "your own private sushi chef" but it makes me uncomfortable that a company that's a startup would do this. I realize that good talent is hard to find, but this scares me...

<comment><USER13> What's more expensive?

1) Paying $20k-$50k to a recruiter, per person 2) Taking good care of your team so you get tons of applications for every job opening, from very talented people

Keep in mind that there's also a huge cost to attrition. Every person that leaves your company, because the culture is so-so, costs you a huge amount in time and cash resources to replace

</comment></comment><comment><USER21> Additional step: Write a post like this and have it make the front page of Hacker News

<comment><USER13> Guess that always helps :)

<comment><USER21> I have to admit it caught my interest and I am not even really looking at the moment

</comment></comment></comment><comment><USER22> > we're about to hit 40 people at Treehouse and we'll be at 60 in three more > months. There was only seven of us 12 months ago, so we've grown very fast.

For a small company that's growing this quickly, it's probably going to take more than 12 months to know for sure if a hire is good or not. Declaring them as good does not make them so. I'd be interested to see a follow up post 12 months from now giving an update on retention rates and any hiring process updates they've subsequently made.

<comment><USER13> Treehouse is my fourth company and I've been running a 4-day week with all my teams since 2007.

I have a pretty good sense, based on experience, whether someone is a good hire or not. You often know within 30 days.

<comment><USER22> Major props on pulling off the 4-day week. I hope it catches on.

My criticism was limited to your early declaration of victory on your hiring binge. The bottom line is that you can't know if someone is going to end up ROI positive until they actually get there. After 30 days you can tell if someone is a good dude and they can get stuff done, but you can't tell if some other company will come along in 2 months and poach him. Shit happens.

By building a strong culture you are taking good steps to minimize the chances of losing people, but you won't really know if you've succeeded with these hires until they are a net positive.

<comment><USER13> You shouldn't hire someone unless they are going to add value to the business. If you're not sure about that then you shouldn't be giving them a job.

<comment><USER22> But hiring comes at a cost. Recruiting, on boarding, and getting new employees up to speed all cost money and resources. My only point is employees need to stay long enough to recoup those losses.

</comment></comment></comment></comment></comment><comment><USER23> Interesting they don't hire any technical talent it seems, or am I missing something?

        Product
        Marketing
        Sales
        Teaching
        Video

If that's the case (which I'm now doubting considering what they teach) I can only see the bottle neck being onboarding. It can take a lot of effort and time to get one developer up to speed, never mind dozens of them in a matter of months.

<comment><USER24> Product encompasses the overall engineering / design talent.

<comment><USER3> That's correct - product for us includes development, design, and support.

</comment></comment></comment><comment><USER25> I'm very happy to have found your blog. I'm also happy to see a company focusing on what's important... gaining that elusive talent.

I am currently just starting to use treehouse to train a group of new grads for the company I work at. I'm very impressed with the site.

@Ryan : if I was in your region, I would so be applying for a job ;)

<comment><USER13> Thank you! :) We're working really hard to improve the service as fast as we can.

</comment></comment><comment><USER26> How does the 'Project Trial' work for people who have full-time jobs already? I am sure it is great for evaluating those who are able to commit to such a thing, but aren't you leaving potentially valuable team members unable to pass muster due to time (rather than lack of fit) reasons?

</comment><comment><USER27> Nice benefits indeed.

</comment><comment><USER28> I would prefer to have to be 5 days a week in the office, but only have to work for 4 days. One day should be dedicated for your own projects. Whatever you want, but, in the office.

<comment><USER13> That's no good for people who have interests outside of the office. For example, I have two young boys and I want to spend my time with them on a Friday, not in the office.

<comment><USER28> Well, it should't be a day off, you should do something that has to do in general with what you do at work if possible. I haven't though about it that much, it was just an idea. If you get the day off, most people would probably just do what they want and "waste" the day (which means not being productive).

<comment><USER29> Been there. Most people are not motivated enough to do something like that, and it ends up feeling like a chore. In that case it's more productive to not be at the office.

It makes some kind of sense: boxing the time for creativity ends up killing it.

<comment><USER30> > boxing the time for creativity ends up killing it.

John Cleese argues the opposite: <https://www.youtube.com/watch?v=VShmtsLhkQg>

From the rest of your comment, it seems to me that the feeling that it's a chore might be more the reason it kills creativity - not the setting aside time in and of itself. If you don't look forward to that time (not saying that's a bad thing, one way or the other), you probably won't get much out of it.

<comment><USER29> What I meant is that it can feel like a chore because it's something 'imposed' by the company. You _have_ to do creative work on xxdays - doing it any other day is a waste, 'cause xxday is the alotted time - and it _has_ to be related to your job, otherwise it's a waste too. It's not a very happy proposition, as good as the intention may be.

</comment></comment></comment></comment></comment></comment><comment><USER31> Spend VC money like this, work 4 days a week and then finally go down. !! :(</comment>


Why Tech Professionals Now Share a Fate with the Working Class - <AUTHOR> http://www.fastcompany.com/3057502/the-future-of-work/why-tech-professionals-now-share-a-fate-with-the-working-class <comment><USER2> That moment when tech workers realise that they have been working class all along

<comment><USER3> Which is why I always chuckle when tech workers fight labor regulations or unions.

You are not a temporarily embarrassed millionaire. One day you will be old, and it will be harder to find work. Or you will be discriminated against without recourse. Or your employer will try to work you beyond what they're paying you for. Or you will have a wife and family you want to spend time with outside of your job.

Organized labor was never about protecting the mediocre. It was about providing labor with negotiating power against capital.

<comment><USER4> You never stop to think that you can be pro workers right and still against unions? I don't want whole businesses pretending they're for workers right. The cost of union is resources that could be spent on workers themselves.

You need to look into the millions union repa spent on themselves. Read up on recent scandals in Sweden for instance.

I generally don't tolerate admin-work, so I might be connecting here.

<comment><USER5> > _You never stop to think that you can be pro workers right and still against > unions? I don 't want whole businesses pretending they're for workers right. > The cost of union is resources that could be spent on workers themselves._

Most of the stuff you take for granted in your work, including children of 10 years old not working in factories, you had it because of unions...

> _The cost of union is resources that could be spent on workers themselves._

Only without unions, nobody cares about the workers. It's then just the measly bargaining power/influence you have as an individual against some huge company, or a whole industry (or all industries combined, when speaking of basic labor laws).

Now, if you want to say some unions are corrupt, union leaders make side deals, etc, some fight for BS, yes. But that's a sign that unions are broken, not that they are bad in themselves. Historically their role for the improvement of labor conditions was tremendous.</comment></comment></comment></comment>


Handy Tips for the Arduino/Electronics Hacker - <AUTHOR> http://blogs.nyu.edu/blogs/as860/iameat/tips/

<comment><AUTHOR> This tip has seriously helped me get my XPORT back on track: 'Arduinos can be substitute USB to serial devices'.

The magic is here: '... I hooked up the Arduino's RX/TX to the XPort's RX/TX pins (must be reversed, a.k.a. RX to RX, TX to TX)...'

Enjoy.</comment>


Kick start your career via internships at growing tech startups. No resume - <AUTHOR> http://intern.devdraft.com/?utm_source=hackernews&utm_medium=main&utm_campaign=initial_2

<comment><USER2> The idea looks great. Do you have some actual success histories to share?

<comment><AUTHOR> There are some posted on the website: devdraft.com. Probably the best is to look at the testimonials.</comment></comment>


The New Gold Rush: E-Waste Recycling - <AUTHOR> https://www.bbc.com/news/business-44642176 <comment><USER2> Just don't follow Eric Lundgren to prison over this.

* [https://www.theverge.com/2018/4/27/17286810/e-waste-recyclin...](https://www.theverge.com/2018/4/27/17286810/e-waste-recycling-microsoft-eric-lundgren-prison-restore-discs)

* [https://www.washingtonpost.com/news/true-crime/wp/2018/04/24...](https://www.washingtonpost.com/news/true-crime/wp/2018/04/24/recycling-innovator-eric-lundgren-loses-appeal-on-computer-restore-discs-must-serve-15-month-prison-term/?noredirect=on&utm_term=.f9876773fbce)

</comment><comment><USER3> Literally just met someone for the first time yesterday who is moving to Texas to do this.

Apparently, the refresh rate for cloud data centers is now getting down to 2 years or less. Easier to expand by replacing instead of leasing new space. This, combined with how environmentally conscious the big cloud companies are, has led to a big demand in IT Asset Disposal services. Also obviously there are security aspects in play here.

In PW Singer's novel about war with China, pretty sure this was a big plot point when imports of microchips stopped and regular citizens had to donate their iPads and what not to be stripped of valuable material.</comment>


Ask HN: What proprietary / SaaS product do you wish was open source? - <AUTHOR> The recent post on Supabase (https://news.ycombinator.com/item?id=23319901), an open source equivalent of Firebase got me wondering what other proprietary / SaaS solutions there are that should have an open source equivalent? <comment><USER2> I don't think things should be open source just for the sake of it. Because open source means different challenges: \- who work on it? \- on which time? Personal free time? \- will it be sustainable in the long term? \- is a company supporting it? \- will the company support it in the long term? And so on...

We can see many open source successful projects supported by a community of volunteers. But also lots of open source projects which were supported by companies but are nearly abandoned.

My opinion is that companies should open source most of their software and dedicate employees time to open source projects. There are multiple benefits: \- employees learn to work in public, and reach high level of code and documentation quality \- employees improve their soft skills \- company get free developer relations marketing (something like this) ...

So I wish all products were open sourced :)

(By the way I open sourced my API mocking tool some years ago ([https://mockoon.com](https://mockoon.com)) and it has been the best decision of my developer life)

</comment><comment><USER3> datomic [https://www.datomic.com/](https://www.datomic.com/)

darklang [https://darklang.com/](https://darklang.com/)</comment>


Martin Personal Jetpack approved for manned test-flights - <AUTHOR> http://www.afp.com/en/node/1034390 Aviation regulators have issued a permit to fly with human pilots. <comment><AUTHOR> Here is a video posted in 2011 of them doing a test flight with a dummy going to about 5000ft[1].

[1] [http://www.youtube.com/watch?v=SHPedpE70Es](http://www.youtube.com/watch?v=SHPedpE70Es)</comment>


Show HN: Sandglass – Distributed, scalable, persistent time-sorted message queue - <AUTHOR> https://github.com/celrenheit/sandglass <comment><USER2> It triggers my eyebrow when a highly available message queue offers either exactly-once delivery or reliable time sorting.

I'm not saying I wouldn't give this project a closer look, but I would much rather a product make it painfully obvious what compromises were made to offer its availability.

My instinct is: either you need strict constraints on ordering and delivery, in which case you use rabbit, or you need at-least-once-no-matter-what semantics, in which case you use something else and make your app less fragile.

<comment><USER3> Hey, what would "something else" be in this scenario?

<comment><USER2> Usually it would advertise "at-least-once" somewhere prominently, like SQS, NSQ, etc.

It's really hard to be extremely available and to also guarantee there won't be dupes or out-of-order messages. Like databases, someone saying they offer both is usually hiding a trade-off.

EDIT: I think here "really hard" is a polite way of saying "impossible"

</comment></comment></comment><comment><USER4> Looks interesting, might be a good replacement for the more enterprise messages/queue systems that have all the typical ack/redelivery/scheduling features as seen here.

It's worth mentioning the new Apache Pulsar messaging system which can replace Kafka with pub/sub and queueing semantics while providing better scalability and per-message acks, probably better suited to those who want a combined system.

<comment><USER5> I checked out Pulsar and got completely lost in the multiple hierarchical Zookeeper clusters.

<comment><USER4> Pulsar supports multiple regions natively which requires separate Zookeeper clusters for each region to manage the global and local cluster state (ie: replicating messages from DC1 => DC2 but not DC3).

If you dont need/want that, then its just a single ZK cluster as with Kafka or anything else. ZK + Brokers + Bookies = Pulsar.

</comment></comment></comment><comment><USER6> This looks promising.

I'm currently dealing with a queuing-related issue.

I have a series of tasks running across servers that consume from a queue and run a task.

Often, these tasks die mid-execution (but can be resumed by any other server). So, the queue is a database, and the running tasks "touch" a timestamp in the database if they are still executing. When a database document hasn't been updated for a while, the "consumption query" makes it so that it is 'redelivered' to an available server listening to the "queue".

Of course, this is subpar, but we haven't yet come across an elegant (and not too over-engineered) way to replace this.

<comment><USER7> > we haven't yet come across an elegant (and not too over-engineered) way to > replace this.

It's built into some RDBMS. SQL Server has READPAST [1, 2], so you can do:

        BEGIN TRANSACTION;
        DELETE TOP (1) QueueTable WITH (READPAST) OUTPUT deleted.* ORDER BY QueueId;
        -- Do your work
        COMMIT TRANSACTION;

And if your process dies midway through, the transaction is rolled back and the row is immediately visible to another worker.

[1] [https://docs.microsoft.com/en-us/sql/t-sql/queries/hints- tra...](https://docs.microsoft.com/en-us/sql/t-sql/queries/hints-transact-sql- table) _READPAST is primarily used to reduce locking contention when implementing a work queue that uses a SQL Server table. A queue reader that uses READPAST skips past queue entries locked by other transactions to the next available queue entry, without having to wait until the other transactions release their locks._

[2] [https://docs.microsoft.com/en-us/sql/t-sql/queries/output- cl...](https://docs.microsoft.com/en-us/sql/t-sql/queries/output-clause- transact-sql#queues)

<comment><USER8> Also known as SKIP LOCKED (Oracle, PostgreSQL, MySQL).

</comment></comment></comment><comment><USER9> These buzzword product descriptions are terrible. Documentation should say first, what does this piece of code do and when should I use it. The actual rationale for this project is buried down in the middle of the documentation with a sparse 3 sentences.

> The first is to be able to track each message individually (i.e. not using a > single commit offset) to make suitable for asynchronous tasks. > The second > is the ability to schedule messages to be consumed in the future. This make > it suitable for retries.

That's a start - I'd love to see how did you solve the problem? How your solution compares to other similar products? Why should I care about stuff you are mentioning? It is not an issue of not mature product - I think one should _start_ with defining exactly and precisely what is being solved here.

When solving a technical problem you always have to tailor your solution to a specific set of requirements and it is never like: "distributed, horizontally scalable, persistent, time sorted message queue." So please stop using such buzzwords.

<comment><USER10> Those aren't buzzwords, when used right. It's dense searchable technical terms and are perfect for title. Do you think title should consists of two paragraphs?

<comment><USER11> I think that product pages should clearly communicate what the product is to the intended audience. These are 100% buzzwords, so the message I get is, "you will need to spend more time with this project to see whether it is worth looking into".

The most convincing technologies have clear, simple value that's immediately apparent (like zeromq not needing a central coordinator/exchange), or some real-world use-cases which have been improved by using this technology (actual, already-happened use-cases, not hypothetical: I'm more convinced by words from people who've integrated with the product rather than the authors + their innate bias).

I would have put the title as, 'open-source proof-of-concept messaging queue (Go, single author)'

</comment></comment></comment><comment><USER12> Aphyr's Jepsen or it didn't happen :-)

</comment><comment><USER13> Seems similar to faktory ? [https://github.com/contribsys/faktory](https://github.com/contribsys/faktory)

<comment><USER14> Obligatory plug of my own job queue in Go: [https://github.com/RichardKnop/machinery](https://github.com/RichardKnop/machinery)

<comment><USER15> Faktory is CouchDB, Machinery is Redis/Memcache/MongoDB, Sandglass is a custom Raft on top of RocksDB…

I'd love to see comparative stress tests, Jepsen-like, to assess the ability to survive partitions, corruption, node restart and node loss, to better estimate the probability that a job gets lost.

<comment><USER14> Machinery is basically a Go implementation of celery (popular Python task queue).

It has two core components: broker (AMQP or Redis supported) and backend (Memcache, Redis or MongoDB or even no backend if you don't care about storing task states).

I think comparison with Sandglass would not be valid as Machinery is a higher level job/task queue while Sandglass is a lower level library (basically a message queue such as RabbitMQ which would be just a component of Machinery).

Faktory vs Machinery could be compared as they are on more or less same level of abstraction.

</comment></comment></comment></comment><comment><USER16> I would think the imminent Redis streams data type would provide this better. It is battle-tested and allows great customisation to a range of use cases.

<comment><USER17> How can it be both imminent and battle-tested?

</comment></comment><comment><USER18> What does Sandglass use for persistence? Is it using something like Rocksdb under the hood or is the WAL and VL "homegrown"?

<comment><USER19> It seems like it uses rocksdb for persistance.

[https://github.com/celrenheit/sandglass/blob/dev/storage/roc...](https://github.com/celrenheit/sandglass/blob/dev/storage/rocksdb/rocksdb.go)

</comment></comment><comment><USER20> Nodejs sever? Segfault will cause data loss.

<comment><USER21> er? This appears to be all Go, but regardless, dunno how a segfault means more or less dataloss for Node than for anything else?

</comment></comment><comment><USER22> Why does everyone keep alluding to this replacing kafka? If anything this is more similar to RabbitMQ.

</comment><comment><USER23> How does this compare with NATS?

<comment><USER4> NATS is a purely pub/sub system. It has no persistence or messaging queuing semantics outside of a "queue group" which is a simple round robin delivery of messages sent to a topic.

<comment><USER24> Note: There is NATS streaming [1] which implements persistence and redelivery.

[1]: [http://nats.io/documentation/streaming/nats-streaming- intro/](http://nats.io/documentation/streaming/nats-streaming-intro/)

[2]: [https://github.com/nats-io/nats-streaming- server](https://github.com/nats-io/nats-streaming-server)

</comment></comment></comment><comment><USER25> Looking good. Question is how is it going to convince people to move over from Kafka.

<comment><USER26> > Question is how is it going to convince people to move over from Kafka

That's a bit unfair given that the project didn't mention Kafka in it's README and different products have different suitability at different scale and this could simply be a "if your traffic is low and you need this functionality, this will suffice" thing or just an academic interest in producing an ordered distributed message queue.

But as you're asking: Proven ability to consume ~5+ million messages per second with a similar or less hardware requirement than Kafka and high reliability. Well document set of edge cases / compromises where applicable and a high degree of observability. Well understood operational requirements, and SRE runbooks (or just a lot of Github issues that go into how to handle various scenario). An active community of people to assist, and more than 1 committer.

That's the "off the top of my head" thing. YMMV.

<comment><USER27> I have no opinion about each of these projects, but his caught my eye:

> Well document set of edge cases / compromises where applicable and a high > degree of observability. Well understood operational requirements, and SRE > runbooks (or just a lot of Github issues that go into how to handle various > scenario). An active community of people to assist, and more than 1 > committer.

Are you talking about Sandglass or Kafka? Because Sandglass seems 3 months old, has 1 contributor and is featured here as "Show HN"... So it probably isn't as mature solution as Kafka is. Or am I missing something?

</comment></comment></comment><comment><USER28> this is awesome, is it meant to replace kafka ?

<comment><USER29> No:

The first is to be able to track each message individually (i.e. not using a single commit offset) to make suitable for asynchronous tasks.

The second is the ability to schedule messages to be consumed in the future. This make it suitable for retries.</comment></comment>


"Last Train from Hiroshima" author says he was duped - <AUTHOR> http://www.nytimes.com/2010/02/21/books/21hiroshima.html?ref=todayspaper

<comment><USER2> _"This book is a Toyota," said Robert S. Norris, the author of "Racing for the Bomb" and an atomic historian. "The publisher should recall it, issue an apology and fix the parts that endanger the historical record."_

Some people in my neighborhood are going to get dragged over the coals tomorrow morning (again) for the first five words of this quote.

<comment><USER3> I was going to comment on that line, too.

However! This kind of coinage dates quickly. In 2000-2001, people started using "Nasdaqed" as a verb for "dropped precipitously." ([http://archives.econ.utah.edu/archives/a-list/2002/msg00256....](http://archives.econ.utah.edu/archives/a-list/2002/msg00256.htm)). It died after a while, even though the Nasdaq is still below where it was when people started using the term.

</comment></comment><comment><USER4> Wow, that's some surprisingly shoddy fact checking. And how do you miss running this past a group of veterans from the unit that dropped the bombs when they're even putting out a regular newsletter?

</comment><comment><USER5> _Thank God he's not alive. He was so proud._

I often hear that, regardless of whether or not I agree with any particular war, the world needs more men willing to "stand up for freedom". I think the world needs less men who are willing to kill just because someone else told them it was for freedom.

<comment><USER6> How are you so sure he was unaware of, for example, how murderously brutal the Greater East Asian Co-prosperity Sphere was? Right up to the surrender Imperial Japan was killing six figures worth of people every month.

There are rather a lot of Chinese and Koreans who are alive today because we ended that regime as quickly and decisively as we could. Granted, we did that mostly to save the lives of our own people and so we wouldn't have to do it again, but that doesn't diminish the overall set of benefits.

<comment><USER7> >There are rather a lot of Chinese and Koreans who are alive today because we ended that regime as quickly and decisively as we could.

Didn't we keep supplying oil (something like 70-80%) and steel to Japan throughout the first half of their China campaign?

<comment><USER6> Yes, and we stopped specifically because of their China campaign, which then precipitated the greater war.

What point are you trying to make?

<comment><USER7> That it took 3 or 4 years to do so. That the "thankful" Chinese might have several caveats. Especially since "and we stopped specifically because of their China campaign" isn't exactly true, since in actuality we waited until they attacked a French colony before we put up the embargo.

<comment><USER6> Who's this "we" you're referring to?

"We" aren't a dictatorship, "we" don't turn on a dime and immediately decide to destroy another country. "We" tend to try diplomacy first, "we" had to learn that lessor measures wouldn't work (e.g. the Flying Tigers) and that Japan's behavior towards adversaries had changed since WWI or perhaps was different than it had been with Western ones (e.g. Russia), "we" also included the U.K. and Netherlands (other majors sources of steel and oil).

You're trying to create a moral equivalency that I can't quite figure out this early in the morning but that doesn't make any sense to me, so for now I'll just point out that you want perfection, you're not going to find it in international diplomacy and war.

ADDED: Ah, are you trying to say that because our behavior prior to the war was imperfect, we didn't then have the moral standing to end it in a way that ensured we would be able to make sure it didn't continue in due course, as with WWI -> WII?

FURTHER ADDED: Also remember that at the time we the US were responsible for the defense and general well being of the Philippines and that the costs of any war our action provoked with the regional power would inevitably fall more heavily on its inhabitants.

Our reaction to Imperial Japan's aggression was necessarily not a simple thing.

<comment><USER7> >Our reaction to Imperial Japan's aggression was necessarily not a simple thing.

You might even say full, unabashed praise of it isn't possible without several caveats, while still praising it on the whole.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> That is a pretty significant error. It puts the whole book's accuracy into question because clearly the author didn't do his research thoroughly.

</comment><comment><USER9> Typical. 70,000 killed and people get upset about who was on the plane.

Ah, Bartleby.</comment>


Ask HN: iPad developers, are you lacking a designer? - <AUTHOR>

Hello guys, I've been doing web-design for about 3 years and I'm now looking for a way in to the iPad scene, as this seems more exciting and challenging. I would be able to give out first design for a project as pro-bono, so feel free to try me out.
Some previous examples:
Project 1 - A side-project I am currently developing in django and JS/jQuery for artists and alike. URL: http://orbita.li/disain/mindcast_001_01_1440x900.png
Project 2 - This probably gives better idea on my design/interactive skills. Sorry about the sound though, it's an artist site. URL: http://djcardinal.com/ <comment><USER2> Do you actually have any iPhone/ipad app prototypes you've worked on to show off what you can do? Designing for mobile devices is really different from media or websites.

As somebody else already said, if I'm gonna spend money to bring somebody to work with me, I'll need to know the person is first of all capable of doing something slightly better than I can (and I can't do any design).

You don't need to create a new app from scratch, just select an app in the appstore that sounds interesting to you and try to create a different design. Blog about it, create new mockups, and share that online.. You gotta do some marketing for your work, and the only way to do that is to show what you're capable of.

<comment><AUTHOR> I guess I should've done a bit more home-work before turning to HN.

Thank you for the great advice, this is exactly what I'm going to do.

</comment></comment><comment><USER3> Are you interested in doing Android work? I'm not sure what files you would provide to an iPad developer, but for Android just providing mock ups and graphical assets would be hugely valuable.

It would certainly be more challenging to come up with good designs that work well and look great when the variety of screen sizes and resolutions has to be taken into account.

<comment><AUTHOR> Yes, as long as it features a GUI. I don't own an Android device myself, but this seems like a neat opportunity nevertheless.

</comment></comment><comment><USER4> What kind of rate do you expect to work at? What would the work flow be for this? Are you going to make the xib files and leave it to the programmer to wire it up, or do you have something else in mind?

<comment><AUTHOR> I'm not familiar with the pricing trends in the iPad scene, however, when I am dealing with my clients in web/graphics design, I've been billing for 15-30USD per hour.

I would be producing the design files that a developer could use and put together when producing an app. I am able to code as-well (not for the iPad, though), but in this case I would like to strictly stick to the design process.

<comment><USER5> Am I the only one who thought he is really underpricing himself? Depends on the quality of his work I guess.

<comment><USER6> i thought so too but I guess it depends on location too.

</comment></comment></comment></comment><comment><USER7> Try #ipaddev on Freenode, there are a ton of devs there.

<comment><AUTHOR> Thanks, I will check the place out.

</comment></comment><comment><USER8> I know you mention that you want to break onto the iPad scene. But would you still be interested in doing some web-design work?

<comment><AUTHOR> Sure. What do you have in mind?</comment></comment>


Theories of Everything, Mapped - <AUTHOR> https://www.quantamagazine.org/20150803-physics-theories-map/

<comment><USER2> Wow. Fascinating presentation.

Tangential note: I find creating interactive diagrams like these incredibly useful for discussing complicated fields of study. Right now the best programs we have to discuss ideas is Microsoft Word, which is woefully inadequate.</comment>


Research finds "runner's high" is real - <AUTHOR> http://www.nytimes.com/2008/03/27/health/nutrition/27best.html?ex=1364270400&en=e12b356068fe4baa&ei=5090&partner=rssuserland&emc=rss&pagewanted=all

<comment><USER2> New anti-running legislation introduced in Congress to stop baneful influence on our children.

Running causes horrible leg and knee problems, and people die every single year from overdosing and running to exhaustion! Running is a gateway sport into the even more dangerous sports including soccer and mountain climbing.

</comment><comment><USER3> I remember reading a similar article about the release of endorphins after physically stressful events back in 2005, but after looking for an hour, I can't find the link.

I was under the impression that this was pretty much accepted and understood.

It was an interesting read, nonetheless.</comment>


My Life as a TaskRabbit - <AUTHOR> http://www.businessweek.com/articles/2012-09-13/my-life-as-a-taskrabbit <comment><USER2> What kind of risk/liability does these "employees" generally take? Like washing someone's unlocked car, is the employee liable for any damages or the company? If I'm do carpenting work distributed from TaskRabbit and hurt myself so badly I get disabled, do TaskRabbit have insurance for me? What is the standard for this? One reason why buying services is expensive is that the service provider takes risk and needs to insure their workers, I very much doubt that these TaskRabbit-type companies do that... Or am I wrong?

<comment><USER3> This is a huge point. A single uninsured mistake with an expensive car could potentially wipe out carwashing earnings for months. (See <http://news.ycombinator.com/item?id=4492619>)

<comment><USER2> This could be mitigated by TaskRabbit cooperating with an insurance provider and selling "insured" work. There are great margins on insurance as we all know. In their TOS TaskRabbit basically says "TaskRabbit.com Only Provides a Venue" (check it out: <http://www.taskrabbit.com/tos>). Why don't some retail- insurance megacorp approach them? This could be TaskRabbits no1 source of income instead of their no1 problem...

</comment></comment></comment><comment><USER4> > I call Chris Mok, a top-ranked local TaskRabbit who earns up to $1,500 a > week. Mok was laid off from his job as an art buyer at Macy's (M) in 2009 > and now spends most days, including weekends, on handyman assignments such > as assembling Ikea furniture.

TaskRabbit: Distributed underemployment.

<comment><USER5> Sorry to say but there is no such thing as underemployment. Clearly there are less need for art buyers (or he wasn't good enough to do the job) than there were in 2009, so he has to do something else.

<comment><USER6> People grossly overuse (and abuse) the term unemployment like this.

First, an unemployment rate of 0% is _bad_. This is because not all unemployment is bad.

Frictional unemployment is actually a _good_ thing (to a certain extent), because the alternative is having people stuck doing jobs they don't want when better jobs are available.

Structural unemployment is what happens when $old_industry dies because $disruptive_tech_company changes the market. It's definitely bad for the unemployed (who will never be re-employed in the same field), but it's usually the result of positive improvements to society at large. The 'solution' is that those people losing their jobs need to be retrained to work in another field, which is admittedly difficult, or retire.

Cyclical unemployment is undeniably bad. That's the result of boom-and-bust economies - people over-hiring during bubbles, and then having to lay off en masse when the market contracts. (The problem is largely that the people are being dumped into the jobs marketplace all at once, creating a glut, instead of being more evenly distributed).

The rest - someone who's employed but at a salary lower than what they'd like, or someone who retires because they're laid off... _that's not unemployment_. Someone may dislike it and they may think it's a 'problem' that needs to be 'fixed', but they need to realize that they're talking about something completely different from unemployment.

As for _real_ unemployment, the ideal value is a point of debate amongst economists because it is tricky to measure, but somewhere in the ballpark of 5% is a commonly accepted value for the target 'natural rate' of unemployment.

That is, a sustained, unwavering value of 5% unemployment is actually the target for a healthy economy.

<comment><USER7> The term used was un _der_ employment.

<comment><USER6> Please take the time to read through my comment, and you'll see that I address this - 'underemployment' is a misleading term that not only conflates several distinct concepts but also implies a connection with something that it's not.

It's like using the term 'intellectual property' when discussing the Pirate Party vs. MPAA. Aside from the fact that patents and copyrights are _completely different legal concepts_ , the word 'property' already implies a right to ownership[1] that one side asserts doesn't exist to begin with.

[1] '...inalienable rights... Life, Liberty, and Property' - Declaration of Independence (first draft).

<comment><USER8> Underemployment: how about the difference between U6 and U3? That seems like a reasonable first cut, and this guy seems to possibly fit.

</comment></comment></comment></comment></comment></comment><comment><USER9> I had a bad experience as a TaskRabbit buyer. There was a dispute between me and the task worker as to whether the task was complete. The worker went ahead and marked the task as complete and TaskRabbit deducted my credit card. The dispute resolution process was a convoluted and manual process which I didn't have time for (which is why I was using TaskRabbit in the first place). It wasn't a huge amount of money so I let it slide.

I can see why TaskRabbit might be biased towards paying for the task automatically after the agreement has been entered, the alternative would be to make it easy for the buyer to screw the workers over, but it seems like they probably need an easier dispute process or they'll lose the buyers, I know I'm not using them again. I guess the worker ratings is supposed to help with this but I couldn't quickly figure out how to rate the worker and TaskRabbbit didn't make it easy by sending me an email about it or something like that, so I just gave up.

<comment><USER10> At Airtasker (an Australian competitor) we take the approach that it'ds an open marketplace and both sides need to confirm that the task is complete before money exchanges hands. We've found it's very, very rare that the buyer will "screw over" the runner.

Also it seems much easier for us to scale up new runners than it is to get more task posters.

It's super fun working for a startup that is focused on real-world interactions. Situations like the one you describe are difficult to deal with and definitely highlight the value of good community management and customer service. It's a shame that TaskRabbit let you down. Maybe in the future if Airtasker expands to the US you can give us a try :P

Disclaimer: if it wasn't obvious I work for Airtasker.

</comment></comment><comment><USER11> My view on this is this is another example of a free market system of supply and demand. If you have an individual willing to spend money on having their lunch delivered or their car washed without moving a muscle, and on the other side you have someone that is willing to do the work, then it is win win.

<comment><USER5> Its is better than than. It is the answer whenever somebody comes around and complains that software is destroying jobs and not creating new ones.

</comment></comment><comment><USER12> I became a task rabbit almost three weeks ago. I have bid on at least thirty jobs. I have spent a total of 5 hours checking the site for jobs. I have not been assigned one task. I have applied for several graphic design gigs. Most people want a logo designed for thirty to fifty dollars. Some people want ebooks created from word documents for under a hundred dollars. The hard labor tasks is where the money is. Those jobs depend on bidding low and fast.

It is an interesting place. There are many companies that use TaskRabbit as their recruiting agency. They post jobs that require to sign up on their websites.

Overall, I have to stop wasting my time on it. I intern(unpaid) at a startup that was planning on using TaskRabbit as delivery service. I thought it would be good (could be fun) income.

edit: this is from my experience in Chicago

<comment><USER13> _Most people want a logo designed for thirty to fifty dollars. Some people want ebooks created from word documents under a for hundred dollars._

I would expect those prices too if I went through TaskRabbit. I wouldn't expect the designer to be a top professional. I'd be looking for a deal.

My advice (and I've been working freelance for about 7 years) is to brand yourself as a top shelf designer and never offer your services on outsourcing websites. Go hyper niche instead in a category where you have some contacts and can get work fast.

If your designs are amazing, word gets around. Pretty much all new business I get is from word of mouth.

</comment></comment><comment><USER14> The one thing I have always wondered -- how would these companies scale ? These models work well in areas with a high population density (eg: SF, NYC, major city downtowns etc.). How well will they work when they spread out to the suburbs ?

<comment><USER15> What's wrong with most of their users being in the major cities? Look at Craigslist.

<comment><USER16> When you sign up as a hiring person, they only have a few major cities you can sign up in. I don't reside in any of those cities, so despite having work for people, I have no use for the service, at least not yet.</comment></comment></comment>


Problems with TypeScript in 2020 - <AUTHOR> https://www.executeprogram.com/blog/problems-with-typescript-in-2020 <comment><USER2> TL;DR: "TypeScript sucks because JavaScript sucks - namely buggy development file-watchers and npm - and some @types packages for more obscure npm packages are inadequate."

If that's the worst people can levy at TypeScript I'd say it's a pretty danged good language.

What I hate about TypeScript is that it's made me feel that all other programming languages' type systems are inadequate in comparison (union and intersection types, Utility types, immutable and read-only views of existing objects, type guards for duck-typing, etc).

<comment><USER3> As a relatively new programmer, I'm kinda of baffled it took up to now to have these features in mainstream programming languages, but I certainly lack a huge amount of historical context.

<comment><USER4> To some extent a lot of these ideas are still "new", comparatively, to type systems.

It's also easy to argue that Typescript (and Flow, not to ignore its contributions to the space) happened upon exactly the right sort of evolutionary conditions to both need a lot of the complicated features and present them in such a way that they appealed to a "mainstream" audience: a very dynamic base language with a giant corpus of highly varied real world usage, and a growing need for practical "taming" for large real world applications by large corporations (with vested programming language interests).

It's a credit to Typescript (and to Flow as well) that a lot of the complexity in its type system, often designed as best as it could to handle describing the complexity of real world Javascript usage, seems after the fact as "perfectly natural" enough that now in retrospect people start to wonder why more languages don't adopt the same ideas. Sometimes the simple answer is "because they weren't forced to in order to scratch a present need". As people have access to the tools it becomes easier to see "oh, this complex thing that solves this need over here becomes a useful thing to better these nice-to- haves over there".

</comment></comment></comment><comment><USER5> My path to happiness is to only use TypeScript in projects that are built from the ground up to use it, otherwise I rather stay with JavaScript than dealing with library integration issues.</comment>


Russia Passes Bill Banning Proxies, Tor, and VPNs - <AUTHOR> https://www.bleepingcomputer.com/news/government/russia-passes-bill-banning-proxies-tor-and-vpns/ <comment><USER2> Ethics aside, how would this be implemented? The article says that ISPs have to "implement blocks", but is it even possible to block VPNs and TOR with deep packet inspection? Wouldn't that also hit a lot of false positives for SSL/TLS sites? The article also doesn't mention if there are exceptions to be made for corporate VPNs.

Which leads me to wonder if the next step might be to prohibit SSL/TLS for any site that doesn't have a government-approved certificate. "To make enforcing the VPN ban easier".

<comment><USER3> The idea is probably not to prevent proxies, Tor and VPNs, but rather to give the government a tool with which to prosecute those parties it wants prosecuted - which may very well include ISPs as well.

<comment><USER4> This is, in fact, how corruption in Russia generally works. The laws as written are onerous, and then the enforcement arm of the government sets up a market in unofficial permission to flout those laws.

</comment></comment></comment><comment><USER5> What about using a VPN for the sake of data security or simply to access an internal network, like for example a company that you work for? I have a VPN and that's all I use it for, never for anything malicious or would be deemed inappropriate. A sweeping ban seems unnecessary and a bit misguided.

<comment><USER6> Pretty sure they only ban public VPNs or am I wrong here?

</comment></comment><comment><USER7> Slightly misleading title. The bill has made it to Putin's desk but he has not yet signed it into law.

He probably will, but hasn't yet.

Who knows? People don't like it when you make it _really_ hard to access porn. Putin is popular and I doubt he wants to lose any of that popularity. Again, though, who knows?</comment>


Inferno – extremely fast, light-weight, isomorphic component building framework - <AUTHOR> https://github.com/trueadm/inferno <comment><USER2> JS framework burnout continues (for me, anyway)</comment>


Application Lifecycle Management (ALM) for startups - <AUTHOR>

Any suggestion on which methodologies are more appropriate for startups? Agile? Which ones? <comment><AUTHOR> Any ideas?</comment>


Scientists create first electronic quantum processor - <AUTHOR> http://www.physorg.com/news165418586.html

<comment><USER2> Already on HN at <http://news.ycombinator.com/item?id=678236> with a link to _Nature_ at [http://www.nature.com/news/2009/090628/full/news.2009.603.ht...](http://www.nature.com/news/2009/090628/full/news.2009.603.html) .

The physorg article does have one advantage over the Nature one: it has a picture of the solid-state device.

</comment><comment><USER3> Can anyone explain in technical detail how the phone book problem works?

<comment><USER2> <http://en.wikipedia.org/wiki/Grover%27s_algorithm>

In _handwavy_ technical detail: arrange that the things you're searching form a basis a1, a2, ..., aN for your state space, with your have-I-found-it test as an operator that negates the state you're looking for and maps the others to themselves. In other words, it's reflection in the hyperplane perpendicular to the state you're looking for. Now let a = a1+...+aN, and define a new operator that reflects in the hyperplane perpendicular to a. And now put your system in state a, and repeatedly apply those two operators, one after the other.

The composition of two reflections is a rotation. The angle of that rotation is known (and quite small); the angle between the two vectors (your desired state and a) is close to a right angle; by doing the rotation an appropriate number of times, you bring the system's state vector close to the desired state. Now you measure the system's state, and with high probability it's the state you're looking for.

A little calculation shows that the number of rotations needed is roughly proportional to sqrt(N), and the probability of getting the wrong state is roughly proportional to 1/N. Now do the process as many times as it takes for 1/N^k to be small enough for your satisfaction. Congratulations: you've now found what you were looking for, taking about sqrt(N) time, with error probability as small as you like.</comment></comment>


Show HN: my first nodejs module, fsjs - <AUTHOR>

It's on GitHub:
https://github.com/arpith/fsjs
It lets you structure your app a little differently, app.js:

  require('fsjs')(8000,'user','repo',function(data,defaultCallback){
    defaultCallback('<!doctype html>'+data)
  })
 And (in the same directory), edit.js:

  exports.get = function(file,callback) {
    console.log(this.request.url)
  // '/arpith/fsjs/edit/README.md'
    callback('the file edited is '+file)
  }
 Feedback would be great. <comment><USER2> @siromoney Great start, keep going.

I just wanna tell you that, pushing code to Github repo doesn't mean it's Open source.

* Select a Opensource License * Keep a License file in the root directory of project * Add link to License file from README.

<comment><AUTHOR> Thanks! The license (MIT) was listed on NPM, but now I've added it to the readme and placed it in the root directory.

</comment></comment><comment><AUTHOR> GitHub URL: <https://github.com/arpith/fsjs></comment>


Everything You Ever Wanted To Know About Convertible Note Seed Financings - <AUTHOR> http://techcrunch.com/2012/04/07/convertible-note-seed-financings/

<comment><USER2> I once dealt with a sophisticated investor, though with no experience in tech investments. The idea of a convertible note was foreign to him and thus unacceptable. He wanted to own preferred shares right away, but I wanted to avoid lengthy and costly negotiations and giving away control at that point.

We then discussed a middle ground between the two: the investor gets common stocks without any special rights except anti-dilution and an option to convert them to preferred at the time of the series A round. This way we could achieve many of the benefits of a convertible note, such as reduced legal costs and the ability to close faster. Eventually we didn't close that deal, but it seems that it could have been an interesting middle ground.

Has anyone ever done something like that? Is it common? I'm interested to know how it turned out and if you'd do it again.

<comment><USER3> No.

This is a horrible idea because it establishes a high price for the common stock. If the guy invests $100k into your common stock for 1%, you've just established that anyone getting a stock grant of 1% also owes taxes on $100k in income.

Reasonable lawyers familiar with startup financing wouldn't have advised this. Your investor probably isn't very sophisticated when it comes to equity compensation for employees, not just tech.

</comment></comment><comment><USER2> "In addition, the issuance of shares of common stock creates three potential problems. First, the founders risk substantial dilution because it is often difficult for the founders and the investors to agree on a valuation for the startup and, accordingly, to agree on the percentage ownership the investor will receive."

Isn't determining the cap of the convertible note equivalent to negotiating the valuation when issuing stocks? The dilution won't occur until the conversion, but it will occur eventually and at the ratio that was determined at the time of issuing the note. I think the above applies to uncapped notes, but I don't believe those are very common.

<comment><USER4> They are analogous but not equivalent. A cap of $5 million is a strictly better deal than a valuation of $5 million from the investor's perspective, because if the startup underperforms their next valuation will be below the cap (investor gets more of the company than a $5 million valuation would imply) and if the startup outperforms their valuation will be above the cap (and the investor gets shares worth more than their slice of $5 million would imply). This makes it much easier to pick higher dollar amounts with less kvetching, which is in startup's interests.

Also, just as a social norms thing, the "round" structure forces contemporaneous investors to get the dame deal regardless of value add (and you have to herd cats to make it happen) but you can close convertible notes individually at heterogenous terms. This helps break deadlocks.

See pg's article on Higher Resolution Fundraising.

<comment><USER2> Thanks Patrick.

I'm familiar with pg's essay about High Resolution Fundraising, but as stated in the essay, this can happen even without the use of convertible notes: "You may not need to use convertible notes to do it."

Is it a fact that it's much easier to get a higher dollar amount with a note deal compared to shares? When issuing the investor shares with an anti- dilution clause doesn't it have the same effect as a cap, so the investor is protected from a down round? Wouldn't this ultimately allow the investor to agree to the same dollar amount as in a cap?

</comment></comment></comment><comment><USER5> I'm very curious as to what happens when things go south with your company & you've got a Convertible Note that has not yet been converted.

<comment><USER6> Good question. I guess it would have seniority over shareholders (investors) in liquidating the company's asset. Assuming the company is a C corp, you should not be responsible for the debt personally.

<comment><USER7> It depends if the note was subordinated or not. Generally you have debt that is ranked based on seniority, so if the convertible note was a secured debt, it will rank higher than the unsecured creditors; however, it may still rank below other secured debt.

Example Ranking: Secured Debt 1 Secured Debt 2 Unsecured Debt 1 Unsecured Debt 2

In the case of bankruptcy, SD1 is going to be able to make a claim and get first dibs on assets and things to recover its debt. Everyone else has to wait their turn. (This is a super simplified definition)

LLC and C Corp liability is generally designed to shield you from personal liability. There are few cases where the shield of liability is "pierced" to go after the person who ran the company. "Piercing the veil" is what it is called, and it doesn't happen often, but when it does its a big deal.

I've seen a few cases in school about it, mostly about CEOs just running amok and stealing money, while having duties of good faith, loyalty etc...

</comment></comment></comment><comment><USER8> I just had a conversation with a lawyer about this last week. We haven't gotten a quote, but it looks like it's going to cost a little more than $1000 for a template that I can use with different investors.

Reading this article, the one thing that was new to me was the purchase agreement. Does anyone have any experience with this, in connection with a convertible note?

<comment><USER7> A purchase agreement is going to lay out the ground rules that the convertible note is going to be issued under such as who is buying the note, who is offering, the closing date, how to handle notices, what law will govern in certain situations, how litigation will be handled; most of these are categorized as representation and warranties by the issuer of the note. There also maybe Reps. and War. that the purchaser of the note must oblige by.

This is an extremely brief definition, and not to be taken as any legal advice.

Source: my 2 semesters in transactional practice and business planning. (I'm a law student!)</comment></comment>