Show HN: Painless, productive views on iOS with Formotion for RubyMotion - <AUTHOR> http://clayallsopp.github.com/formotion/

<comment><USER2> This is one of those things that makes Rubymotion am increasingly attractive prospect for me as an iOS developer. I wouldn't be ready to move off my familiar Objective-C stack quite yet, but if more projects like this one come along i might just consider it.

One thing I'm curious about is the support for TDD when using Rubymotion, there's a lot of Rspec clones out there for Objective-C but they all feel a bit hacky due to the language's less than stellar support for DSLs. On top of that, testing doesn't seem to be all that big a deal in the iOS world. I'm wondering if a healthy dose of the Ruby ethos changes this.

<comment><AUTHOR> Yes! RubyMotion ships with a port of Bacon, which removes all the friction from testing in the traditional iOS stack (setting up Xcode, adding multiple targets, verbosity...). Just have to add tests in ./specs and run 'rake spec'

Glance at the docs, especially the section about testing views. Much cleaner API than anything in Objective-C: <http://www.rubymotion.com/developer- center/articles/testing/>

(also a recent blog post on testing if you're still curious: [http://blog.rubymotion.com/post/26489000626/functional- view-...](http://blog.rubymotion.com/post/26489000626/functional-view-and- controller-testing-with-rubymotion))

</comment></comment><comment><USER3> How hard would it be to adapt this for Ruby written for iOS using RhoMobile? I'm looking into whether to start learning RubyMotion vs. RhoMobile, and don't know much about either yet.

</comment><comment><USER4> This is insanely awesome, thanks a lot!

</comment><comment><USER5> I looked at page and could not figure out what it is. Is this a server-side html generator? And AJAX library? A native iOS control library? I guess I will never know.

<comment><AUTHOR> It's a library for RubyMotion <http://RubyMotion.com>

<comment><USER5> Perhaps I did not make myself clear, so let me try again:

The posted article does nothing to describe what it is about to an average person who will wander into it. Most people have no idea what is rubymotion, and which problem it solves, or why they should care. Having read up on it now, I suggest to try this instead:

 _Rubymotion is a toolchain for ruby developers to create native-looking, native-performing, AppSore-compliant iOS apps. Formotion is a RubyMotion library that provides for declarative UI layout description, making for much faster UI development. At long last, Ruby devs can create first-class iOS apps as quickly as they can create first-class web apps._

<comment><USER6> Most jQuery Plugins don't explain what jQuery is. Why should a RubyMotion Library be responsible for explaining what rubyMotion is? At most, Formotion they should link the word "RubyMotion" in their headmast to the RubyMotion project website.

<comment><USER5> Because one is well known and the other one is obscure:

<http://www.google.com/trends/?q=rubymotion,jquery>

<comment><USER7> Ah it is googleable then. So whats the problem again?</comment></comment></comment></comment></comment></comment>


Facebook Manipulated 689,003 Users' Emotions For Science - <AUTHOR> http://www.forbes.com/sites/kashmirhill/2014/06/28/facebook-manipulated-689003-users-emotions-for-science/ <comment><USER2> See the discussion here: [https://news.ycombinator.com/item?id=7959829](https://news.ycombinator.com/item?id=7959829)</comment>


Show HN: Solitr, a CoffeeScript HTML5 game structured around MVC - <AUTHOR>

Game: http://www.solitr.com/<p>About the MVC design: http://www.solitr.com/blog/2012/02/mvc-design/ <comment><USER2> Nicely done.</comment>


And then, suddenly, it works - Chris Dixon - <AUTHOR> http://cdixon.org/2012/02/11/and-then-suddenly-it-works/ <comment><USER2> Having that experience right now with my programming e-mail newsletters. Just ticked over to 50,000 subscribers today. It started as a side project and I got more than enough "e-mail is dead", "where's the RSS!?" and "it's been done" at the start :-)

<comment><AUTHOR> That's awesome .. I just subscribed to your podcasts from podcasts post on the frontpage[<http://news.ycombinator.com/item?id=3580367>]. Which newsletter exactly are you talking about?

<comment><USER2> <http://javascriptweekly.com/> <http://rubyweekly.com/> <http://html5weekly.com/> and <http://statuscode.org/> primarily.</comment></comment></comment>


Reports: OnLive fires all staff, service's future unclear - <AUTHOR> http://arstechnica.com/gaming/2012/08/reports-onlive-fires-all-staff-services-future-unclear/ <comment><USER2> > A new company will be formed and the management of the company will be in > contact with you about the current initiatives in place, including the > titles that will remain on the service

I hate that companies are allowed to do that. Sunrocket did that to me and basically stole around $150 worth of unused service. The new company apparently had no legal obligation to me.

It should be illegal to sell assets without also selling the debts/obligations together with them.

</comment><comment><USER3> I liked the idea of OnLive. In fact since I've been travelling a lot over the past year I wanted to play some games that I couldn't (because my laptop sucks). The problem I found is that it is just too expensive to play the games I wanted. They cost the same amount as purchasing a physical copy. I couldn't justify that as it provides a degraded experience and I know when I come home I have a great computer I can play them on.

It's too bad they couldn't make it work since I the concept was pretty cool.

<comment><USER4> Also their selection of games was really poor.

<comment><USER5> Except for "Orcs Must Die", which is the title that got me to sign up to OnLive! I really enjoy the service.

</comment></comment></comment><comment><USER6> They're filing for ABC protection in California. Source: [http://kotaku.com/5935767/onlive-filing-for-bankruptcy- new-c...](http://kotaku.com/5935767/onlive-filing-for-bankruptcy-new-company- to-take-its-place) Here's an explanation of what ABC is <http://allmandlaw.com/bankruptcy/abc-vs-bankruptcy> Looks like they're re- arranging OnLive into a new company [http://www.forbes.com/sites/jasonevangelho/2012/08/17/onlive...](http://www.forbes.com/sites/jasonevangelho/2012/08/17/onlive- we-are-not-going-out-of-business/)

</comment><comment><USER7> I wonder how this is going to affect Ouya, who just raised over 8M on kickstarter, and who was relying on Onlive to provide access to AAA titles from day 1.

</comment><comment><USER8> > Some of those employees may reportedly be hired back as the company > transitions into a new iteration, which might be more focused on exercising > its portfolio of streaming patents.

This doesn't sound good.

<comment><USER9> I think it would be great if they licensed their technology to a company that can leverage it. Fingers crossed that Apple does something with this.

This doesn't mean that they're becoming an evil patent troll.

<comment><USER10> I think and really hope it's Google. Onlive is a threat to Apple's walled garden model. Apple might just want to shut it down.

<comment><USER11> I doubt Google would dick over the employees like this. Even the extraneous Motorola employees they didn't want to acquire got to stay on through the whole acquisition plus a year's severance.

</comment></comment></comment></comment><comment><USER12> Ah man- I played with OnLive a little bit and it seemed like a product that had so much potential to revolutionize the industry. Maybe it was ahead of its time?

<comment><USER13> Need.... Google... Fiber...

<comment><USER11> We really just need more mature LTE networks. I've seen LTE pings around 40. If they can get that down under 25 consistently that's pretty much all you need to move the gaming world to thin clients.

</comment></comment></comment><comment><USER14> One of the major reasons why OnLive struggled (and now failed) is because they launched their platform (20010) well after the launch of the XBox 360 (2005) and PS3 (2006).

Serious gamers, the early adopter market for OnLive, already had purchased an XBox 360 and/or PS3. Since OnLive, as far as I can tell, didn't have any compelling, exclusive titles, and provided a gaming experience that was inferior to alternatives, there was no reason for a serious gamer with a console to try (or switch to) this new platform.

OnLive needed to launch around the same time as the other consoles and deliver a superior experience, or an equivalent experience but at a lower price point (upfront and over time).

<comment><USER15> The fallacy here is that only serious gamers play on consoles. PC gaming is back on the upswing, and one could argue that PC gamers are just as serious or even more so than console gamers.

The thing that OnLive offered was a way to play high quality AAA game titles on basically any device that has a internet connection and can play video. Where they failed I think was the pricing model, prices were too close to retail products, and it was an ala carte service. If the moved to a subscription based model similar to gamefly I think they could have had more success.

<comment><USER16> OnLive is the ideal service for cpu/gpu games, and works great against cheaters in multiplayer games (No more transparent or wireframe walls, boxes around enemy players, and other tricks)

but then most social/casual games are not cpu/gpu hungry....

I really want technology like OnLive to succeed... There is Gaikai too

<comment><USER17> I don't. OnLive is the ultimate DRM; abusive stuff like Securom can be bypassed, but with this tech any game can be killed without recourse. While I feel sympathy for the fired people, I'm also somewhat relieved that this was further delayed.

<comment><USER16> It's the ultimate copy-protection without DRM - e.g. without crappy kernel drivers sitting and trying to protect you from stealing something from your own machine.

But not only that, it protects you from doing stupid things like cheating in an multi-player game, and it's available everywhere if there is a good connection.

Oh, and it's updated with the latest HW.

It's also more energy efficient, you no longer need massive HW in your room to power your game. And the folks that run the similar HW in their server room, would surely know better than the general game customer how to make it more green efficient, and reuse the resource better.

So it could've been a great win. I could've (if Wi-fi allowed) played on my iPad games, that are still not possible to play there, without any download, install, updates, etc.

<comment><USER17> Sure, but that's all irrelevant when you lose access to all your games. Like when the company goes bankrupt.

If you bought a copy of the game and then you could play on their service with a proof of purchase (and a monthly fee, for example), I wouldn't worry. But their service was just more lock in.

</comment></comment></comment></comment></comment></comment><comment><USER18> This is why tech people should really begin negotiating severance into their compensation. Yeah, yeah - how do you get rid of people who aren't a good fit? I dunno. Maybe, make the formula for calculating severance account for employment duration. What happens when you got hired a week ago and the whole company is now being fired? I dunno. Perhaps a mass firing clause.

I don't have the answers, but severance pay sounds like a great way to protect against these kinds of assholes.

<comment><USER19> The only way to protect against this kind of abuse is to unionize.

<comment><USER20> Unionization is a big step. You get protection, but it's also expensive, makes HR sclerotic, and you run the risk of having union management wander off into lala land.

If you're a competent programmer, unionization is probably a net loss for you.

<comment><USER21> There are many models of unionization. I'm represented by a union (in Denmark), and it's not particularly sclerotic or adversarial. It's just an organization that is skilled in contracts and can provide advice and advocacy on my behalf, along with some information aggregation.

Their #1 most useful service is probably their email address that provides legal advice about whether I should sign a particular contract or not, and what my options are. Strikes are extremely rare, but consultations to ensure it never gets to that point are common. For example, if I were asked to sign a never-before-seen contract provision, and I forwarded it to them, they might use their backchannel contacts with the company to ask what this is all about, and, if the answer isn't to their liking, warn other members to watch out for this new provision. That helps make sure that changes like that don't slip by unnoticed. It may, admittedly, help that there is a cultural value against labor strife, so companies lose a lot of face if they get to the point of open conflict with their union. That allows unions to mostly do their job without having to exercise "hard power" like actual strikes.

The main things they do, imo, is to make sure that workers are informed about what contracts they're signing, and that companies get appropriate pushback about the more onerous provisions. Americans also do that to some extent, but since they lack effective unions, they have to do it via legislation, like how California has banned noncompetes.

</comment></comment></comment></comment><comment><USER22> Well there goes the one draw I had to the Ouya.

</comment><comment><USER23> They have (had?) a lot of great employees, so hiring feeding frenzy commence in 3, 2, 1...</comment>


Oracle profits surge–at the expense of Java development and software support - <AUTHOR> http://arstechnica.com/information-technology/2016/06/oracle-boosts-cloud-sales-but-at-expense-of-java-and-everything-else/ <comment><AUTHOR> I posted this because I am mainly concerned about:

>According to data gleaned from the Java Community Process (JCP) by Java community members associated with Java EE Guardians—a Java EE advocacy group that includes Java's principal creator, Dr. James Gosling—progress on Java EE 8 virtually halted following the JavaOne conference in October 2015.

How sensitive could the Java market be to Oracle deciding to stop (or significantly slow) development of Java?

The Java market seems to be quite big, but since in the end it seems to depend on one company, could the Java language/market be at peril of becoming irrelevant like it happened to say Delphi?</comment>


Seymour Cray: Cray-1 Introduction (1976) [video] - <AUTHOR> https://www.youtube.com/watch?v=vtOA1vuoDgQ

<comment><USER2> If you haven't already done so, I highly recommend reading "The SUPERMEN" by Charles J. Murray.

[http://www.amazon.com/Supermen-Seymour-Technical-Wizards- Sup...](http://www.amazon.com/Supermen-Seymour-Technical-Wizards- Supercomputer/dp/0471048852/ref=sr_1_1?ie=UTF8&qid=1431382324&sr=8-1&keywords=the+supermen)

</comment><comment><AUTHOR> Note: The audio gets _much_ better about 8 minutes in.

<comment><USER3> At exactly 8:30, to be precise.

</comment></comment><comment><USER4> Amazing he mentions trade schools. Wish they still existed.

</comment><comment><USER5> This video is totally Cray ;)

</comment><comment><USER6> What about [https://www.youtube.com/watch?v=xW7j2ipE2Ck](https://www.youtube.com/watch?v=xW7j2ipE2Ck) ? (one of the Youtube Video suggestions)

<comment><USER7> Yep... unless that doesn't count as a "talk" for some reason.</comment></comment>


Ask HN: How to prioritise codebase health/design over new features in a startup? - <AUTHOR> I work in a startup that is in the scaling-up zone and every now and then there's some adhoc feature request or unforeseen circumstance that forces me to tweak my codebase in a way I don't want to - like putting a 'temporary' hotfix and just injecting a new logic without creating a separate/proper pipeline for it. There is no systematic testing flow or code coverage either. Its almost too sad that this service hasn't had its share of cleanup given its importance.
Now, I am at the bottom of the barrel here and not the original creator of the repo. It is a clusterfuck tbh and I really want to refactor it. The thing is, this repo connects to almost everything else in the ecosystem and taking the time out to refactor it is not going to bode well for a number of interdependent features.
How did you guys proceed when your microservice was getting out of hand with all the new features? And what do you guys prioritise, as a SWE, the health of your service or new (and apparently important) features floated by the product team? <comment><USER2> > And what do you guys prioritise, as a SWE, the health of your service or new > (and apparently important) features floated by the product team?

It's cliche, but implement the "leave it better than you found it" rule.

I'm in a similar situation at my job, we're in the "push out as many features as possible" phase and POs don't know/don't care about the trade offs. I started baking in 20% more time into an estimate to allow me enough room to refactor/add missing tests/general clean up.

I would caution against going in and doing a massive refactor unless it's absolutely necessary. The reason being that refactors are usually much more involved than they appear on the surface, and can also have unexpected side effects.

I understand the urge to want to burn everything down and start with a clean slate... but it's generally more work than its worth. Try to identify the worst areas of the code base, like core business logic missing tests, and try to chip away at it.

</comment><comment><USER3> Show how much time you're spending on working around broken things. Convert that to dollars and missed opportunities, slower execution, etc. And you should have a compelling case for focusing on refactoring. Without management buy-in, this will be impossible...

But yeah, as already said here, small steps. Do this for small areas of the code and stay away from the feared major rewrite.

</comment><comment><USER4> Small steps.</comment>


Amazing face substitution software - <AUTHOR> http://vimeo.com/29348533

<comment><AUTHOR> Download here: <https://github.com/arturoc/FaceSubstitution/downloads></comment>


How to Email Early Stage Investors - <AUTHOR> http://themacro.com/articles/2016/07/how-to-email-early-stage-investors/ <comment><USER3> (I'm an early stage VC.)

I fully agree with this advice -- especially the part about weak warm intros being far inferior to good cold emails. I'd much rather see a good cold email than an intro through a mutual connection that barely knows me and the other party.

One additional piece of advice that I'd add: make your emails personalized. People would be surprised (or maybe not) at how many cold emails I get that start with sentences like "Dear Sir or Madam, let me tell you about my company [which is in a space that you haven't shown any interest in]..."

Adding in one or two sentences about why you emailed me specifically instead of the 500 other early-stage investors is very helpful. I'm not fishing for compliments, but instead some insight about whether I'm a good fit for some particular reason, or if you're just copy-and-pasting the same email template 500 times.

<comment><USER4> A question ...

What is decision your decision process whether to answer or not? Do you answer honestly when opportunity is just too small?

<comment><USER3> Initially I felt like I ought to reply to every cold email, but quickly realized that that wouldn't scale (replying to cold emails took 2 hours a week, then 3, then 4..)

The litmus test I currently use is that if it seems like someone put more than 5 minutes of effort into an email, then I will reply. Sometimes emails fall through the cracks because I get swamped with work, but I'd say I reply to ~0% of "template" emails and ~75% of emails where the sender spent at least a few minutes thinking about the content and personalizing it.

Replies vary from "let's meet up" to "this doesn't fit my fund's focus areas" to "I'm not sure if the current version of the company is big enough for a VC business." I try to be honest if I have something constructive to say.

</comment></comment></comment><comment><USER5> Just want to say to those of you who don't have great communication skills, and know it. This recipe pretty much applies to all cold emails, or any email with a party that you want something from and don't know well.

Job interviews, consulting cold emails, VC, someone who has the keys to your destiny and does not know it yet.

The most important things are, in my mind:

1\. If possible, make the email actionable for the other party.

2\. Don't waste the other party's time.

3\. The more you write, the more opportunity you can shoot yourself in the foot. Remove sentences you don't need.

This has been my ticket to opening new doors so many times. Make it easy for people to help you.

<comment><USER6> Don't waste people's time is the kind of advice that is hard to follow, though. How would you know? If you spend two days writing a 2000 word essay to someone you obviously think that it's important.

<comment><USER7> "Hi, I'm ${ME}. I'm the founder of ${COMPANY}, and we make ${STUFF} that ${IMPRESSIVE}. Would you mind if I sent you a 2000 word essay, or would you just delete it after five seconds?"

Don't waste two days writing a 2000 word essay if there's a significant chance it will simply be ignored. Establish the relationship first. Heck, I'd have a hard time getting my _wife_ to read a 2000 word essay, no matter how important I thought it was personally.

</comment></comment></comment><comment><USER8> The list of common mistakes includes "Spending a lot of time trying to get a warm intro. You're better off just following these rules and emailing me directly."

That goes contrary to a lot of advice other VCs say, which is that getting introduced to a VC is the most common way to get funded. Supposedly most cold emails don't turn into VC funding. Is this no longer the case?

<comment><USER9> Maybe the point is, IF you have to spend a lot of time trying to find a warm intro, then you might be as well or better off just going ahead and cold emailing.

But realistically, there are very few situations where a cold email is better or even as good as a warm email.

A corollary is: if you're not resourceful enough to get a few warm intros, you are going to struggle mightily to found a company.

<comment><USER10> I hear you, but recently I was doing a thing where I need $5M on a $15M pre- money raise. I called the front desk and was told by the secretary that "we only do introductions".

Fine, good enough, but I was on a clock and I knew who I was and I knew who they were and they could have been a great part.

About the time I am signing the paperwork (2.5 weeks later?), I get a call from one of their partners: they heard about it and want in.

No can do. Unfortunate, because I still think two of their partners could/would add value.

But I always wondered: why do VCs make founders jump through hoops that don't matter? Are they to prove the founder can sell? I remain baffled.

<comment><USER11> > why do VCs make founders jump through hoops that don't matter?

Depending on the celebrity of the VC, I can imagine a truly massive deluge of cold emails mostly from supremely unqualified companies.

I can understand their desire to be insulated from that.

</comment></comment></comment></comment><comment><USER12> Also: email from a founder, don't use a "investment banker", or other intermediary.

Don't insist on a phone call or in-person meeting as the next step. If you can't explain it with email, video, etc. to an investor, you'll have a hard time explaining it to customers.

Use bios, Angellist, Crunchbase, etc. to profile investor prospects. Don't email a tech investor a movie pitch, unless you have a very unique connection to that investor.

Don't insist on an NDA (yes, it still happens)

</comment><comment><USER13> Most importantly you should research your investors before you just email them. It's better to reach 20 interested investors than 200 people with money who won't invest in your company.

<comment><USER6> Huge point, I think. Instead of crafting a huge email, spend a lot of time finding the right investors to approach first.

"This is the only guy with money I know of" is not really a successful starting point to write someone.

</comment></comment><comment><USER14> The first sentence should always be the ask.

Give the recipient enough information in their [iOS alert | Gmail excerpt] to read it when they're in the right frame of mind to think it over.

Professional email is not flirting. Guys flirt by first trying to get your attention and interest, then follow up with an invitation. I assume this gives him an opportunity to bail if he's not getting a welcome vibe, but that doesn't apply here.

See how much information you can pack into the first few words, so they can open it when they're ready. Follow that with the context and data they need to keep reading when they're ready to consider it. End with your own introduction, because you're the least interesting part of your letter (except insofar as you're a part of the venture).

<comment><USER15> Applies equally to all forms of communication. I pay a conscious effort to put the most important point in the excerpt.

"Hi $name, interested in grabbing coffee? Bla bla bla I met you bla bla, bla bla talk about bla bla."

<comment><USER16> Except in some very particular situations (maybe you're looking for investors in your coffee roastery tech startup), getting coffee is a means to an end, the "end" being the same thing as the "ask" that DelaneyM is referring to.

"Hi $name, interested in grabbing coffee?" buries the "ask" until during the coffee chat.

It can be tough to do, but I think a lot of very busy people would actually appreciate you just coming out and asking for what you want, even in the first sentence.

<comment><USER17> I think he meant: Even if you are flirting, tell her what you want in the first few words.

Makes sense to me.

</comment></comment></comment></comment><comment><USER18> > Not using your @company.com email.

Really? Who the fuck cares? If I reach out on twitter nobody bats an eye - <USER2> use email@example.com and everyone loses their minds. I used to use my @company email for my startup that was acquired. Now I can't find any email exchanges I know I remember having. I'll use firstname.lastname@example.com for stuffy clients, but I thought YC partners were kinda above this kind of outdated thinking.

<comment><USER19> You can make your @company.com email forward to your personal gmail, you know.

Like Michael, I find it convenient, when receiving a lot of email from people I don't know well, to have the domain name of their company right in their email address. For example, if I later remember something I want to tell them or someone to connect them to, having their email address autocomplete is nice.

<comment><USER18> Yeah I do it, but then when I search I'm missing emails I sent.

<comment><USER20> [https://support.google.com/mail/answer/22370?hl=en](https://support.google.com/mail/answer/22370?hl=en)

</comment></comment></comment></comment><comment><USER21> I suggest emailing up-and-coming VCs who are more eager for any kind of dealflow.

Look for people/funds who just raised their first fund. They are hustling, likely not drowning in leads like Michael Siebel is, and willing to do just about anything to make their LPs happy including spending countless hours evaluating investment opportunities from complete strangers.

<comment><USER6> I would disagree. Yes, this way you get "easy money", but what you actually want is "smart money". It's like with building your unfair advantage. It shouldn't be too easy, otherwise it won't have the required value.

<comment><USER22> I think Michael Seibel says it himself somewhere else - yes you do want smart money. But the reality for 95% of the time you just need money. The founders make or break the company, and optimizing for just the best investors is optimizing for the 5%.

The other reality is that majority of startups will fail to raise money. So unless you're truly hot s __*, raise from anyone including so-called "dumb money" as long as they dont add negative value by pestering you or doing something similar.

Startups die cuz they can't raise or run out of money. Usually a symptom of something else, but don't die cuz you only chased smart money.

<comment><USER6> I would assume that if you need money you don't want to take it. Starting a company is also investing, but something more than money: your health, your time, your personal relationships. I wouldn't do that if the money I need wouldn't come to me easily enough. Really, if you can't focus on finding the smart money, better have a main job and treat the business as your side project, at least for now.

</comment></comment></comment></comment><comment><USER23> I wrote up these tips on emailing to help my friends and relatives email better: [http://dtrejo.com/how-to-email](http://dtrejo.com/how-to-email)

Summary:

        - Keep it under 250 words.
        - Ask only one question, directly before your signature.
        - Ask a single yes/no question.
        - Extra Credit: Show you did your research
        - If you really want a reply: follow up in a useful way.
          NOT: "Did you get my email?"

</comment><comment><USER24> Aside from subjective or "trust me, this works!" commentary, what does the data say about getting replies from investors? A better title for this would be "How to Email An Early Stage Investor."

It would be interesting to mine emails from well-known investors and see what the data shows for first emails from individuals who were ultimately funded.

</comment><comment><USER25> Michael has also talked about how to pitch investors in a similar, clear way. [0] It's part of the "how to start a startup" series.

[0] [https://youtu.be/SHAh6WKBgiE?t=1227](https://youtu.be/SHAh6WKBgiE?t=1227)

</comment><comment><USER26> If the recipient only sees the subject line, what increases chances of having your email opened? For people that habitually open and read email OR use a preview mode for efficient scanning, subject lines may not be as important.

</comment><comment><USER27> Anybody have similar advice for cold emailing professors/researchers?

I never had any luck emailing professors whose lectures are on youtube for book recommendations or researchers in a field where I'm looking for something similar to what they study.

<comment><USER28> The best advice for very busy professors is to find the correct researcher working on their team (scan papers for the one that seems to be coauthor in the field you want to ask about). Most of the time it'll get delegated to them either way and if it's interesting enough it'll eventually reach the professors.

</comment></comment><comment><USER29> This is awesome. I love quick, succinct communication.

I have thought of early state funding as more "who you know," and it's good know I can email people!

</comment><comment><USER6> There are many articles like this, but I think it's often hard to follow the guidelines. This one is really clear though.</comment>


Duff's Device: loop unrolling for interpreted languages - <AUTHOR> http://www.hackszine.com/blog/archive/2008/05/duffs_device_loop_unrolling_fo.html?CMP=OTC-7G2N43923558 <comment><USER2> This is the wrong answer in so many ways. Starting with, if you're in a dynamic language and you're so performance sensitive that you can't take the hit of a loop comparison, you're doing it wrong.

But...Pretending you actually need to unroll your loops, you might ask, why did Duff choose "8" as the magic number? Was it, perhaps, looking at the code his compiler kicked out for the loop and choosing the number that optimized for byte copying on his architecture, given some constraint about common buffer sizes? Yes. Lacking an "architecture" target for Javascript, it probably doesn't make much sense to use Duff's constant just because he did.

And...if your function body is relatively slow, you probably don't need to unroll anything in the first place. Duff had a beautiful one-liner in there that in some situations is basically one clock cycle's worth of work. Javascript has no such construct that couldn't be batched in the first place (8 ++'s => one += 8). And if you make a function call, you've made your inner loop slow.

Moral of the story: Don't do this.

<comment><USER3> > why did Duff choose "8" as the magic number?

My rule of thumb when unrolling loops in assembly was to only unroll up to and including the bit length of the machine. So, on eight bit hardware, I would only unroll loops of eight iterations or less.

<comment><USER2> From the man himself (<http://www.lysator.liu.se/c/duffs-device.html>):

"Transformations like this can only be justified by measuring the resulting code. Be careful when you use this thing that you don't unwind the loop so much that you overflow your machine's instruction cache. Don't try to be smarter than an over-clever C compiler that recognizes loops that implement block move or block clear and compiles them into machine idioms."

<comment><USER3> > Be careful when you use this thing that you don't unwind the loop so much > that you overflow your machine's instruction cache.

I considered this case shortly after posting. Specifically, my rule of thumb fails miserably on the 68020 which has a very small instruction cache.</comment></comment></comment></comment>


Record any unix processes execution. And replay them afterward !  - <AUTHOR> http://vimeo.com/29125502

<comment><AUTHOR> This is quite impressive, he starts by recording some date execution which is nice, then he records an apache session. At this point, it's just plainly awesome, I just can't imagine the myriads of possibilities.</comment>


IBM Watson fires its own cancer-fighting 'moonshot' - <AUTHOR> http://venturebeat.com/2013/10/18/ibm-watson-fires-its-own-cancer-fighting-moonshot/ <comment><USER2> Instead of Jeopardy, I always wanted Watson to go on "are you smarter than a fifth grader" and throw questions like "think of the second color of the rainbow. What large bird starts with the same first letter?"

Or: "If I call A 5, B 4, and C 3, then what do I call D?"

As a scientist (working on cancer, no less), more than just churning through terabytes of data, it strikes me that THESE sorts of questions are the ones you'll need to be able to answer. There's also a lot of "reading between the lines" you'll need to do, and a lot of "small pattern extrapolation". For example, the drug candidate I'm working on is one of a family of about let's say, 16 known compounds. All of them kill cancer cells, fourteen are cardiotoxic. The two that are not, lack a single oxygen atom. Maybe that oxygen atom lets the molecule block the mitochondrion (sort of important for heart cells)? Why? Because the molecule family looks sort of like Coenzyme Q10 - if you use your imagination and remember some of your chemical reactivity rules from Grad-level Ochem - and supplementation of Q10 alleviated the cardiotoxicity in one study on rats for one of the molecules.

Ultimately, my previous boss was bold enough to latch onto that and give it a shot - can we take this molecule that is the most potent of the group (but unfortunately cardiotoxic), delete the homologous oxygen atom and make something that still works and is less cardiotoxic?

<comment><USER3> I'm legitimately stumped. Which large bird starts with 'O'? Or is it second from the top.. so an Ibis?

<comment><USER4> Ostrich?

<comment><USER3> I'm going to go sit in the corner and cry now.

Thanks!

</comment></comment></comment></comment><comment><USER5> As far as I'm aware there have been zero peer reviewed publications showing Watson actually doing something in medicine. When a doctor thinks he or she has a better approach than what is being done, they use the scientific method to find out of their hypothesis holds up. So far I've seen lots of IBM conference presentations and press conferences. But where is the data? Where are the increased survival rates? Where are the reduced medical errors compared to controls? _That_ is science. Everything else is snake oil unless you have that.

<comment><USER6> Indeed. It's a little annoying to keep seeing these IBM PR releases about fictional medical suppositions, when one is working on drug screening, diagnostics, and such from within a reality constrained lab!

</comment></comment><comment><USER7> This is truly incredible stuff. Hats off to IBM for pushing the field of machine learning forward.

This statement really struck me: ""In the Jeopardy days [in 2011], Watson was running off 90 servers and could store 15 terabytes of memory," said Gold. That's not your typical household integration. "Now it's far more affordable and runs 240 times faster, so we can do far more with less." Moreover, the size of IBM's server is now smaller than a pizza box and can fit in any data center."

How is this possible?

<comment><USER8> I'm assuming they mean 1 server is a pizza box (ie. it's a 1U rack server), so you'd still need ~90U of space.

Either that or IBM has made some breakthroughs in the last 2 years.

<comment><USER9> You can almost hear the article author completely misunderstanding what he was told.

I'm betting it was something like, "For Jeopardy, Watson was using 15 Terabytes of data stored on 90 servers. And those servers were large back then, now they're your standard pizza box 1U's. And because of advances in storage technology we can store a lot more in the same space."

Isn't there some sort of basic tech literacy class for people who write these articles? It's like reading the sports section and seeing "The Seattle Seahawks are a group of big men and they ran at another group of big men, and they've been doing that a lot, and faster lately. Some of the men in the Seahawks group are smaller and faster, so they are harder to catch by the other group of big men. The Seahawks grouping of men is like a successful business, because they've been winning competitions against other groups."

<comment><USER10> There is some more prize gibberish in that article:

 _Saxena said IBM is ready to make a big a bet on Watson, as it did in the 1970s when it invested in the emergence of the mainframe._

Leaving aside the grammatical error (it's probably just an editing artefact), _what_ bed did IBM make in the 1970s on the emergence of the mainframe? Is that a typo for 1950s? Or just unvarnished ignorance of computing history?

It's stuff like this that makes me mistrust a news source: if they get it blazingly wrong about something I know enough about to have a working bullshit detector for, what are the chances that they're not also getting it wrong about everything else?

<comment><USER11> To be fair, the System/360 (which was the first to run the classic OS/360 operating system) was released in '64[1], and was replaced in the '70s by the S/370.

Certainly mainframes were in use prior to the '70s, but the S/360 was the first "classic" mainframe in that it was designed for both business & scientific use[2], and it wasn't until the 70's that they began to become more popular in areas outside their traditional use.

[1] [http://en.wikipedia.org/wiki/IBM_System/360](http://en.wikipedia.org/wiki/IBM_System/360)

[2]

</comment></comment></comment></comment></comment><comment><USER12> Even if all some AI system did was take a list of symptoms, anonymize them, suggest a diagnosis, and then take the MD's actual diagnosis, track outcomes, and compare results over time, it would be a huge advancement.

Right now, unless I misunderstand something structural about our medical system, most of the data gathered by MDs are wasted, because there is no digital record of much of it and patient privacy legalities prevent wholesale entering of symptoms and case outcomes in to any sort of freely available (inter)national database.

</comment><comment><USER13> Why is it always cancer?

I'd be impressed if somebody was trying to cure ALS or Tourette's syndrome.

<comment><USER14> Maybe because cancer is ridiculously more common than both of those disorders combined?

<comment><USER15> Sure, but obviously curing cancer is a waste of research effort... what they should be trying to cure is disease.

<comment><USER16> Why is it a waste of research effort? We've made dramatic non-palliative strides in the area of cancer treatment, and most importantly have been able to induce complete remission in a significant number of cases.

<comment><USER15> see my sibling comment.

<comment><USER16> Sorry, I don't understand. If you meant PaulHoule's comment I'm not sure how that answers my question, and I didn't find any other comments by you. Do you mean because cancer isn't a simple, isolated thing like polio or TB?

<comment><USER15> Yes, I meant PaulHoule's comment. If the reason for studying "cancer" is that "cancer" is more widespread than better-defined illnesses, then the reasoning is misplaced; it's surely better to focus on something more widespread, like "illness".

I have seen it expressed, though not in these terms, that asking for a "cure for cancer" is equivalent to asking for bug-free software. Cancer isn't something that afflicts you from without; it's just a failure mode for cells. They can fail for all kinds of reasons (indeed, note that one of our best methods of causing cancer, radiation, works on the principle of "make random changes to the cell's genetic code, and it will eventually become cancerous").

<comment><USER16> So I think the general claim is that focusing on cancer is a middle ground between seeking treatments for obscure well-defined illnesses and searching for a panacea for illness or disease in general. Cancer has a precise operational definition: unregulated cell growth. It isn't nearly as vague as illness or disease. We understand a lot about all the different pathways inside cells that can lead to it. A "cure for cancer" is an attempt to address the issue upstream, such that it will affect all different types of cancer in the body. Unlike seeking a panacea for all illness, this is not obviously a waste of research effort. There are highly similar mechanisms at work in every cancer. Even if a cure-all cannot be found (I would be surprised, personally), just trying to understand the mechanisms still has value.

<comment><USER15> Actually, a cyst meets your definition of unregulated cell growth. It's just slower / less greedy. The distinction between a benign tumor and a malignant one is generally ascertained by the process of "let's watch it and see what it does", so I'm not convinced that "cancer" is defined more usefully than "illness".

In my opinion, and my medically-educated mother's opinion (really, I get it from her), people don't look for "a cure for cancer" because they think they can make progress from that viewpoint. They do it because they're looking for funding.

edit:

You might compare "died of cancer" to "died of old age". Old age used to be an accepted cause of death. When autopsies started happening, it was quickly noticed that people who had died of "old age" always had some other, more immediate cause of death. But it turns out that if you take an old person and do your utmost to prevent / cure / treat all of those more proximate causes, eventually one will get past you and they will die.

<comment><USER16> Okay, but that's not actually how cysts work if you look it up. They are sacs that can have cancerous tissue inside them, but they can also have fluid or air. The operational definition of benign and malignant tumors that doctors use boils down to rudimentary observation, yes, but in the lab we've really identified many of the key mutations in the transition from benign to malignant. So I guess you could say we have a reasonably good idea of what cancer is and how it works, but it hasn't fully made its way onto the front lines yet, either in terms of assessment or treatment.

I understand your cynical point of view about funding, but I guess I would say two things. First, cynicism is a cancer unto itself (ha), and all academics are faced with the corrupting influence of money. Second, if you go and talk to the cancer researchers in the nearest university you'll probably find a great deal of them really do care about the work; they just might care about a very tiny corner of it rather than a cure-all solution.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER17> Where can one learn more about how Watson actually works?

...starting from the IBM website and Wikipedia one mostly gets to whitepapers and high level descriptions. I hope at least bits of it are open source or at least have the math and logic underlying them well documented.</comment>


GAN Dissection: Visualizing and Understanding Generative Adversarial Networks - <AUTHOR> https://gandissect.csail.mit.edu <comment><USER2> This is somewhat tangential, but I really love how they published this research. This method has lots of interactive media visually explaining the result of their project. It was really easy to understand what they did, and fun to play around with the provided examples. I wish more research would end up online in a format like this!

<comment><USER3> I agree. Magenta, Tensorflow, Keras all have WebGL accelerated client side javascript libraries so interactive demos could become the norm.

The Scientific Paper is Obsolete

[https://www.theatlantic.com/science/archive/2018/04/the- scie...](https://www.theatlantic.com/science/archive/2018/04/the-scientific- paper-is-obsolete/556676/)

<comment><USER4> I'd be willing to get that Magenta, Tensforflow, Keras, and even WebGL will be obsolete long before the scientific paper in it's traditional form become obsolete. Animations and interactivity are cool and all, but the timelessness of plain text has already lasted thousands of years. And even though anyone who could speak those languages also died thousands of years ago, we're still able to interpret the meaning of a lot of them.

</comment></comment></comment><comment><USER5> If you are interested in learning about GAN, checkout GANLab, by Google Brain and others:

[https://poloclub.github.io/ganlab/](https://poloclub.github.io/ganlab/)

It's similar to tensorflow playground, but for GAN:

[https://playground.tensorflow.org/](https://playground.tensorflow.org/)

<comment><USER6> amazing playground, thanks for sharing!

</comment></comment><comment><USER7> I am super excited about this work and network dissection. The idea of causal units or finding neurons that correlate to objects in an image will have huge impact on image manipulation tasks. I am excited to try this to control GANS on how they generate images.

<comment><USER8> It's cool, it would be great if the neurons would be classified with machine learning by the name of the objects they encode (and probability of that encoding beimg correct), so not just a few object types could be added / removed

<comment><USER9> Remember this? Grandmother Cell [https://en.wikipedia.org/wiki/Grandmother_cell](https://en.wikipedia.org/wiki/Grandmother_cell) [https://www.scientificamerican.com/article/one-face-one- neur...](https://www.scientificamerican.com/article/one-face-one-neuron/)

Startling, but in the end, not a correct description for the brain. The analogy here is obvious.

</comment></comment></comment><comment><USER10> I would like to have a GAN brush in Photoshop. Let me pick a color, brush size, etc like usual, but gently interpret what I paint in the direction of the GAN output, similar to the effect of a textured brush.

</comment><comment><USER9> GANs, seem to me, the closest analogy to how the brain (or parts of it) might function. Moreover, when I try to imagine something in my mind's eye, it feels and looks to me something like what these GAN's are producing.

<comment><USER11> This feels too much like an appeal to wishful thinking.

I can't say that you are wrong. But this doesn't exactly fill me with confidence. Probably doesn't help that I don't really have a minds eye. I am probably clinging too heavily for some "underlying truth", as well.

Reminds me of the complaints I'll see, where folks bemoan that nobody learns the reason math works anymore. Only, that doesn't really make sense. Few of us ever really learned "why math works" because it turns out that is not nearly as straight forward as folks assert that it is.

<comment><USER9> Well, I did refer to it as an _analogy_. However, I do think there are probably several useful analogies between machine learning and neuroscience.

For example: Sparse Encoding [http://www.mit.edu/~9.54/fall14/Classes/class07/Palm.pdf](http://www.mit.edu/~9.54/fall14/Classes/class07/Palm.pdf)

<comment><USER11> Oh, it is definitely an analogy. I should have stressed more that I don't think you are wrong. Not just that I can't say you are wrong. I really don't think you are.

My concern is that I'm just not sure how far that analogy helps. Unlike old analytic models, we don't have much in the way of analyzing these new models. We can only talk towards how well they perform on fixed data sets.

There are some interesting results in transfer learning. But, I suspect most of the truly amazing results have been essentially cherry picked in the process. (That is, blind pigs and troughs, and all of that.

I hope I'm wrong. I really do.

</comment></comment></comment></comment><comment><USER12> Great, another of numerous ways for us to lie to each other.</comment>


Tokyo 2020 Olympics postponed to 2021 due to coronavirus, report says - <AUTHOR> https://www.sfgate.com/cnet/article/Report-Tokyo-2020-Olympics-postponed-to-2021-due-15151350.php <comment><USER2> Sorry OCDs, there's no way avoiding postponement of this quadrennial event.</comment>


What Colour are your bits? (2004) - <AUTHOR> http://ansuz.sooke.bc.ca/entry/23/ <comment><USER2> Reminds me of jwz's problems [1] with broadcasting music via Youtube. When broadcasting from his DNA Lounge, he was greeted with the dreaded "Warning: Your stream will be terminated if you continue broadcasting content that you are not authorized to use."

His take on it: _Because that company is run totally by robots, and there 's apparently no mechanism to tell them, "Hey robot, STFU, I pay licensing fees for all of this music and it's totally legal for me to do this."_

Indeed, what Colour were his bits?

[1] [http://www.dnalounge.com/backstage/log/2014/09/03.html](http://www.dnalounge.com/backstage/log/2014/09/03.html)

</comment><comment><USER3> This concept of "Colour" causing difficulties exists only because of the extreme flexibility and "genericness" of digital data, currently unparalleled by anything else in the real world. If/when technologies to manipulate physical objects generically at the level of atoms become feasible and widespread, we might be asking "What Colour are your atoms?"

<comment><USER4> In other words, a Star Trek replicator will make mincemeat of the idea of copyright...

<comment><USER5> Or the other way around. Existence of replicators will create laws forbidding you to whittle yourself a shape of a Mercedes.

<comment><USER6> Or the other other way around: Star Trek style replicators will never see the light of day. As soon as the technology even REMOTELY gets close, everyone with a financial interest in keeping physical goods scarce (basically all manufacturing companies), will collectively come down on it like a ton of bricks. If you think the record and movie industry lobbying effort against sharing is powerful, imagine basically every manufacturing company in existence joining in.

<comment><USER4> As long as some political suit somewhere things that it will give them a leg up in the rat race, that lobbying will be shown the door.

</comment></comment></comment></comment></comment><comment><USER7> Much of the article is non-sensical, but this part got my attention:

> It makes a difference not only what bits you have, but where they came from. > There's a very interesting Web page illustrating the Coloured nature of bits > in law on the US Naval Observatory Web site. They provide information on > that site about when the Sun rises and sets and so on... but they also > provide it under a disclaimer saying that this information is not suitable > for use in court. If you need to know when the Sun rose or set for use in a > court case, then you need an expert witness - because you don't actually > just need the bits that say when the Sun rose. You need those bits to be > Coloured with the Colour that allows them to be admissible in court, and the > USNO doesn't provide that. It's not just a question of accuracy - we all > know perfectly well that the USNO's numbers are good. It's a question of > where the numbers came from. It makes perfect sense to a lawyer that where > the information came from is important, in fact maybe more important than > the information itself. The law sees Colour.

Let's consider a slightly different hypothetical. I tell a police officer: "the blood on the carpet is that of the accused." A forensic scientist tells a police officer: "the blood on the carpet is that of the accused." Are these the same bits? By the reasoning of the article, yes, but the law rightfully treats them completely differently. The source of the bits goes to reliability.

In fact, the disclaimer on the UNSO's website explains why the data is not reliable for litigation: [http://aa.usno.navy.mil/faq/docs/lawyers.php](http://aa.usno.navy.mil/faq/docs/lawyers.php) ("The data are _computed_ and are not reports of _observed or recorded_ events. The computations assume certain conditions and the data might therefore not be relevant to the facts at issue in a specific case."). The mistake made by the author is precisely why courts are wary to take judicial notice of random facts on the internet--even when the data is accurate, it is easy to fail to take account of relevant limitations arising from the nature of the data or the data collection.

And contrary of the author's assertion--computers care a lot about where bits come from. The whole point of things like GPG signatures on digital downloads is because we trust some sources and not other sources, even when the bits might seem to be the same.

<comment><USER4> A GPG signature is metadata (color).

My string of zero and your string of zero may have different GPG signatures, but they are both strings of zero. Stripped of metadata (color) there is no way to tell who the source was.

<comment><USER8> Isn't the signature itself additional bits? This whole distinction between data and metadata is farcical: metadata is a subtype of data, they are not disjoint.

<comment><USER4> Metadata is a sticky note on a sheet of paper. It may make some statement about what the paper it is stuck to, but it is not written on the paper itself.

Metadata basically means data about data.

The core issue is that if you have a string of bits (say a long line of zeroes), you can't say from that string of bits alone where it came from, how it was created or anything of that sort. You will need metadata/color/sticky- note to tell you this.

Yes you have file formats that can carry the metadata alongside the data (id3 tags in mp3 files for instance). But even if you strip out that metadata the data itself is still there and still usable for whatever you want to do with it.

<comment><USER8> That still doesn't explain how metadata is color in this context. From the OP:

 _Those questions are perhaps answerable by "metadata", but metadata suggests to me additional bits attached to the bits in question, and I'd like to emphasize that I'm talking here about something that is not properly captured by bits at all and actually cannot be, ever._

<comment><USER4> Hrmf, has it really been that long since i read the article. Had completely forgotten that he touched on the subject of metadata. I stand, corrected, i guess...

<comment><USER8> Though now, after re-reading the author's statement, I'm not sure I agree with all of it. How can anything not be representable with bits? It's just a matter of finding an encoding scheme.

I guess perhaps the author's point is that this coding scheme must be communicated through some side-channel, coloring the bits. The bits themselves could tell you, for instance, which version of a given protocol to use, but couldn't indicate the protocol out of the blue without some other agreement.

And this gets back to the discussion of intent. These bits over here are colored by intent. You can codify that color in bits over there, but those are still different bits, and those bits still need to have color information. It's colors all the way down!

<comment><USER9> Encode the feeling of love into bits. Look, I'm stupid. I just wanted to say that once.

<comment><USER10> 4C 6F 76 65

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> the game Paranoia sounds really interesting, anything similar that's still around?

<comment><USER12> [https://www.kickstarter.com/projects/1990654819/paranoia- rpg](https://www.kickstarter.com/projects/1990654819/paranoia-rpg) this, hopefully.

<comment><USER11> thanks so much - this look to be my cup of tea!

</comment></comment></comment><comment><USER13> [2004]

I don't like this new HN trend of not adding the year of the article. This is Hacker NEWS not Hacker Old.

<comment><USER14> I think this has surfaced again because of some of the discussion around this article on The Pirate Bay: [https://news.ycombinator.com/item?id=8728011](https://news.ycombinator.com/item?id=8728011). I think it's a good article whether or not it was written ten years ago.

<comment><USER15> He disapproves the lack of the year in the title, not the presence of the article on HN.</comment></comment></comment>


Sinclair C5 Electric Car (1985) - <AUTHOR> http://en.wikipedia.org/wiki/Sinclair_C5 <comment><USER2> I once spent an unhappy day with one of these.

The battery ran out 30 minutes into my ride and I had to peddle it home. The placement of the steering was uncomfortably low, my knees banged off the front, the seat was curved so my back was bent, there were screw heads poking through the seat back in line with my spine. I had to peddle extra hard as I were turning the motor as well as the wheels.

I had blisters all down my back when I got home.

</comment><comment><USER3> Eevblog had a nice video about this, taking it for a test ride and looking at the electronics: [http://www.eevblog.com/2013/07/31/eevblog-501-sinclair-c5-el...](http://www.eevblog.com/2013/07/31/eevblog-501-sinclair-c5-electric- car-teardown-test-drive/)

</comment><comment><USER4> Check out videos on youtube and you'll see why this never caught on, it's basically a death trap that isn't suitable for sharing the road with cars.

[http://www.youtube.com/results?search_query=c5+sinclair&page...](http://www.youtube.com/results?search_query=c5+sinclair&page=&utm_source=opensearch)

These days you're much better off just buying an electric scooter or motorcycle or a modern electric automobile like a Tesla.

<comment><USER5> They sold 17,000 of them - for a death trap, would you expect them to have zero deaths? Because [1] says there were zero deaths.

I put it to you the C5 is no stupider than a segway, and at one tenth the cost.

[1] [http://www.crashonline.org.uk/19/sinclar5.htm](http://www.crashonline.org.uk/19/sinclar5.htm)

<comment><USER4> How many have actually been used those? You don't see them on the roads which would indicate very few of them actually in use.

Also, "no stupider than a segway" is not a selling point for anything.

</comment></comment></comment><comment><USER6> Would a more modern version be the pedal assist bikes? ( [http://www.amazon.com/Alation-Step-through-36v11Ah- Samsung-B...](http://www.amazon.com/Alation-Step-through-36v11Ah-Samsung- Battery/dp/B0097DJ458/ref=sr_1_1?s=cycling&ie=UTF8&qid=1377997910&sr=1-1) )

I've been thinking of getting one of these because they bridge some rules about motorized vehicles: since you are still peddling you can take them on bike trails, but since the assist kicks in there is almost no resistance allowing you to maintain higher speeds...

</comment><comment><USER7> What I find interesting about electric cars is that they are as old as petrol cars and in the late 19th century they were actually more popular, just to be left in shadow for the next 100 years. Now I'm waiting for the rebirth of steam cars, you can't get more eco than that :)

</comment><comment><USER8> This[1] is a cool drive & teardown video of the C5.

1\. [https://www.youtube.com/watch?v=xS6q27VOTOk](https://www.youtube.com/watch?v=xS6q27VOTOk)

<comment><USER2> It's worth pointing out the link to Micro Men on that page. Micro Men is a very good fictionalisation of the Sinclair vs Acorn battle for the UK BBC Micro contract.

</comment></comment><comment><USER9> I'd prefer one of these - [http://www.comotrikes.co.uk/](http://www.comotrikes.co.uk/)

edit - but maybe not for five grand

</comment><comment><USER10> Is this a car or a sit down scooter? Personally I don't see this as a car.

<comment><USER11> I think it was intended to replace a car, but legally it counts as an electrically-assisted bicycle since it has pedals and such a small motor.</comment></comment>


French electricians turning off electricity for government, police, corporations - <AUTHOR> https://twitter.com/LeeCamp/status/1222312399866220544 <comment><USER2> the french are great at reminding their leaders that their economy only works because of the people participating in making it work.

<comment><USER3> The've also cut the electricity to unions that they don't agree with. That doesn't seem so democratic does it.

<comment><AUTHOR> If a union sells out to support the kleptocratic government's austerity, at the expense of the people, is it really that undemocratic to cut their power off?

<comment><USER4> If you have democratic consensus that group X is corrupt, sold out, etc, and you pass a law to cut their power off, that's democratic.

If you are some sub-majority of the population, and you go after groups you don't like unilaterally by illegally taking action against them, that doesn't seem democratic at all, really.

It could be fair to say they deserve it, I don't know enough about French politics. But I don't see how that particular type of action could be described as democratic. Lots of groups claim they are the good guy and/or represent the will of the majority, but I think it would only be democratic to substantiate that and take action through elections.

<comment><AUTHOR> > If you are some sub-majority of the population, and you go after groups you > don't like unilaterally by illegally taking action against them

This could describe any of a litany of actions taken by pretty many so-called democratic governments, who represent an even smaller number of the population than the unions in question.

The problem is that we have destroyed the meaning in the word "democratic"

</comment></comment></comment></comment></comment><comment><USER5> Solidarity, love to see it</comment>


CDC director warns that Congo's Ebola outbreak may not be containable - <AUTHOR> https://www.washingtonpost.com/health/2018/11/05/cdc-director-warns-that-congos-ebola-outbreak-may-not-be-containable/ <comment><USER2> The real fear is that one person makes it out of the area and into another part of the world, similar to what happened in Dallas. The more people are infected in that area the more the odds of escape go up. Any place in the world can wind up with an outbreak within a short time. Given the response of the hospital in Dallas, it's very likely most medical facilities would not recognize Ebola before transmission had already occurred.

<comment><USER3> I'd think (hope?) that any hospital ER is trained to recognize hemorragic fever when it presents.

<comment><USER4> Whether the patient will see a doctor in the early or late stages of Their Ebola infection will depend on whether they have health insurance. So here's another reason for socialized healthcare.

<comment><USER5> I don't want to pay my insurance deductible... Many people "worse off" than me pay nothing and get to go to the hospital no problem... I'd be much more interested in everyone paying a reasonable amount like it was decades ago

<comment><USER6> > Many people "worse off" than me pay nothing and get to go to the hospital no > problem...

This is terribly misconstruing the facts. They get to go to ER treatement only, no midterm care. The problem is if they don't pay, their credit record is heavily penalized. This may seem like nothing but for someone with out money or means it spells a quick down hill slide to homelessness. No problem =/= homeless

FYI the #1 cause of home foreclosures in the US is medical bills

<comment><USER7> > This is terribly misconstruing the facts

When you're broke, you're broke. Just because you have health insurance doesn't mean you can afford to use it. I had better healthcare as a homeless person than as a massively indebted recent college grad with a health plan through work.

<comment><USER8> How did you have better healthcare as a homeless person than through your employer? Like what were the numbers (e.g., monthly cost, deductibles, prescription cost, co-pays, and coverage). This is hard to believe.

If you're referring to EMTALA requiring emergency rooms stabilize all patients, (1) EMTALA applies to everyone, and (2) EMTALA is not healthcare.

<comment><USER7> Medi-Cal was free. Basically everything covered on Medi-Cal was free, or super cheap, and it covered a lot. While on my health insurance plan provided by work, the job where I wasn't making enough money to save or meet my deductible, I got into a bicycle accident & ended up with a $50,000 USD out- of-network hospital bill.

In case you don't know, one of the reasons that some chronically homeless people don't have healthcare is that many don't bother to get it. There's guy in my neighborhood that told me he hasn't gone (but probably should go) to our local government to get his $100-ish/month, food stamps, and healthcare. Also, he ends up in a local emergency room because someone calls an ambulance when he's drunk, passed, and shaking out on the sidewalk. I've called an ambulance a few times for people in that state myself. He also ends up in the emergency room because he routinely gets assaulted while sleeping on the street because there's are not enough shelters for him.

<comment><USER9> I totally believe this.

When we first met, my wife was still in school, and I had been working in computer stuff for about 10 years. I had good benefits, and thought that medical insurance was a solution to a big problem.

Then watched as my wife tried to get treated for some routine stuff. Not available via the campus clinic, and yet her student "insurance" was not accepted anywhere else within 150 miles without a "co-pay" that was larger than the cost for uninsured patients.

The situation only got worse when we were married later that year. My insurance would only apply after she had sought coverage through her school plan.

We called it "anti-insurance": a form of coverage that, when encountering actual insurance, annihilates it in a violent explosion of virtual particles and real paperwork.

Yeah. The system is fucked.

I believe you.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> I didn't even realize there was recent outbreak. This hasn't been in the news at all.

<comment><USER11> It's been reported on for months in major outlets, just not with the fervency of last time. Find new news sources or pay closer attention to your existing ones behind the outrage cycle.

<comment><USER12> Almost everything is reported in major outlets somewhere, to the point that it's pretty remarkable when something isn't. There's just so much news out there that the priority they give to it matters.

</comment></comment></comment><comment><USER13> [https://www.msf.org/drc-2018-ebola-outbreak-crisis-update- oc...](https://www.msf.org/drc-2018-ebola-outbreak-crisis-update-october-2018)

[https://www.msf.org/donate](https://www.msf.org/donate)

</comment><comment><USER14> "CDC director warns that Congo's Ebola outbreak may not be containable" especially as the locals insist on following traditional burial methods such as washing the deceased and sitting in for days on end with cadaver.

<comment><USER15> US, UK, France, UAE,... insist on traditional bombing of countries for peace.

</comment></comment><comment><USER16> I would love to see regularly updated and triaged "backlogs" for countries, and subsequently the world. And then maybe just report on the top 100 in each news cycle.

Just lists of most important tickets in a global todo list - because this would just rise to the top pretty quickly and make us rethink mid terms, Brexit and train delays.

<comment><USER17> Something like [https://ourworldindata.org/](https://ourworldindata.org/) but with more frequent updates? I ask because I too am interested in the very same type of dashboard, and instead have a "Dashboard" bookmarks folder with a variety of links for data.

<comment><USER16> More akin to the Copenhagen Institute thingamijig that Biorn Lomborg hosts, that tries to get bigwig economists to prioritise interventions based on cost benefit (various low cost high impact projects like innocuoation and medical / public health top the bill)

Something that takes this concept and runs with it, taking both identifiable _problems_ (Ebola outbreak) and _solutions_ (do nothing, invade, stop subsidising petrol in that country)

I suspect that the equivalent of National Security Advisor in each major country does this. I guess what I want is to steal each of their daily briefing documents and make a combined one, and have it read out each day onthe daily news.

[https://en.m.wikipedia.org/wiki/Copenhagen_Consensus_Center](https://en.m.wikipedia.org/wiki/Copenhagen_Consensus_Center)

</comment></comment></comment><comment><USER17> Uganda is preemptively vaccinating front line/first responder workers with an experimental, unlicensed vaccine (with WHO backing) that has shown efficacy in attempts to contain the virus.

> Country becomes first to administer experimental vaccine without active > outbreak of the deadly disease, in bid to protect 2,000 medics close to DRC > border

> "In previous [Ebola] outbreaks, Uganda lost health workers, including the > renowned Dr Matthew Lukwiya, as they cared for patients," said Yonas Tegegn > Woldemariam, WHO's Uganda representative. "Scientists believe such > invaluable lives would have been saved had a vaccine been in existence > then."

[https://www.theguardian.com/global- development/2018/nov/06/u...](https://www.theguardian.com/global- development/2018/nov/06/uganda-vaccinates-at-risk-health-workers-ebola-congo- drc)

<comment><USER18> > including the renowned Dr Matthew Lukwiya

Short video about Dr. Lukwiya's story. He was on a sabbatical, but rushed back to provide aid, while others were running in panic: [https://www.youtube.com/watch?v=X7LpjpuOvc8](https://www.youtube.com/watch?v=X7LpjpuOvc8)

<comment><USER17> "Look for the helpers" \-- Mr. (Fred) Roger's mother.

</comment></comment></comment><comment><USER19> Some interesting data about the efficacy of the experimental vaccine that is being used to try to control the outbreak.

> Merck's Jakub Simon, MD, MS, addressing a session at the American Society of > Tropical Medicine's (ASTMH) annual meeting here, showed two charts tracking > Ebola during this past spring's outbreak in the DRC's Equateur province and > the subsequent one now raging in the North Kivu and Ituri provinces. In > both, health workers on the ground have been using the Merck vaccine in a > so-called ring vaccination strategy to contain the epidemic. Although not > yet formally approved for marketing, the vaccine has been cleared for > emergency use.

> In Equateur, immediately after vaccination began with the Merck product, the > outbreak petered out.

> But the experience in North Kivu and Ituri has been quite different. > Although new cases dropped significantly after vaccination began in early > August, they never approached zero, and 2 months later they rocketed back to > the level seen before vaccinations began.

[https://www.medpagetoday.com/meetingcoverage/astmh/76018](https://www.medpagetoday.com/meetingcoverage/astmh/76018)

<comment><USER20> That's not great! I wonder if Ebola is especially quick to mutate. This article: [https://jvi.asm.org/content/early/2015/12/08/JVI.02701-15](https://jvi.asm.org/content/early/2015/12/08/JVI.02701-15) suggests that it is. A mitigating factor is that it doesn't seem to tolerate mutations very well (i.e. lots of mutations lead to non-viable strains), but I guess with a large enough patient pool it could have out-run the vaccine.

</comment></comment><comment><USER21> It's scary to consider it making it to some of the large slums in Nairobi, India, or Pakistan.

<comment> the-red-herring That's a bit racist to call a place a slum

<comment><USER22> Comment currently says "Slums _in_ " a place.

</comment></comment></comment><comment><USER23> Seems like a bigger problem than a bunch of migrants slowly walking towards the southern border.</comment>


Steve Jobs in a Box - <AUTHOR> http://nymag.com/news/features/33524/ <comment><USER2> "First, cut a hole in the box...."

<comment><USER3> Heh, that's the first thing I thought of too.

Good read, thanks nickb.

</comment></comment><comment><USER4> One could make a decent opera about the struggles between Jobs, Gates, IBM, and Intel.</comment>


What non-Google employees don't understand about Steve Yegge's post - <AUTHOR> http://steveobd.blogspot.com/2011/10/what-most-non-google-employees-dont.html <comment><USER2> It was still insightful for me. I always wondered how it was that Amazon managed to beat Google at coming up with services like EC2 and S3.

<comment><USER3> Google's attitude towards services seems much different from Amazon's as well. Google seems to focus almost entirely on ad-supported (with a few for-pay services, like Apps for Domains); Amazon, on the other hand, charges for all of its services (with a few ad-supported things, like cheaper Kindles).

The Google approach would discount something like EC2 or S3 showing up; if your first question about any product is 'how can we use it to serve advertising?' then services like that won't make the cut. If your question is 'Will people pay for it?' then they definitely seem appealing.

</comment></comment><comment><USER4> I don't get it. I never assumed for a second that this sort of internal memo would be hugely controversial within google. Hell, even within Microsoft such things are not unheard of or terribly controversial. What I took away from Yegge's memo was that Google is still fucking up in maintaining an antiquated high level architecture for its services. And I naturally assumed that they knew of the problem already as well, most big problems are widely known even if they remain unaddressed. Perhaps Yegge's vehemence and reputation might draw more people's attention to the problem though.

</comment><comment><USER5> That arrogancy is funny (or is it?) - we are the Gods of the Universe. Nothing is wrong, it never was. When appropriate, the exec team would address it and all problems (that we do not even hav) go away, just like that. Eric, Larry and Sergey are always aware of all things. We are invincible.

</comment><comment><USER6> Oh, so we can expect nothing is going to change at Google, but he won't be fired. How inspiring.

<comment><USER7> What else did you expect? That a single leaked posting from a fairly visible blogger employed by a company whose size is best compared to an oiltanker under full power is going to cause a major change in direction?

If Larry Page would have written that email it would still take a couple of years before you'd see the effects.

Steve is possibly spot-on with his criticism but at the same time he has no idea about the top priorities to management at the moment. Simply writing this up will not change those priorities.

</comment></comment><comment><USER8> This "it's not a big deal" post makes it even worse, I think: so the upper management knows about the problem(s) outlined so well in Yegge's post and still does nothing (that we know of)? Why?

<comment><USER9> 1\. There's only so many priorities at once.

2\. It's just the opinion of Yegge. His post mentioned that there are lots of pain points. It is not clear if enacting it would be worth it.

3\. Note that the blog post mentioned that these sort of posts float around Google all the time. If Larry, Sergey and Eric worked on every single request, Google would be bankrupt from analysis paralysis.

<comment><USER10> That's management speak. From the post:

"what most people don't get about his post is that you see posts like this almost every day at Google"

If this is really the case, then we know Yegge's suggestions are not on the priority list.

Sounds like Larry, Sergey and Eric aren't working on any of these requests.

</comment></comment></comment><comment><USER11> It seemed to me that the significant thing about the post wasn't really its content (which the world at large doesn't understand or care about), but that a genius Google employee had proved incapable of navigating their flagship social networking product, resulting in the public distribution of content that was intended to be private. I don't actually know if the mainstream press have made anything out of that, but it seems like potentially fairly massive PR fail.

</comment><comment><USER12> This is a good article and reflects my experiences reading the mailing lists and watching TGIFs as a Google intern.</comment>


Single Div CSS Tesla Cybertruck - <AUTHOR> https://codepen.io/lynnandtonic/full/NWWmzjr <comment><USER2> Super cool!

Is there a tool for these types of things or is it by-hand wizardry?

<comment><USER3> At least some css wizards are doing it by hand. Fx Diane Smith has made several extremely beautiful oil paintings in pure html and css. Which is an outright insane achievement.

</comment></comment><comment><USER4> Amazing</comment>


Germany's Wolf Population on the Rise - <AUTHOR> http://www.dw.com/en/germanys-wolf-population-on-the-rise-new-data-shows/a-41503395 <comment><USER2> Despite what the article says, the International Union for Conservation of Nature (IUCN) doesn't consider the wolves that inhabit the Eurasian continent to be endangered [1].

[1] [http://www.iucnredlist.org/details/3746/1](http://www.iucnredlist.org/details/3746/1)

<comment><USER3> Some interesting notes in the summary: 1) wolves are one of beneficiaries of political instability (see the section on Balkan states). 2) in case of need, rescue from the Russian population is possible (section 7).

</comment></comment><comment><USER4> yay! With hunters who keep the woods overpopulated with deer etc. (because as they age they give better trophies) I can only hope that we will get even more packs in the future throughout the country.

I have read an amazing report on how wolves changed the ecological system of yellowstone national park for the better (not quite sure which article specifically , believe it was [https://www.yellowstonepark.com/things-to- do/wolf-reintroduc...](https://www.yellowstonepark.com/things-to-do/wolf- reintroduction-changes-ecosystem)) which makes me even more enthusiastic.

<comment><USER5> "yay!" is what only those people in Germany say, that don't have to live with the consequences that pack of wolves are their new neighbours.

<comment><USER4> Oh snap. forgot that I left my flock of sheep in the front yard...

seriously, what are these terrible consequences?

<comment><USER6> How about your kids? In Germany there are a lot of small villages. Kids still playing in the forests and fields.

It's plain stupid to forget that wolves are predators.

<comment><USER7> Oh please.. I was a kid in Polesie in eastern Poland, huge forests all around. Played in the woods almost every day in the summer/winter vacations, never even encountered a wolf, despite them being there.

Stray dogs are a bigger threat. Rabid bats or foxes are a bigger threat. Ticks are a MUCH bigger threat. And if you drive a car - you're much more likely to kill a human being than all the wolves in the world combined.

50 years, whole world - over 211 deaths. ~5 per year.

> In the half-century up to 2002, there were eight fatal attacks in Europe and > Russia, three in North America, and more than 200 in south Asia. [1]

For comparison, just in one year, just in USA - around 20-30.

> At least 4.5–4.7 million Americans are bitten by dogs every year and, > according to the Centers for Disease Control and Prevention (CDC), 20 to 30 > of these result in death [2]

Wolves avoid people.

There's something irrational in people's reaction to wolves.

[1] [https://en.wikipedia.org/wiki/Wolf_attacks_on_humans](https://en.wikipedia.org/wiki/Wolf_attacks_on_humans)

[2] [https://en.wikipedia.org/wiki/Fatal_dog_attacks_in_the_Unite...](https://en.wikipedia.org/wiki/Fatal_dog_attacks_in_the_United_States)

</comment></comment></comment></comment></comment><comment><USER6> Wolves are preditors. There's a reason why our ancesters have evicted them.

<comment><USER8> Totally legit, let's just kill everything that is a predator but the humans themselves... What a thoughtful comment, thank you for that

<comment><USER6> That's not what I've said. And I'm not suggesting this. Your comment is a bit hostile.</comment></comment></comment>


China Creates a World Bank of Its Own, and the U.S. Balks - <AUTHOR> http://www.nytimes.com/2015/12/05/business/international/china-creates-an-asian-bank-as-the-us-stands-aloof.html?emc=edit_th_20151205&nl=todaysheadlines&nlid=59761154&_r=0 <comment><AUTHOR> I posted this article. It is rather long but answered questions I had on new financial partnerships.</comment>


MD5 hash extension attack breaks API authentication in Flickr (and others) - <AUTHOR> http://netifera.com/research/

<comment><USER2> Good work from Bruce Leidl's team at Netifera (Bruce is brl, a regular).

Long story short: with all the mainstream hash algorithms, if you know the length of a hashed message, you can take its hash and from it synthesize the hashes of messages with arbitrary suffixes. It's called a message extension attack.

A really common pattern in hand-rolled authentication schemes is to hash a message needing authentication with a secret key, and then send the message and the hash. If you know the secret key, you can verify the message. The secret key doesn't need to be sent at all.

If your scheme is vulnerable to message extension attacks, attackers can mint arbitrary messages with valid authentication by taking an already- authenticated message and extending it to cover a suffix that changes the meaning of the legitimate message. It's a game-over flaw.

Colin Percival noticed a related (but less serious) flaw in Amazon's AWS authentication scheme. At the time, people asked if he'd looked at Flickr's scheme. He had, but not very closely. Colin's flaw was in canonicalization of messages, which is a more obscure attack (by a little bit) than message extension, which is is described in the Wikipedia under "Cryptographic Hash Function". Colin didn't flag this flaw.

Which just shows to go you: crypto primitives are radioactive. You are not going to get them right. Use high-level interfaces like GPG or SSL or cryptlib, or design your app not to need crypto.

<comment><USER3> Isn't "game-over flaw" a bit overstated? It's a serious blunder, but if the data you're authenticating is highly structured then in many cases it won't be exploitable because the final padding from the original message becomes part of the body of the extended message, as unparseable gibberish.

<comment><USER4> The final padding is never parsed if we put set them as (part of) the value of an unknown key, i.e., setting a=pi_key....<pading>

<comment><USER3> I'm talking about exploitation of this vulnerability in general, not the specific case of Flickr. Not everything is a sequence of key-value pairs formatted in UTF-8.

<comment><USER2> Most of the crypto you're going to run across as a pentester will be in apps written in Java and C#, and in almost every one of those cases, garbage characters won't break a parse. ".split()" works just fine even if you have 16 characters of random high ASCII. It's one of those things C programmers definitely have to unlearn.

<comment><USER3> Eeeeeeewwwww.

If you're using .split() to "parse" untrusted input, and not even validating it against a regex first, that's an epic fail in its own right.

<comment><USER2> What a weird thing to say. You trust a regex engine more than you trust "split()"?

<comment><USER3> I trust a generated parser more than a hand-written one. Any parsing algorithm that involves the use of split() is almost certain to be weakly thought-out and have ill-defined behavior for unexpected input. A well-written parser will never read past the first unexpected character, or at least token.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> This reminds me a lot of the problem the amazon s3api v1 suffered from. (It's referenced in this paper.) Colin Percival did a wonderful job alerting amazon and getting it fixed. Reading the paper it looks like they tried to alert people, but they didn't go into detail.

You can read more about the amazon problem at Colin's blog. [http://www.daemonology.net/blog/2008-12-18-AWS-signature- ver...](http://www.daemonology.net/blog/2008-12-18-AWS-signature-version-1-is- insecure.html)

</comment><comment><USER6> Yahoo has dedicated internal people who, if you ask them nicely, will pick your app apart to find these kinds of design and implementation errors. Reviewing your code with them is very educational but not pleasant to the ego. Either they completely fell down on the job, or the Flickr devs decided they were smart enough to do security by themselves.

<comment><USER4> afaik, the API was built before Yahoo! bought Flickr

<comment><USER7> Link is the one mentioned above, <http://www.flickr.com/services/api/auth.spec.html>

</comment></comment></comment><comment><USER8> Sites using this vulnerable signing method must add a warning to their documentation.

Flickr authentication spec lists ludicorp.com authors,

<http://www.flickr.com/services/api/auth.spec.html>

</comment><comment><USER9> The takeaway for me was: 1) use a HMAC instead of using message digests directly 2) don't throw away structure in the strings you sign.

<comment><USER10> Once you reach number 30 or 40 in this list, you get a lot more leery of takeaways.</comment></comment>