Scala turns 10 - <AUTHOR> http://article.gmane.org/gmane.comp.lang.scala/17 <comment><USER2> However certain parts of Scala are slightly older (16/07/2003)[1]

[1] - [https://github.com/scala/scala/blob/master/src/library/scala...](https://github.com/scala/scala/blob/master/src/library/scala/Option.scala#L303)

<comment><USER3> It's been 10 years since the first Scala release, not since the inception of the language.

</comment></comment><comment><USER4> My "favorite" feature is the case class airity limit of 22. Is that ever a fun one to discover the hard way.

<comment><USER5> This is finally going away in the next version (2.11, which will hit RC1 next month) see [1].

[1]: [https://github.com/scala/scala/pull/2305](https://github.com/scala/scala/pull/2305)

<comment><USER6> What are the implications of not implementing FunctionN? Will the apply method still be there? Can I still pass the case class companion object to a higher order function? Will shapeless' Iso.hlist still work? (that's the big one really, as it allows dealing with case classes more-or-less generically)

<comment><USER5> Yes the apply _method_ is still there. But since it has more than 22 arguments, you cant't lift it into a _function_ object anymore.

This will break some tools, like Play's forms, that need you to pass to a couple of serialization/deserialization functions.

Shapeless will probably be fine, or at least, since it is macro based, it will be able to go around the missing unapply and extract the fields directly, like pattern matching does. (I don't know shapeless enough to go into more details)

<comment><USER7> Aaaaah, interesting. Spray uses Shapeless heavily, so this should make it a shoo-in for the Typesafe stack.

</comment></comment></comment></comment></comment><comment><USER8> When I looked at Scala briefly in 2006 or so built-in support for XML processing was a big selling point. Another one was 'multiparadigm' \- like C++. It was clear at that time that Scala would not become a mainstream language.

<comment><USER9> I don't follow the connection between your comments.

XML Support as selling Point + Multiparadigm == !mainstream?

I agree that scala has its quirks (IMO, the type system is way too complicated), but to have dismissed it based on two apparently unrelated features 8 years ago seems a little strange.

</comment></comment><comment><USER10> It appears they've changed the look of the scala-lang website to celebrate this:

[http://www.scala-lang.org/](http://www.scala-lang.org/)

(This is what it looked like yesterday: [https://web.archive.org/web/20140119030617/http://www.scala-...](https://web.archive.org/web/20140119030617/http://www.scala- lang.org/) )

<comment><USER11> The current design is actually the old design whereas the archive.org link is the _real_ current design.

Either they're doing a throwback thing for the anniversary or that's a remarkably coincidental server issue.

</comment></comment><comment><USER12> Wow I wouldn't have guessed it was that old.

<comment><USER13> Hehe, I remember taking a compiler class by Martin Odersky when I was studying at EPFL 8 or 9 years ago. We had to implement a compiler for a mini-Scala.

After that class, I thought I would ever see it again.

<comment><AUTHOR> Was that mini-Scala any of the { Eins, Zwei, Drei, Vier } languages?

<comment><USER13> I honestly don't remember, I hadn't spent too much attention in class. (Mistakingly believing I would never ever write a compiler...)

</comment></comment></comment></comment><comment><USER14> What ended up happening to the .NET target?

<comment><USER15> It died, because .net supports reified types, which make interoperability pretty much impossible.

Contrary to popular opinion, erasure is a superior solution to reification for many reasons, and this is one of them.

<comment><USER16> Can you be more specific? I know that reification can bloat runtime memory requirements, but I'd like to know about other disadvantages.

<comment><USER17> This might help: [http://beust.com/weblog/2011/07/29/erasure-vs- reification/](http://beust.com/weblog/2011/07/29/erasure-vs-reification/)

<comment><USER16> Not really... this only mentions that reified generics would be incompatible with current Java collections, which is obviously a problem that Java has, not that reified generics have (C# does great!).

<comment><USER18> C# was designed for the CLR and the CLR was designed for C#. F# on the other hand has 2 generics systems in the same language, one inherited from C# and one for ML-style Hindley–Milner based on type-erasure and they don't interact well.

Java's generics can't be built on top of the CLR's reified generics, but this goes for other languages as well - Haskell, ML, Scala, you name it. Basically, reified generics work well in case you design the language in combination with the VM, otherwise it becomes a huge PITA.

FYI, the CLR's reified generics is one reason for why the JVM is a better target for other languages. For dynamic languages, they are a problem because the bytecode generator has to work around them. For static languages, such as Scala or anything in the ML family, it's a problem because either (a) they are designed for co/contra-variance or (b) they don't support higher-kinded types or (c) they don't support rank-2 types or (d) in case you do need co/contra- variance rules, for some reason Microsoft chose to restrict the declarations only to generic interfaces and delegates, so you can't design a List<+T> class for example (to be honest, I'm not sure if this last one is a limitation of the language or the CLR).

Also, having reified generics is less important than you think. Scala for example can do specialization for primitive types and because the type-system is much stronger, coupled with an awesome collections library and pattern matching, the flow of the types is much better. For example, I can't remember any instance in which I felt the need to do a (obj isInstanceOf List<int>) check, immutable collections can be covariant without issues and for everything else there are type-classes, something which C# sorely lacks.

IMHO, in spite of people's opinion on the matter, Java's type-erased generics is one of its best features.

<comment><USER19> This seems inaccurate - generics aren't a problem for F# at all (the integration between the .NET and ML type systems is seamless here, as far as I'm aware). Indeed the people behind the .NET generics design (Don Syme and Andrew Kennedy in MSR) were coming from an ML background, and Don is the primary researcher behind F#. The big ML-.NET type system mismatches have to do with things like pervasive overloading in .NET making type inference difficult, nothing to do with reified generics.

<comment><USER18> Don Syme, Andrew Kennedy and many others that work for Microsoft are awesome. This doesn't make it any less of an appeal to authority that's not valid. The reality is that their creativity was limited by the constraints of .NET

> _The big ML-.NET type system mismatches have to do with things like > pervasive overloading in .NET making type inference difficult, nothing to do > with reified generics_

You've hinted at a side-effect, but no, it has to do with subtyping [1], which naturally leads to co/contra-variance [2]. Or to put it bluntly, in a nominal type system that has sub-typing, Hindley-Milner type-inference is not only "difficult" but actually impossible. And because F# had to be interoperable with .NET, then it needed C# generics. Pity, because there's many things that F# misses, like Ocaml functors, structural typing, type-classes, higher-kinded types and the list can continue. And I just love how List.sum<^T> is defined [3] (static member, FTW).

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

[2] [https://en.wikipedia.org/wiki/Covariance_and_contravariance_...](https://en.wikipedia.org/wiki/Covariance_and_contravariance_%28computer_science%29)

[3] [http://msdn.microsoft.com/en- us/library/ee353634.aspx](http://msdn.microsoft.com/en- us/library/ee353634.aspx)

<comment><USER19> Sure, subtyping adds additional pain points (mostly separate from overloading, BTW). But I think this is mostly orthogonal to reified vs. erased generics. As it is, the .NET runtime supports reified generics and declaration-site variance (albeit limited to interfaces and delegates), and to my knowledge there's nothing stopping a different language/runtime from implementing reified generics even with usage-site variance (and Scala's type system only has declaration-site variance, anyway, AFAIK).</comment></comment></comment></comment></comment></comment></comment></comment></comment>


DNA is now DIY: OpenPCR ships worldwide - <AUTHOR> http://openpcr.org/2011/07/dna-is-now-diy-openpcr-ships-worldwide/ <comment><USER2> I'll summarize how this would be used for those new to biotech:

\- You buy some primers which are basically chunks of nucleic acid that match whatever gene you want to look at.

\- You put DNA you've extracted together with these primers into the PCR machine. This makes lots of copies of the gene you're interested in.

\- Then you put the resultant amplified DNA into an electrophoresis gel box (such as the one sold by <http://www.pearlbiotech.com/> who also provide free plans. This is also run by Tito Jankowski of the OpenPCR project) which lets you look at the actual genotype (you compare the striations from your sample against other samples or a reference).

Primers are cheap and easy to get hold of and as other comments mentioned there are various software tools for letting you design them (you then place an order with a company like Invitrogen).

 _Edited to add:_

The reason you need to amplify stuff is because biology is annoying like that. Let's use a simile:

If particle physics is figuring out how a watch works by smashing it against a wall and studying the debris

Then biotech is throwing gears and springs into a test tube and carefully stirring at certain temperatures until you can hear ticking.

<comment><USER3> That's a good summary.

To put it another way, this is really just a box that does programmed temperature cycling. This is a critical part of PCR, but there's nothing too terribly high-tech here. PCR is a relatively simple process.

PCR is frustrating for the undergrad? Sometimes. Historically dependent on overpriced equipment? Absolutely. Dependent on small temperature variations? You bet. Complex overall? No.

<comment><USER4> Yup. Highschool / Undergraduate labs that teach PCR with two water baths and a stopwatch really kill a lot of the "magic" bestowed on these absurdly expensive machines.

</comment></comment></comment><comment><USER5> Whenever I come across this sort of DIY (or at least low-end) biotech I wonder, "Is this what computers looked like before the PC revolution?" I'm sure that's a terrible comparison, but it's easy to make, and there's just enough substance to it that I wonder if I'm missing out on the next revolution by not being involved in biotech.

</comment><comment><USER6> What can I exactly do with it? Can I find any gene and how does that really work? The video introduced some gels which reveal the DNA bits, but without further info it's not clear how does it find a particular gene. Really awesome stuff anyway.

<comment><USER7> PCR requires short (typically synthesized) DNA primers to initiate replication. That is, you must know the DNA sequences at the beginning and end of the region you want to amplify. Ideally you would know the entire sequence so you can synthesize primers that have one and only one binding site.

Amplifying DNA is useful/necessary for all sorts of biological procedures. High concentrations of DNA are needed for efficiently transfecting microbes, for example.

<comment><USER8> Fortunately, primers are relatively cheap, typically under $0.30/base, so for two 20bp primers, you may end up paying as much for shipping as for the synthesis itself.

These days, it's also pretty rare that you won't know the complete genome of the species you're working with, and there are free web tools that can help you design unique primers.

<comment><USER9>
      there are free web tools that can help you design unique primers.

True, but if you are going to your own PCR, you might as well do your own primer design. It's practically the "hello, world!" of bioinformatics, not to mention that a primer design server might not be able to help you if you're trying to do something fancy.

<comment><USER10> Wow, you all know a surprising amount about PCR! Are any of you regular PCR users?

Tito OpenPCR

<comment><USER9> Hey Tito, congrats on shipping! This is Patrick from Baltimore-- we talked for a bit at iGEM and the FBI DIY-BIO thing last year.

In the dry lab, I'm really more of a regular PCR _consumer_ than a regular PCR _user_ , but yeah, my attitude towards PCR is more or less my attitude towards snakes: try to keep a respectful distance :-)

</comment></comment></comment></comment></comment></comment><comment><USER11> Really cool stuff.

Of course, you need to get the sequence after you've got your amplified DNA. That involves performing electrophoresis or using a more modern DNA sequencer machine.

Questions:

Do people still work with gels and electrophoresis anymore? That seems like a barrier for a DIY shop. Not only does it involve a lot of equipment, but the interpretation of results seems like it would be hard.

Is it possible to send out the amplified DNA and get it sequenced by a service? I know that sequencing costs have gone down drastically with new technology, perhaps the DIYer can benefit from that?

<comment><USER10> Yes, DNA sequencing is about $5 to $10 a sample. Just send in your DNA!

Electrophoresis is nice and fast relative to sending in your sample, but currently much more complicated than dropping a tube of DNA in the mail.

Tito

</comment></comment><comment><USER12> What's your typical use case for one of these? I've read the wiki page on PCR but I still don't see it.

<comment><USER10> Hi, Tito here from OpenPCR. That's a fantastic question! The typical use case for PCR is "doing stuff with DNA" along the lines of what you read on the wiki page about PCR. We hope that OpenpCR will enable _new_ uses of PCR, where perhaps the user doesn't need to know much about DNA. What if PCR could "tell you whether you have the flu or a cold", or "is this sushi really yellowfin tuna", or "is this genetically modified corn?". What do you think of those apps?

Tito

<comment><USER8> The first two definitely seem like things that one could easily imagine a kit for: include primers for the species of interest, a bit of positive control, and perhaps even the Taq and other reagents you'd need. Then, the user could just collect their sample and run the PCR and a gel.

The third might be a bit harder to make a commercial kit for while steering clear of patents. It's also not clear to me what kinds of samples you'd be able to test. An ear of fresh corn would probably work, but what about (un-)popped popcorn, or cornflakes, or corn starch? It would definitely take some experimentation.

To make these kits really user friendly, ideally you could figure out some quick, easy way to determine the result of the PCR without running a gel, which require a relatively high voltage DC power supply and usually use Ethidium Bromide (a chemical that, depending on who you believe, is either nasty or really, _really_ nasty) and UV light. I'm thinking maybe some kind of spectrophotometer-like setup, which are used in things like a NanoDrop, but I don't know how easy/economical it would be to build a DIY-level work-alike.

<comment><USER10> GMO testing: there's a kit available for high schoolers (and we've used it too) [http://www.carolina.com/category/teacher+resources/classroom...](http://www.carolina.com/category/teacher+resources/classroom+activities/detecting+transgenes+in+genetically+modified+foods.do)

Pretty sweet!

Tito

</comment></comment></comment></comment><comment><AUTHOR> Looks like the site might be down--here's a repost of most of the content on Make Magazine's blog:

[http://blog.makezine.com/archive/2011/07/dna-is-now-diy- open...](http://blog.makezine.com/archive/2011/07/dna-is-now-diy-openpcr- ships-worldwide.html)

</comment><comment><USER13> I just built our KickStarter ordered OpenPCR today. The directions were easy to follow. And the assembled version is strong. Waiting on our order for a dremelfuge (a centrifuge attachment for a dremel) and our electrophoresis box. Can't wait to try it out!

<comment><USER10> You rock, Brett! Tito

</comment></comment><comment><USER14> I have been out of the lab for a while, but as I recall the consumables were an expensive part of PCR. Taq polymerase used to be pretty costly. Perhaps scale has caused that to come down recently? I see a lot of comments from hackers here questioning why this would be useful. In general, you can't get anything done in molecular biology without PCR. It's a critical tool for manipulating DNA. If you're going to do even the most basic biological manipulation (inserting genes into E. coli, comparing dan samples, amplifying small quantities of DNA for further work, etc...) you _need_ PCR.

<comment><USER10> Yes, the cost of the reagents (taq++) is now cheap, about ~$1 per run, and DNA sequencing is cheap ($5 to $10 a run).

Tito

</comment></comment><comment><USER15> That's disruptive tech. Very impressive guys.

Could you talk about the most difficult technical challenge you came across? The temperature regulation (i.e. the heart of the pcr machine) seems to me like the toughest part to get right.

I had the luck of working in a couple of well funded research labs, and I wonder if some of the tall prices we see for this type of lab equipment is due to "using someone else's" money for research.

In any case, I'm sure there'll be plenty of cash strapped labs around the world who'll make some science with it.

<comment><USER10> Thanks, we hope to get the word out to a lot of cash strapped labs. Suggestions where find them?

Re: Challenges -- Sounds like a good title for a future blog post: "The Toughest Challenge of OpenPCR". Off the top of my head, 2 challenging areas were the mechanical design of the heated lid and super-hacking Arduino for our USB control. For instance with the heated lid, we knew we had to have a flat hot surface come down on top of the PCR tubes. We went through several mechanical prototypes, and learned that the high tolerance of the heated lid meant that the tolerance for the rest of the device needed to match. Not giving you enough details at this point, but look out for that "challenges" blog post in the future :)

Tito

<comment><USER15> I'll keep an eye out for that, it'll be an interesting read.

As to where to find cash strapped labs, definitely not the elite institutions that we always hear of, but perhaps more local or state universities.

This might be a tool that international labs in less well funded countries could appreciate, have you reached out internationally?

</comment></comment></comment><comment><USER16> Awesome! Are you guys going to make an open dna microarray next? ;)

<http://en.wikipedia.org/wiki/DNA_microarray>

</comment><comment><USER17> This is fantastic!

Imagine you want to do something with DNA, perhaps you'd like to sequence something, or stick some in on orange, or beer yeast.

So you have this bit of DNA, but it's so incredibly tiny and fragile, it's almost not real, it's more like the idea of a thing then a thing.

So you use one of these PCR machines to make your idea real. You put your tiny, fragile sequence in and out comes a robust bucket full of DNA!

</comment><comment><USER18> As a former biotech grad now starting to finding my feet at contributing on github, this just put a massive smile on my face.

</comment><comment><USER19> Congrats on shipping, Tito. Glad to see you carrying the iGEM(-inspired) torch onward.

</comment><comment><USER20> so if I'm new to this, how can I use this machine to test out for diseases? That seems like a good first practical use.

<comment><USER4> Here's one way of doing it with a PCR machine:

1\. First find a risk gene of interest. You can find a gene name via flipping through scientific articles about the disease, and then finding the exact sequence of the gene on NCBI ([http://www.ncbi.nlm.nih.gov/projects/genome/guide/human/inde...](http://www.ncbi.nlm.nih.gov/projects/genome/guide/human/index.shtml)).

2\. Design primers that amplify around the region of interest. ($15 maybe tops?)

3\. Toss everything into a PCR machine and amplify it up. ($3 or so for per- run reagents?)

4\. Take your amplified product and send it off for sequencing (another like $10 or so?). When you get the sequence back, compare your sequence to the published sequence and see how it looks!

There are a few caveats in primer design, and there are some other ways of detecting disease markers, but this is one easy relatively low-cost approach.

</comment></comment><comment><USER21> Me and a friend helped out with a smaller sum each in the early phase of their Kickstarter campaign - we're really glad to see the project was finalized!

<comment><USER10> Thanks hackermom, we <3 u Tito</comment></comment>


The State of HTML5 Audio - <AUTHOR> http://www.phoboslab.org/log/2011/03/the-state-of-html5-audio <comment><USER2>
      Mobile Safari
      Can't pre-load sound files, only plays one sound at a
      time, severe lag, timing issues, clicks & pops,
      completely ignores every other call to play a sound,
      doesn't support Ogg/Vorbis. Utterly useless for anything.
      Oh, and did I mention it doesn't support Ogg/Vorbis?*

More specifically Apple has crippled the Audio API by disabling the autoplay option, and disabling the JavaScript .play() function. This makes it completely impossible to build web games, or web apps that have any sort of audio feedback in Safari on any iOS device.

Presumably they've done this to prevent web games from becoming popular and eventually dethrone the App store.

<comment><USER3> > Presumably they've done this to prevent web games from becoming popular and > eventually dethrone the App store.

No. They've done this to prevent web sites from outputting sound when they're loading (or just as they're done loading). Your blind hatred is moronic.

<comment><USER4> It seems obvious that Apple's interests don't coincide with fully functional cross platform mobile apps. Getting people to build with objective C and native code helps lock in and ensures that any sales go through their payment platform. If you don't think Apple has been moving in this way (anti-cross platform dev tools, requiring sales to use the iTunes payments) you simply haven't been paying honest attention.

<comment><USER3> > It seems obvious that Apple's interests don't coincide with fully functional > cross platform mobile apps.

No, it is not that obvious at all. May I remind you that Apple introduced the iOS SDK, spearheads what is usually recognized as the finest rendering engine out there and built what was the first mobile device actually able to surf the web?

And that they have shown no will or wish to backtrack on any of these, doubling down instead?

There is something much, much simpler to these issues:

1\. Jobs's Apple will never again live and die at the whim of a third party. They suffered greatly during the Classic-OSX transition because Apple had lost control of the development platform itself (which was basically owned by Metrowerk and its CodeWarrior)

2\. Jobs's Apple takes decisions it thinks benefit its customers _and its customers are always its users_.

Now they may be wrong on that, and they may be misguided, but time and time again you can (pretty easily) explain the decisions of Jobs's Apple either as trying to avoid losing their platform to a third party or trying to make their user's experience life better.

With web browser they fully control the platform. Hell, they control what can be argued the best web platform available (Google's Chrome is giving them a run for their money, in no small part by building upon their work). They don't fear people using their web browser, they wouldn't have built Canvas if they did (why not leave it out as SVG? Slow, hard to use and not a threat at all), they wouldn't be implementing WebGL, they wouldn't spearheads CSS animations and transitions and all the stuff that can make web applications snazzier and cleaner, they wouldn't have the engine with the best HTML5 support _by far_.

Web stuff is not a threat, because they can have the best, shiniest and most advanced web stuff _and they control all of it_ (number of full rendering engines allowed on iOS devices? one. Nobody else is allowed to ship a JS interpreter, therefore no full-blown web browser can avoid using the Webkit that ships with it and is fully built by Apple).

Apple doesn't fundamentally mind or care for cross-platform mobile apps, what they fear is a third party's cross platform toolkit taking preeminence over their own tool and deciding of their platform's future. _That_ is why they banned flash (also, because flash is a piece of shit).

> Getting people to build with objective C and native code helps lock in

That only works because you assert Apple wants to lock users in.

> and ensures that any sales go through their payment platform.

Cross-platform tools would have the exact same restriction or face bans. iTunes payment mandate is trivially explained through integration and user- experience (did you know that Apple's subscriptions services makes user information availability to magazines opt-in by the user, whereas just about every other service makes it opt-out if opt-able at all? That's because to Apple the device owner is the customer, to just about every other publisher the magazine is the customer).

> If you don't think Apple has been moving in this way (anti-cross platform > dev tools, requiring sales to use the iTunes payments) you simply haven't > been paying honest attention.

Either that, or I have not been wearing hate-shaped glasses.

But really, I wonder why I bother with all that typing. I should know by now that HN's view of Apple is the same as /r/tech's: a bashing wankfest.

<comment><USER5> "they wouldn't spearheads CSS animations and transitions and all the stuff that can make web applications snazzier and cleaner, they wouldn't have the engine with the best HTML5 support by far."

Firefox 4 has better HTML5 support than iOS, for one.

[http://caniuse.com/#compare=y&b1=firefox|4&b2=ios_sa...](http://caniuse.com/#compare=y&b1=firefox|4&b2=ios_saf|4.2)

<comment><USER3> Than iOS yes, iOS's saf' isn't resynced with the webkit tree during every minor release (sadly): Safari on 4.2.1 is forked off of Webkit 533.17.9, the most recent release of Webkit (which can probably be find in or around "Safari 6" aka the webkit nightlies) is 534.23 from 5 days ago (I can't find a 533.17.9 tag, but 533.7.8 was tagged in July)

</comment></comment></comment></comment></comment></comment><comment><USER6> A lot of discussion about the demise of Flash is focused on how CSS and JavaScript can now create equally pretty-looking websites, which is fair enough. But take it from a long-time audio developer: HTML5 audio is essentially useless for creating web applications involving almost any kind of audio. Even Firefox, which has the best HTML5 support so far, offers absolutely nothing like what is possible using the combination of a Flash client and a dedicated streaming server.

Flash might have a lot of bad points (which I'd be the first to call out) but RTMP audio (which also handles both video and arbitrary data) really isn't its worst feature, and for this reason alone its going to be a significant part of the internet for many years to come.

<comment><USER7> I totally agree that for video/audio players, Flash is a good technology (if hardware support is enabled and Flash is properly sandboxed). Flash is platform independant, needs no pre-installed codecs and can be easily blocked. None of this is true for any native audio/video tag.

</comment></comment><comment><USER8> _I don't give a shit anymore about this stupid piece of crap that Microsoft calls a Browser and throws out a release for every 3 years, just in time to not let it fade out completely but annoy web developers for more years to come._

I can relate to this feeling.

</comment><comment><USER9> In summary: "there's some profanity ahead because HTML5 Audio is still that fucked up".

My experience is entirely aligned. I was trying to use <audio> earlier this week for an incredibly simple task (occasionally play a 0.5s notification sound).

The only thing that worked reliably was Chrome (9) with a data: URI. FF3.6 (or Chrome with a normal URI) would only play the sound once, and Safari wouldn't play it at all. (These are all the Mac versions, and I didn't test Opera).

</comment><comment><USER10> We've been using SoundManager 2 on quizlet.com for playing audio clips. We're not just playing long music clips in the background, so it's essential to have all the precise APIs for preloading, playing, and firing callbacks when sound is done playing. It handles all the browser deficiencies very elegantly, either with HTML5 or flash. Also, it's just 10k of js (gzipped) so it's pretty lightweight.

link: <http://www.schillmania.com/projects/soundmanager2/>

<comment><USER11> I'm using sound manager on <http://hackernewsradio.com> as well. Right now I am just forcing flash. I had too many problems with html5 audio.

I really wanted speex encoded audio but that is not an option. If I remember correctly Opera handled streaming speex/ogg like a champ. Firefox may have worked... I can't remember. Everything else sucked.

</comment></comment><comment><USER12> Contrary to his claims, his test case seems to work mostly fine in Chrome 10.0.648.127 (beta) for me. I haven't tried the dev channel version though. Firefox doesn't appear to be working well at all, in either 3.6.16pre or 4.0b13 (but those are both unstable versions, so I'll withhold judgment). All of those were tested on Ubuntu.

Regardless, he's definitely made his point well (and my setup showing different but similarly bad results from his only proves his point): support for the <audio> tag is not really as solved as browser manufacturers are claiming, and is not currently a suitable competitor to Flash.

Direct link to test: <http://www.phoboslab.org/files/html5audio/>

</comment><comment><USER13> Has anyone managed to make the audio tag work reliably with streaming? icecast server with ogg vorbis stream comes to mind. Tried konqueror (works), firefox 3.6 (doesn't work properly), chrome 9.x (doesn't work properly).

<comment><USER14> Can you file a bug with the appropriate browsers' bug trackers so they know about the problem?

<comment><USER15> This is the Mozilla bug: <https://bugzilla.mozilla.org/show_bug.cgi?id=455165>

I know you know this, but for everyone else, Firefox doesn't play chained ogg files. Icecast uses this feature. If the icecast stream doesn't use chaining then it plays.

</comment></comment></comment><comment><USER16> I hope for the day when the Webkit Web Audio API[1] or something like it is widely available so we can build rich audio apps like Audiotool[2] without relying on Flash.

[1] [http://chromium.googlecode.com/svn/trunk/samples/audio/index...](http://chromium.googlecode.com/svn/trunk/samples/audio/index.html)

[2] <http://audiotool.com/app> [SWF]

</comment><comment><USER17> Ogg/Vorbis works just fine in Safari on my Macs. That's because Safari as far as I can tell is neutral when it comes to audio--it plays whatever you have Quicktime support for and I have installed Ogg/Vorbis.

</comment><comment><USER18> How do you have <audio> working in the Android browser? Last I checked (2.2) the tag was supported but there was no format support (kind of like an airplane without wings). This was filed as a defect in June 2010 and a fix was promised, but not delivered for Android 2.2:

<http://code.google.com/p/android/issues/detail?id=9372>

</comment><comment><USER19> Could applications such as PhoneGap be used to fill the void regarding audio on mobile devices? It's a shame that as the profits of app stores continue to rise, there is less motivation to promote and expand open standards.

<comment><USER20> I bought the ImpactJS engine, and I'm currently working on Android to run sounds through SoundPool while everything else happens in an embedded browser. Not much luck yet, but I think I can get there.

</comment></comment><comment><USER21> I coded a Chrome Web App and can sympathize. I eventually had to entirely recode my app because the first go was crashing the tab randomly when audio was playing. I can't imagine trying to do short sounds like in games.

</comment><comment><USER22> My question is, just like in socket.io, why not fall back to flash audio when required?

<comment><USER23> 1) It's hard to detect when to fallback. You'd have to set up a list of user- agents you've tested and code around their individual issues. This is not ideal.

2) It doesn't solve the iOS problem (which, as this post points out, has even more issues than desktop browsers)</comment></comment>


Show HN: I wanted better offline music on the iPhone, so I made Doppler - <AUTHOR> https://brushedtype.co/doppler/ <comment><USER2> I sincerely cannot tell how this is different from the Music app that I already use on my iPhone other than the color-matching background stuff.

\- Minimal design: The 'now playing' drawer in the screenshot looks nearly the exact same as the Music 'now playing' drawer. If anything it has more text for buttons than the Music app.

\- Adapts to my music: The background color changes?

\- Import my music: Ok, but with Music app I don't have to do that.

\- Search artists, albums and songs: Ok, but I can already do that with Music app.

\- Edit and reorder listen queue: Ok, but I can already do that with Music app.

<comment><USER3> There is a wealth of comment online and here on HN about the inadequacies of the native music app. If you are enjoying the iOS music app you probably dont:

\- sync the library to a local machine

\- have any songs in your library that are unavailable via streaming service

\- use custom playlists that are organized on a desktop machine

\- listen to music by Genre

\- don't mind authenticating all the time

<comment><USER4> All of the above features are available in the Music app -- and the last one is not an issue.

</comment></comment></comment><comment><USER5> I think the offline claim should be explained a bit better. Like does that mean I can get my old MP3 files to the app without stupid iTunes sync? Does it support "File sharing" so the app is shown in iTunes and I can drag and drop my MP3 files to its storage?

<comment><USER6> > I can get my old MP3 files to the app without stupid iTunes sync? Does it > support "File sharing" so the app is shown in iTunes and I can drag and drop > my MP3 files to its storage?

That's what I want to know too. My biggest problem is having iTunes in the middle.

<comment><USER7> Look into waltr: [https://softorino.com/waltr/](https://softorino.com/waltr/)

It's perfect at what it does.

<comment><USER8> This looks great. I actually wood prefer a third party app though because using the stock apps means that audio auto plays when connecting to some Bluetooth devices. It drives me insane that every time I get in my car some audiobook I was listening to starts auto playing.

</comment></comment></comment></comment><comment><USER9> I use iTunes 10.6.3 and sync to an iPod.

That keeps track of play counts on both devices, lets me make smart playlists and playlist folders, and syncs music, contacts, and calendars all over USB without any cloud services prying into my personal data.

Apple went from being a leader in the music-listening industry with excellent UX to trying to compete with Spotify and YouTube, who are frankly not even that great (e.g. trying to keep playing a song in the background).

Flash memory was small when the iPhone came out in 2007, so everything moved to streaming. Now the capacities are finally big enough again (e.g. 128GB iPhone SE), Apple's broken their sync services.

I like having play counts, ratings, and playlists, and I like that I've continually built up my music library since the days of Soundjam MP for the Rio 600.

Doppler is trying to put a new theme on Finder's MP3 playing feature, but it's not the syncing library manager that I need.

<comment><USER10> I have a standalone MP3 player the size of a matchbox. (Anybody remember matchboxes?)

The battery is good for 15 hours of play, it takes a 128GB microSD card, and it can play FLAC as well as MP3. The buttons are real and tactile and oriented so that you don't have to look at it to figure them out. It appears as a USB mass storage device with a FAT32 filesystem, so every computer I've used in the last 20 years can put music on it. If you put music in directories, it will navigate the directory structure. If you build m3u playlists, it will use those. You can ask for a random shuffle of all tracks or inside a directory.

It doesn't have play counts or ratings. If you have a USB3 microSD reader, that's faster than updating directly through the USB2 interface.

Also, it's running an open-source alternative firmware called Rockbox.

<comment><USER11> Please, I have been looking for a descent music player for a while (since my Creative Zen had a hard drive failure). Did you get yours new or used (if so, which brand? how much money? where from?), did you hack it together your self (if so how)?

<comment><USER12> Probably a Sansa Clip or similar (not too familiar with their current model lineup but it roughly mirrors my experience with them back when I used one).

<comment><USER10> I own several Clip Plus models. They're great... and discontinued.

</comment></comment></comment></comment></comment><comment><USER13> How does Doppler compare with Cesium? I've been using Cesium for the past couple of years and have been pretty happy, though like with any app improvements can be made. I agree with you the iTunes app is not good for simply playing music.

</comment><comment><USER14> Define "better offline music". I'm sure it has a great UX, but Apple's music app already gives me a pretty decent experience.

Honestly, I'll continue using that unless "better" is substantial.

</comment><comment><USER15> I bought the app. A few ideas:

\- When importing, it would be great to see that "importing" is not a copy of the exact same data, but rather a reference or link (like a symlink). I have 40 gb of music on my iPhone. I don't want to double that by using your app.

\- Needs a nicer looking app logo.

\- Needs a cooler app name that is more original than "Doppler".

</comment><comment><USER16> This app page says nothing. It's just a few screenshots and some generic text.

Your "support page" is an email address, and doesn't actually contain any information on the app.

If you're going to show us something and ask us to buy your app, then put a little more care into your launch.

</comment><comment><USER17> Does apple still reject third party apps that are too similar to existing first party apps?

<comment><USER18> They allow Spotify soooooo.....

</comment></comment><comment><USER19> Where do you get the music from though?

<comment><USER20> You can still buy them from Bandcamp, Qobuz or even buy it on iTunes. What are you trying to imply?

<comment><USER19> > What are you trying to imply?

That I didn't know about any of those services? I thought everything was streaming these days. What are you trying to imply that I'm trying to imply?

<comment><USER20> I thought you were implying that the only way to get music files (after disregarding CDs as you don't have a drive) these days was to download them from unofficial sources. Not streaming music files was the standard for a long time so I was a bit surprised about the question.

That's usually a point that comes up for products like Plex etc.

</comment></comment></comment></comment><comment><USER21> I have a large mp3 library and have used Marvis for over a year. Marvis is great and extremely customizable, but it has a few bugs and the developer has abandoned the app. I won't use any music app that doesn't allow shuffling by album. It sucks that Apple bastardized the main music app to promote Apple music; I think that app was at it's best around iOS 7.

<comment><USER13> You should check out Cesium. I've been using it for the past couple of years. It accesses your music library, so all your music and playlists are there. You can play by album (and shuffle the music) or even play by artist (and shuffle all songs by the artist). You can even play by genre if you so desire. Of course it provides all the typical music queue management facilities as well, but I don't tend to use those too much. I like it's extreme simplicity.

</comment></comment><comment><USER22> I don't know if it is technically possible, but a polished, fast app for Apple Music is badly needed!

<comment><USER23> Should be possible [https://developer.apple.com/musickit/](https://developer.apple.com/musickit/)

<comment><USER22> I didn't know this! I would gladly pay 10x its price, if Doppler supported Apple Music through MusicKit...

</comment></comment></comment><comment><USER24> So I've been making a music player app called 'Doppi' for years now, I wonder if it served as inspiration? [https://itunes.apple.com/us/app/doppi-offline- music-player/i...](https://itunes.apple.com/us/app/doppi-offline-music- player/id1002899671?ls=1&mt=8)

</comment><comment><USER25> This looks great, I'll try it out, congrats!

Now, questions:

Any chance of supporting BS2B (Bauer stereophonic-to-binaural), which VOX player supports?

Do you plan to add, if at all possible, Spotify or VOX Music Cloud as providers?

Do you plan to support 3D Touch? I found the use of Peek on songs (+slide and release on menu options) very useful in Apple Music, and I definitely miss that in Spotify.

</comment><comment><USER26> Like I always say when I see a music related app submission: Get a lawyer.

It looks pretty awesome by the way, any plans for android?

<comment> martin-adams I'm genuinely curious why you say to get a lawyer for all music apps as I can't really see why this one would necessarily need a lawyer. Are you talking in terms of music licensing issues or patent violations, or other?

<comment><USER26> Licensing rights, because if you develop an app that makes money out of playing music it is gonna make some people uncomfortable, even if it the music of the owner of the app. There's gonna be C&D letters even if the app proves to be licit.

<comment><USER27> This makes no sense, there are no licensing rights involved because no music is being provided. It just plays files provided by the user. Are people sending C&D letters to Sandisk for selling MP3 players, or the hundreds of music player apps for Android?

<comment><USER26> Agree, it makes no sense, lets see if the OP can tell us if this happens in the future or not. Maybe I'm just scared.

<comment><USER27> There are already a huge number of apps out there doing the exact same thing, as far as I am aware zero have been sued/threatened out of existence over this.

</comment></comment></comment></comment></comment></comment><comment><USER28> Android users: I build some tools to Rsync your iTunes library to your phone over WiFi and it's absolutely bulletproof, works great!

[https://github.com/jakecoppinger/android-itunes- rsync](https://github.com/jakecoppinger/android-itunes-rsync)

</comment><comment><USER29> Have you considered adding support for Subsonic? [http://www.subsonic.org/pages/index.jsp](http://www.subsonic.org/pages/index.jsp)

Manually choosing songs to load onto my phone is a significant chore and my phone can only fit a subset of my collection.

<comment><AUTHOR> Haven't heard of Subsonic before. Will see what I can do. Cheers!

</comment></comment><comment><USER30> You should consider opening the 'Now Playing' drawer with an actual, direct gesture instead of a trigger on a detected swipe. The way it is now feels weird for iOS.

I really missed the album artwork color extraction from iTunes and seeing album covers in a reasonable size, so thank you for that.

</comment><comment><USER31> I guess this is going to be a much better upgrade from my current non- Apple/-cloud music-player, VLC ..

</comment><comment><USER32> Would like something like VLC, but with a better interface. I copy media to its folder, and then play it.

One pet peeve, on iOS the audio transport buttons are in a different location in music apps than they are on the lock screen. Leading to more fumbling around than needed.

</comment><comment><USER33> I'd love to have a way to sync my google play music files with apples app. The reason I'm interested in apples app is so that I can fully control it with Seri. This way in the car I can just tell seri what song, artist, album, genre to play.

</comment><comment><USER34> +1 for Best of Omar S playlist

</comment><comment><USER35> Does "Import your music and playlists" means it will use my synced iTunes library? I would love this. But I tried to click to find out more, only to find that almost nothing on that landing page is a link.

<comment><AUTHOR> Yep that's right!

</comment></comment><comment><USER36> This is gorgeous, thank you for caring about my life. _purchased_

</comment><comment><USER37> Would be great if one could skip using iTunes alltogether....like being able to just import Mp3, Flac and m4a files from cloud storage into the app. Is/will this (be) possible with doppler?

<comment><AUTHOR> I have importing mp3/flac etc working but needs a bit more work before I can release it. Coming very soon!

</comment></comment><comment><USER38> Does it support casting to chromecast? This is something that is really missing in the native app. If this is supported I would buy.

<comment><USER39> +1 - I have a couple Chromecast Audios that I use as a poor-man's Sonos and it works pretty well, but the Spotify iOS app's Chromecast streaming is pretty half-assed. It can only adjust volume when the app is in the forground, and sometimes not even then, sometimes forgets it's streaming and loses sync.

</comment></comment><comment><USER40> funny thing is that apple used to have good offline music support that it has since butchered.

</comment><comment><USER41> GoodReader on iOS can synchronize offline files via SSH and play audio/video.

</comment><comment><USER20> Which features did you miss from the stock app / Apple Music?

<comment><USER42> I find Apple's music app on iOS terribly hard to use. It didn't used to be this way. I struggle to do basic things, like just playing the songs in order on an album! Sounds silly, but there are so many buttons that sweep away to different screens, and it's not at all clear what you are doing.

Now I just use GoodReader to store and play back all offline albums, since it's just a file directory and I can just play the tracks in the order they are stored.

<comment><USER43> I have this problem with Apple's podcast player[0]. They really didn't make it intuitive at all.

[0] Pocketcasts solves that problem, though.

<comment><USER44> What the heck, why did I think Pocket Casts wasn't available on iOS? I've used it in the browser and on my Android phone for years...

</comment></comment></comment></comment><comment><USER45> Does it also display lyrics for songs that have them?

</comment><comment><USER46> foobar2000 on the App Store:

[https://itunes.apple.com/us/app/foobar2000/id1072807669?mt=8](https://itunes.apple.com/us/app/foobar2000/id1072807669?mt=8)

<comment><USER47> What about it?

<comment><USER46> A "better offline music on the iPhone".

</comment></comment></comment><comment><USER48> FLAC support?

</comment><comment><USER49>
      Supports your favourite speakers and headphones Doppler works with AirPods, HomePod and any Bluetooth or AirPlay enabled speaker

But it doesn't require any setup - it comes out of the box. Or put it in another way - I don't see any music app that does not support that.

<comment><USER50> 0 calories water baby!

Still, as a non-iPhone user I actually expect Apple hardware to only work properly with Apple software, I was never able to use airplay on any other software than iTunes (in Windows), it always broke after some time when I did find something that worked on Linux. So perhaps it's not so bad to mention it.

<comment><USER51> AirServer ([http://www.airserver.com](http://www.airserver.com)) has been working quite well for me for the past few years, though I don't use it all that much.

</comment></comment></comment><comment><USER52> What is this 'offline' thing I keep hearing about ? Is it something US- specific ?

<comment><USER53> It's the good old MP3s that you download and send to your phone with iTunes.

<comment><USER52> But why would I want to if I can just stream them ?

<comment><USER43> Some people don't have unlimited bits.

<comment> gm-conspiracy or connectivity.

<comment><USER54> or travel via plane and/or train

<comment><USER52> Trains have wifi or you can just use 4G.

I never ttavel by plane but I assume they offer wifi too nowadays.

<comment><USER55> > Trains have wifi

On the WCML, you have to pay ££ for WIFI unless you're in first class and even then it's patchy because the train doesn't always have a clear view for the satellite data.

> or you can just use 4G.

Down the WCML, you're lucky to get even 3G thanks to the combination of poor coverage from cell towers (not much call for them in rural landscapes, really) and the metallised glass they use on the trains.

(They did try per-carriage femtocells but they didn't help.)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER56> Is there a Linux (or wireless) solution for transferring music to my iPhone yet? VLC Player allows for wireless sync via web browser, but it lacks way too many features to be used regularly just for music.</comment>


Inside Abbey Road - <AUTHOR> https://insideabbeyroad.withgoogle.com/en

<comment><USER2> This is a very nice walkthrough and the narration was very informative.

It's amazing to anticipate all the other world famous places that can be showcased with this demonstration method.

There was an interactive 360 photo tour of Sistine Chapel but it didn't have any narration. I tried to find it again but all the google searches led to links that no longer it existed. I did find a "3D virtual" tour[1] but it's a visualization that blends photos with CGI models and not the same stiched- photos website I remember.

I do hope later tours get enhanced with stereo[1] photos so viewers can get a better sense of depth in the space. The photographers would use 2 cameras spaced apart instead of just one. I figure if the crew is going to go through all the trouble of traveling to a site and capturing a space, they might as well bring 2 cameras for stereo images.

[1] [http://vatican.com/tour/sistine_chapel_3D/web](http://vatican.com/tour/sistine_chapel_3D/web)

[2] [http://en.wikipedia.org/wiki/Stereoscopy](http://en.wikipedia.org/wiki/Stereoscopy)

</comment><comment><USER3> Very neat to be able to look around the room, while the harpist still plays.

[https://insideabbeyroad.withgoogle.com/en/recording-at- abbey...](https://insideabbeyroad.withgoogle.com/en/recording-at-abbey- road/1-6#x=-0.869&y=-0.495&z=0.026)

<comment><USER4> The piano in the main studio as well. He is "animated" for lack of a better word, at certain angles. The sound even moves through your headphones as you move around as if you were in the room.

</comment></comment><comment><USER5> Check out the echo chamber at the back of studio 2!

[https://insideabbeyroad.withgoogle.com/en/all- access/studio-...](https://insideabbeyroad.withgoogle.com/en/all- access/studio-2/2040#x=0.255&y=-0.581&z=-0.773)

</comment><comment><USER6> Abbey Road have their very own outside view too, allowing the curious from wherever they may be, to watch pilgrims to _that_ crossing.

[http://www.abbeyroad.com/Crossing](http://www.abbeyroad.com/Crossing)

</comment><comment><USER7> I wonder if the people involved in this business cringe at having to record some of the more popular but less talented artists.

<comment><USER8> I suspect for them it's just another day at the job. Sound engineering is still sound engineering even if you record people snoring in their sleep.</comment></comment>


Ask HN: What's the going rate for software internships? - <AUTHOR>

Obviously, it depends on experience, location, and field. I'm curious what people are finding/expecting for software engineering internships, especially at the undergrad and graduate levels. <comment><USER2> Summer after junior year of high school, small company: $7.25, eventually raised to $10.50.

Summer after freshman year of college, late-stage startup acquired by IBM while I was there: $15, free snacks and drinks and Friday lunches.

College in general, startup: By contract, but "Aim for $15-20 per hour".

My friend, Bay Area, Yahoo: $30.

Me, this summer, anywhere: Asking for $1000+ / week, expect to get it.

In short: It depends.

</comment><comment><USER3> Freshman Year - $18/hr doing C/Java at a fortune 500.

Sophomore Year - $20/hr doing C/Java at same fortune 500.

Junior Year - $22/hr doing Python at same fortune 500 but different group

Senior Year - $16/hr doing C# at a defense contractor

Masters Degree - $32/hr at original fortune 500 in a Tier 2 support role.

My Junior year, IBM Extreme Blue offered me $24/hr and $1000 for moving expenses for a summer internship in Austin, Texas (coding C#).

While working on my masters degree I had a small software shop offer me $12/hr to code C for them.

All jobs in Raleigh, NC. I had 2 years of professional development experience (perl) at a bank in Charlotte prior to college. A lot of the larger companies pay you based on some combination of credit hours completed divided by total credit hours for degree.

</comment><comment><USER4> I didn't go to college but as a front end dev I've made anywhere from $15 an hour to $80 the past year. It's been mostly contract projects however and not a big tech company. Your experiences will vary based on what you want and location but the money's out there if you go after it.

</comment><comment><USER5> Like you say — it depends.

In the bay area, I've seen from $15—$40/hour. In my home town (Kansas City) and college town (St. Louis), I've seen between $8 and $20.

</comment><comment><USER6> Undergrad

1st year summer - 12$/hour (Toronto)

2nd year summer - 30$/hour + housing (SF)

</comment><comment><USER7> I had two internships over two summers, and each one was worth $18k for the duration.</comment>


Microfilm Lasts Half a Millennium - <AUTHOR> https://www.theatlantic.com/technology/archive/2018/07/microfilm-lasts-half-a-millennium/565643/?single_page=true <comment><USER3> As a kid I got to play with microfilm and microfiche at the library while my mom did research. I don't have a lot of pleasant memories from childhood, but this was an exception. My mind was intrigued and blown by this.

Thinking back on the experience, it was incredible. I could go grab a copy of a newspaper from any particular day in any year. I remember reading the actual newspapers from the early 20th century. Big historical events that are in history books, really take on a different meaning to you when you read them as they were reported in near-real-time. The ability of microfilm to snapshot history in a way different than say viewing a jpg or png, is fascinating.

If you are ever bored, and can find a library that will give you access, you should definitely check it out. It's an experience I think all hackers should have. Such simple yet powerful machines, built on a highly non-technical system of convention. Very cool. Sorry for the long walk down nostalgia lane.

<comment><USER4> If it ever feels like the news is getting you down, I strongly recommend substituting your normal news habit for watching old news bulletins on YouTube. Try it for a week or two - if you feel the urge to check the news, go and watch an NBC news bulletin from 1988 or a BBC news bulletin from 1991 instead. Lots of people have uploaded complete bulletins, which I'd recommend over isolated clips.

I found it to be a revelatory experience. The news, ultimately, is just stories. It's not a definitive or objective account of what's happening in the world, it's just industrialized gossip with a veneer of legitimacy. Without the sense of urgency that comes with newness, it's often remarkably dull. The news shows you the variance, but not the trend; someone who caught up on current events only once a year would probably have a better sense of where the world is headed than someone who checks the news every day. Some stories that were huge dramas at the time are now long forgotten; some stories that barely registered at the time eventually turned out to be part of a crucial change in society.

[https://www.youtube.com/watch?v=P4-_85x5k3s](https://www.youtube.com/watch?v=P4-_85x5k3s)

<comment><USER5> > The news, ultimately, is just stories. It's not a definitive or objective > account of what's happening in the world, it's just industrialized gossip > with a veneer of legitimacy

Or it may be that people have a hard time to figure out what matters at any given moment in time - you never quite know how a news item will play out - will it become part of History or will it turn out to be just another detail? go figure when it is happening...

Maybe grandparent is just right: when it is all happening people may be more honest than after the fact, when positions are clear and everyone has to justify his own stake in the grand puzzle.

<comment><USER4> _> Or it may be that people have a hard time to figure out what matters at any given moment in time_

It's called "the news", not "the importants". Unusual, shocking and lurid stories are much more likely to be newsworthy, but by definition they aren't representative of what is actually happening in the world. Our perception of the world is much more strongly influenced by emotive anecdotes than cold hard facts. Violent crime rates in the western world have been significantly declining for decades, but most people believe that the opposite is true; multiple studies have found a correlation between news consumption and the perception of high crime. It's very difficult for the news media to usefully communicate important but gradual trends - rising incomes across the developing world, wage stagnation in the developed world, the impact of climate change, demographic shifts, the erosion of civil society etc.

I think that most journalists are well-intentioned and genuinely believe that they are seekers of truth, but they operate in a system that reflects our innate perceptual biases, our acquired cultural biases and the commercial exigencies of media organisations.

Another useful experiment is to exclusively consume another country's news media for a week or two, preferably a country you know very little about. A week of reading a Ugandan or Nigerian newspaper provides a very different perspective on world events.

</comment></comment></comment></comment><comment><USER6> I appreciate how the article highlights the longevity of polyester-based microfilm and the simple technology (lamp and magnifier) needed to read it.

But as a digital native myself, I'm disappointed that they failed to emphasize the biggest advantage of digital information storage - the fact that data can be copied _perfectly_ , as many times as you want. Analog microfilm cannot be copied perfectly - the original is always better than the copy. This means the microfilm is a unique artifact that needs to be preserved and taken care of. One disaster, one fire, or one careless handler, and the object is damaged.

With digital technology, we pay a high price in the lines of code to build an application and interface, to specify seemingly opaque binary file formats, to have physical media (floppy, CD, etc.) go obsolete in a decade, and to build complex CPUs - but never forget that what we gain is the tremendous ability to copy perfectly. This is what allows us to share a file with someone and know that their copy is a perfect backup for mine in case mine is lost. This is what allows us to transfer files from old, slow, unreliable media (e.g. floppy disks) to new, fast media (e.g. SSDs) without missing a beat. This is why we can take a sizable collection of a thousand audio CDs and cram them into one convenient hard disk drive (as WAV, not MP3), with the exact same audio quality. This is why we can transmit files over the Internet - we surely can't transmit analog data over a distance without a high risk of degradation.

If we collectively accept that storing information digitally with the ability to make perfect copies is worth the effort, then there are things we can do to improve the status quo. We need to make it easier to find and manage file duplicates - otherwise it's hard to know whether a copied file has been modified or not. We need emphasize building applications on open standards. We need to make file format specifications accessible, well-defined, and easier to understand. We need to make systems that have low implementation complexity (e.g. CPU with few transistors, OS with few lines of code) to show what is the minimum knowledge needed to reboot the technology.

While microfilm may last 500 years, digital data could truly be forever - <USER2> long as you copy it periodically.

<comment><USER7> But digital copies ain't always perfect - you forget about bit rot [0] unfortunatelly. One bit flip on stream of compressed picture or archive distorts remaining result. Entire digital world is founded on analog physical world with all its imperfections. Of course there are solutions to mitigate them: checksuming, redundancy, error correction. But how often one checks checksum hash on copy? Edit: CRC doesn't count as it is too weak.

I agree on open standards and deduplication, I hope content addresable archiving will get more mainstream, IPFS brings big hopes.

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

<comment><USER8> > But how often one checks checksum hash on copy?

Your operating system does this.

<comment><USER7> Only if you use ECC RAM and ZFS/Btrfs/ReFS. CRC e.g. in TCP is too weak.

<comment><USER9> Yes, if one was going to reliably archive information they wouldn't use FAT32 on a single spinning disk. Does this really need to be pointed out? The point is digital gives you ways to have perfect copies, correct loss, and the ability to transfer to the next storage medium with no decay. Things analog could never achieve.

<comment><USER10> Hybrid analog could achieve this. Film could have a picture printed on it, but instead of going for maximum resolution (down to grain level) it could have tiny tiny pixels, not visible to the eye, but readable by a computer. A kind of steganography, if you will.

The data encoded in the steganography, could be any data of course, but for our purposes, it would be the image itself.

Such a picture could be copied, with loss, in an analog fashion, but could also be copied perfectly in a digital fashion, by a digital reader capable of reading out the steganography information. Even the analog copy could be digitally read if it was of high enough quality.

Another, more straightforward, way would be to print on the film, first an analog rendition of the picture, then a digitally encoded pattern of the same image, rinse repeat.

But from a future safe perspective, it could be smart to encode the data itself inside the image, as per the first paragraph. Someone copying the images could unwittingly copy the digital data too!

<comment><USER11> You might be interested in Optar [http://ronja.twibright.com/optar/](http://ronja.twibright.com/optar/)

<comment><USER10> Indeed, thanks.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER12> Well there is sowmthing to be said for simpler formats, that can be read by basic engineering skills, compared to for example storing something on a flash drive the requires millions of lines of code to read data of.

For the same reason, I print all important photos for posterity. Who knows if apple / google cloud photo library will be around in 50 years when I grow old? I can make sure my printed material remains much more easily.

<comment><USER13> I don't disagree with your general point, but for this specific assertion:

> something on a flash drive the requires millions of lines of code to read > data of

Does it really require _millions_ of lines? Even if you're just targeting that one model of drive, rather than writing a general purpose SATA/USB kernel stack? If what's on there is, say, JPEG images, libjpeg (plus its dependencies in glibc, I guess) isn't "millions of lines" either. Where are these millions of lines?

(I'm speaking as someone who has written a unikernel with disk IO and graphics support. It was far less than a million lines!)

<comment><USER14> Compare the BBC Domesday Project to the original Domesday Book from 1085. One can be read today, the other not so much. You ask what the folks at BBC were thinking, did they never consult an archival librarian?

<comment><USER15> I played with that when it first came out. We had the discs and the player, it was very impressive but even then I knew that there was no way that it would last for even a decade.

It was a puny bit of data for todays standards (about 500M in total), but of the day it was incredible. Back then a mainframe winchester pack with the same capacity would be roughly the size of a washer-dryer combination.

The data not being publicly accessible at the moment is more of a copyright rather than a technical issue.

</comment></comment></comment></comment><comment><USER16> A super interesting 1960s intersection between microfiche and digital technology: the IBM 1360 photostore: [http://www.computer- history.info/Page4.dir/pages/Photostore....](http://www.computer- history.info/Page4.dir/pages/Photostore.dir/index.html) [https://en.m.wikipedia.org/wiki/IBM_1360](https://en.m.wikipedia.org/wiki/IBM_1360)

This was a machine capable of storing a terabit of data on write-once photographic film. It wrote to the film using a scanning electron beam, and then developed the film using a fully automated film processing lab, and finally stored the film cartridges in a robotic storage library. Amazingly cool, but required a lot of expert maintenance and diligent cleaning.

<comment><USER17> And the early versions of the PLATO educational computing system used a computer-controlled microfiche reader to display graphics beyond what was possible at the time.

[https://en.wikipedia.org/wiki/PLATO_(computer_system)](https://en.wikipedia.org/wiki/PLATO_\(computer_system\))

<comment><USER18> It's as though we got so busy using all of this stuff to do ordinary things that we kept making the same thing (GUI, net) better and better, but forgot to keep trying new , richer ideas. As Plato attempted to do. That came out of the U. of Illinois. Where'd the visionary academics go?

<comment><USER19> I believe that the idea that the end of some avenue of human ingenuity has been reached, and your implicit statement of differing values between the past and present, are both perennially recurrent throughout history. It's not necessarily a bad thing if today's academics are pursuing things that are not among your interests, and it's more likely than not that the speed of the dissemination of ideas, the recognition of their value, and their broad application has not appreciably changed in recent decades (assuming that it's more meaningful to talk about that in terms of a "March of Progress" than a "Random Walk of Progress"). I would think it most reasonable to assume that the academics are where they have always been, doing the same arcane and incomprehensible things that academics have always done, and that any appearance to the contrary was a fault of my own perspective.

</comment></comment></comment></comment><comment><USER20> A few tidbits I know about the topic. One of the organizations which helped push microfilm was the Documentation Institute, founded by Watson Davis in 1935, which became the American Documentation Institute in 1937.

(As an aside, "documentation" was the hot term in library science in the 1930s. "Documentation" meaning "collection of informational papers" is only from 1927, says [https://www.etymonline.com/word/documentation](https://www.etymonline.com/word/documentation) . As a further aside for those involved in science fairs, Watson Davis also founded "the Science Clubs of America, reaching at one point roughly a million school-age children across the United States; he also was one of the originators of the Westinghouse Science Talent Search".

He participated in the World Congress of Universal Documentation. Quoting from [https://en.wikipedia.org/wiki/World_Congress_of_Universal_Do...](https://en.wikipedia.org/wiki/World_Congress_of_Universal_Documentation)

> The World Congress of Universal Documentation was held from 16 to 21 August > 1937 in Paris, France. Delegates from 45 countries met to discuss means by > which all of the world's information, in print, in manuscript, and in other > forms, could be efficiently organized and made accessible. ...

> The main resolution adopted by the congress proposed that microfilm be used > to make information universally available.[8] Watson Davis, chairman of the > American delegation and president of the ADI, stated that the volume of > information being produced created difficult problems of access and > preservation, but that these could be solved by the use of microfilm. ...

> In his address to the Congress, H. G. Wells said that he thought that his > idea of the "world brain" was a precursor to the ideas other delegates were > proposing, and explicitly linked the projects being discussed to the work of > the encyclopédistes:

These are all ideas which percolated through Vannevar Bush's Memex and many others to become the modern internet.

Also, one of the co-founders of the ADI was Atherton Seidell. He published a series of articles in _Science_ promoting the use of microfilm. Eg, from 24 August 1934 - [http://science.sciencemag.org/content/80/2069/184](http://science.sciencemag.org/content/80/2069/184) .

</comment><comment><USER21> I've often hesitated about getting a microfilm or microfiche reader, but what would really get me over the edge is some kind of similar equipment to make microfilm or microfiche to use with the reader. Did such "consumer" equipment ever exist, or did all the libraries and institutions buy premade microfiche or microfilm, with the exception of a few dedicated conversion companies?

Are there any combined devices/stations that can be used to both read AND create either microfilm or microfiche?

<comment><USER22> Used Kodak archive writers cost about $30K (not a typo) are quite large, the modular cassettes for film cost about $1K each, film reloads for each cassette cost about $10 each, a roll of film holds like "ten thousand" images, and the machine can burn an image in about one second. All varying by factors of perhaps four depending on individual model. They eat PDF and TIFF (fax) files, also others. Fundamentally its "just a printer". Theoretically a completely hands-off lights-out machine, much like theoretically a laser printer never needs hand-holding... of course laser printers are mfgr'd "fire and forget" whereas the kodak archive writers service contract was something like $5K/yr.

Part of the problem is the target market; this was at a financial services company where the supplier knew they could charge pretty much anything they wanted and it would get passed along as a tiny fraction of the end user customer contract cost. If a $100M financial services contract involves a $5K service contract for some obscure accounting thingy no one really cares. Given that situation is similar to pre-consumer era 3-d printing, I figure a really smart hacker who doesn't care about reproducible results or speed or reliability could squirt something out for a tenth the costs; but even at a tenth, thats still going to be "laser cutter" like costs. Film is never cheap; high res film is gonna be worse, just how it is.

</comment></comment><comment><AUTHOR> "Microfilm machines trained people's eyes to read differently: A blur of rapidly advancing images replaced flipping through pages, a precursor to the transition from reading books to surfing the web. Once we adjusted to the nonlinear reading devices, we wanted to jump around instead of advance through page after page."

I oft find it interesting how a medium (and/or technology) can fundamentally alter the basic experience of reading.

<comment><USER23> It was definitely a different way to interact with the medium. Back in the early 80s I helped my mother do some genealogy research and spent many weekends in various libraries going through obituary sections of a lot of major metro papers from 1920-1940. You quickly learned to recognize the 'shape' of the sort of page you were looking for and then would hit the advance button on the machine to spin forward until you hit something that looked like the right section. It was the sort of pattern recognition you probably do today when scrubbing through a video looking for a particular type of scene, but with pages of text. Every paper had its own style of page layout so it took an hour or two to learn what you were looking for when you switched to a different paper, but the process became fairly automatic with a bit of practice.

<comment><USER22> Human binary search algo for page numbers, you meld with the machine and after a couple dozen hours its creepy how I could advance exactly 143 pages if I so desired by turning the dial just so; not any more surprising than video game accomplishments after a couple dozen hours.

I'm a gen-x so I'm so old my youth predated even cdroms; in fact I got an off brand early cdrom reader in high school as a very expensive birthday gift. So in early high school I spent a couple weeks reading microfilm of Scientific American magazine searching out all the "amateur scientist" columns from the 50s and 60s, some real gold there. I printed out some interesting columns. Still have some of those printouts. The technology to "photocopy from microfilm" is pretty obvious optically, the image is projected onto what amounts to a xerox photocopier. Of course kids these days may not believe fully analogy photocopiers ever existed, but certainly they did, until relatively recently as digital multifunction devices took over. Around the turn of the century all the Amateur Scientist columns were combined into a multimedia cdrom using turn of the century ancient java to navigate tens of thousands of one-page-per-pdf files. I no longer have infrastructure that can run that old of a java version although hand navigation of an image of the cdrom filesystem is possible (the file names aren't too insane) and I no longer own a desktop or laptop with optical drive to read the legacy disk, although I can, for now, scare up a USB cdrom reader if needed.

I lived near a depository library; did you? If you can get access to a federal depository library then you'll have access to microfilm version of complete ancient census records; I spent a long time looking at those and printing out 1800s era census records. My future wife bought "family tree maker" cdrom custom format disks of census data (this is all pre-internet pre-ancestry.com era by at least a decade). Obviously those custom cdroms of census records are useless today unless you have a complete early 90s PC emulator, and searching online works better and there's been several decades of census data released since then, LOL.

I find it fascinating that I grew up before cdroms, then in my youth cdroms would replace "everything", and now cdroms are a dead media. I'm and not really all that decrepit and old outside of SV hiring standards and ageism, I scarcely have a gray hair, maybe one or two, don't even have any grand kids yet. CDroms may have been born and died in my young adult years, but there's still microfilm out there.

</comment></comment></comment><comment><USER24> Newer microfilm may last 500 years, but the older stuff, especially Kalvar film, has serious life problems. Kalvar film gives off volatiles which corrode everything around it except Kalvar film.

</comment><comment><USER25> Vax/VMS source, on microfiche. Hunt the bugs in Bliss32. Happy days.

</comment><comment><USER26> Are there any earlier examples of data compression that microfilm?

<comment><USER27> The earliest example of that general technology would probably be the Leica camera, as this was the first time a negative had been designed for enlargement rather than contact printing (or at least, for high degrees of enlargement). This is only really _physically reducing the size of the storage device_ though, not really compression.

[https://gmpphoto.blogspot.com/2018/04/ur-leica-most- influent...](https://gmpphoto.blogspot.com/2018/04/ur-leica-most-influential- photographic.html)

In terms of compression as a whole, the first example would probably be military/commercial codebooks. A relatively modern example would be the q-code, where a predetermined sequence of words are encoded as a 3-letter sequence ("QRA" becomes "What is the name of your vessel/station") but I'm sure there are prior examples.

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

<comment><USER27> (or, as the kids would say, 'new telegraph who dis?')

Here's a link I found on some early codebooks: [http://www.cryptomuseum.com/crypto/codebook/index.htm](http://www.cryptomuseum.com/crypto/codebook/index.htm)

</comment></comment></comment><comment><USER28> Anybody know why it says that no connection is available, yet a page still loads. It seems like a new way of defeating ad block.

Edit: Even after disabling ad block, still says that there is no connection. Even worse, just after I actually buy a copy of their magazine.

<comment><AUTHOR> Hi, I'm using Purify 'content blocker' on iOS (11.4, Safari) and I can view the article without any issues.</comment></comment>


Tail Recursion Elimination (Guido van Rossum, 2009) - <AUTHOR> https://neopythonic.blogspot.com/2009/04/tail-recursion-elimination.html <comment><USER2> > Is it really such a big deal to rewrite your function to use a loop? (After > all TRE only addresses recursion that can easily be replaced by a loop. :-)

Sure. Recursion is iteration. But the beauty of recursion is that it lends itself to mathematical/algorithmic/etc thinking and is far more elegant and readable in many situations. Try writing something basic as fib as a recursive function and then in a loop. One is elegant and the other is kludgy.

Lots of things aren't a "big deal" but it's nice to have. It's why we have so much syntactic sugar in languages and it's also why so much of functional concepts are moving to OO space.

<comment><USER3> > Try writing something basic as fib as a recursive function and then in a > loop. One is elegant and the other is kludgy.

At the same time, one is slow as hell, because recalculates the very same value multiple times (unless you return a tuple, in which case it loses its elegance). You've chosen a bad example.

Also, remember that the opinion comes from a guy who mistakes tuples for lists with some unrelated property (being immutable), even though he had a few opportunities to fix his initial misunderstanding. Anything coming from van Rossum about functional programming should be taken with a grain of salt.

<comment><USER4> One simple reason to not have tail-call elimination is the "nice stack traces" that are so useful in Python.

<comment><USER3> This one reason is somewhat OK, but note that these "nice stack traces" are not really that useful in functional languages (Erlang being a prominent example). It's a self-inflicted thing that full stack traces are that useful in Python.

</comment></comment></comment></comment><comment><USER5> Let me copypaste a part of a previous comment I made:

When compiling/transpiling/whatever between languages, I have found that relying on regular procedure calls and TCO is generally a lot simpler than having to force the looping facility of one language into the semantics of another language.

I have written a guile scheme macro that more or less copies racket's for loops, and there are a lot of subtle things that would make using something else than tail recursive functions hard to use since I would have to work around the implicit behaviour of whatever looping facility I am trying to use.

<comment><USER6> +10

TCO is indispensable, when a language is used as the target language for a compiler.</comment></comment>


This cybersecurity company kills Pokemon - <AUTHOR> http://money.cnn.com/2016/08/04/technology/kill-pokemon-lookingglass-niantic/index.html?sr=cnnmoneybin080416deadpokemon <comment><AUTHOR> "Coleman said his cybersecurity company is in a unique position to help eliminate Pokemon, because he's friends with a member of Niantic's board of directors: Gilman Louie."

I didn't realize it was cool now to crow about nepotism on international news sites? Pretty brazen.</comment>


Why I Don't Use Twitter - <AUTHOR> http://www.techcrunch.com/2009/08/17/why-i-dont-use-twitter/

<comment><USER2> Funny, I dislike twitter but nobody else seems to share my reasons.

My main reason is that it's a closed centralized service. I suppose somebody will say "it's not closed, it has an open API" and that misses the point: it's closed in the sense that you or I can't start a Twitter service and integrate it on equal terms with the original Twitter. Email / SMTP provided us a successful model and XMPP followed later to show how to do it for real-time messaging. It would have been easy to build Twitter on top of these standards, or to extend them in open ways if necessary. Instead Twitter is a giant step backwards into a time when technology and services were controlled by single vendors. We grew out of that and I thought we would never go back. I'm horrified that the tech digerati are all enthusiastically embracing a headlong rush back into it. I can't understand why nobody seems to care - it's like the enthusiastic embrace of the Iraq war by the media - there's hardly a critical voice to be heard, and yet I can see it will only be a short space of time before people are all realizing the cage they have built for themselves and asking what everyone was thinking.

<comment><USER3> Actually, we at Twitter are thinking quite a bit about exactly this.

<comment><USER4> I was brainstorming a bit about this the other day as well, but I don't have the time/resources to do anything with it. Why can't we have a digital identity that isn't attached to a particular service? If I want to change cell providers I can take my phone number with me, but if I want to switch ISPs/Email providers I have to get a new email address. It would be useful (and in the interest of competition) to provide a way to contact your identity, and you can configure your identity to dispatch messages to whatever service you happen to use at that given time (somewhat ala Google Voice maybe?)

</comment></comment></comment><comment><USER5> Why I don't use techcrunch:

Its always about twitter.

<comment><USER6> I'm going to infer that 30 people dislike TechCrunch so intensely that they're willing to vote for any negative remark, because otherwise, I can't find any insight in your comment.

There are many possible intelligent criticisms to be directed toward TechCrunch, but _"always about Twitter"_ has never been at the top of my list.

<comment><USER5> You don't have a problem with a guy rambling about why he doesn't use twitter in 100s of words. But you have a problem with another guy rambling about why he doesn't use techcrunch in 140 characters or less?

There is very little to nothing insightful to add to a discussion about why some guy doesn't like twitter.

twitter is not for everyone the same way facebook is not for everyone, IM is not for everyone, IRC is not for everyone.

If it's not for you, its not for you. What insightful discussion you could possibly have about this? I added a not very insightful comment on a not very insightful topic. Which is what it deserves.

I haven't been following TC for sometime, but until few months ago, when I was actually following them a majority of their story was about twitter.

<comment><USER6> At least the article made some interesting arguments about the value of twitter, the feature-completeness of twitter, and so on. What did the comment add?

<comment><USER5> It didn't add anything that anyone, who uses twitter, already didn't know about.

You could disagree, but as far as I am concerned, it is one of those articles about newsflash about non-news that will get some extra page-views. You might enjoy the mentality and trash journalism quality of TC - but I don't.

For more similar trashy post please read "How I Learned To Quit The iPhone And Love Google Voice" by Arrington few days ago. Judging from the comments number on that article, TC realized this kind of posts get massive pageviews (more money) so they continued the trend.

Don't be surprised if you see another post soon about "why I don't use x", that will pull some nerves from fanboy resulting in massive page views.

<comment><USER6> I'm not going to get in an argument with you over the merits of TechCrunch. The article contributed more to an interesting discussion than did your original comment.

<comment><USER7> No. It didn't.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> I don't use Twitter myself (either to follow anyone or to post my own stories), but I work for a large tech company, and I fundamentally disagree with the article's first assertion:

> Tweets have no value

For my organization, tweets do very much have a value - they help us measure the day-to-day sentiment of people interested in our company (customers, prospects, media, partners).

Our PR person sends a weekly update of all company-related tweets, organized by topic. (We don't yet categorize by actual sentiment, but that would be fairly simple to do. Since company-related tweets still typically number fewer than 100 a week, it's easy to judge overall sentiment without an algorithm.)

For our use case, at least, Twitter is pure genius. They've taken the natural human tendency to want to share thoughts and ideas with others (in spite of my own introverted personality, studies show the majority of humans are extroverted); they've made it VERY easy for people to do so (there's no guilt in NOT writing a long thesis, since you're limited to 140 characters); and they've built a platform that makes it easy to measure and organize people's thoughts and ideas by topic and sentiment.

Whether that'll allow them to ever turn a profit, who knows.

</comment><comment><USER9> He doesn't use Twitter because he can't rattle on and on for paragraphs saying what he could say in 140 chars or much less.

<comment><USER10> Reminds me of a quote often attributed to Cicero, Pascal, Twain etc.

 _I didn't have time to write a short letter, so I wrote a long one instead._

<comment><USER11> _Reminds me of a quote often attributed to Cicero, Pascal, Twain etc._

In this case, for once, we have a definitive source: Letter XVI of Pascal's _Provincial Letters_ :

 _The present letter is a very long one, simply because I had no leisure to make it shorter._

[http://oregonstate.edu/instruct/phl302/texts/pascal/letters-...](http://oregonstate.edu/instruct/phl302/texts/pascal/letters-c.html#LETTER%20XVI)

I haven't found any evidence that Mark Twain or Cicero said it. Especially in Twain's case, I suspect people just decided he said it because he's known to have been witty.

<comment><USER12> It is very likely that this was said by many, many people throughout history. Great ideas are rarely picked up by a single great person. See this extract from the introduction to a book about Borges' short stories, posted in my blog at [http://inter-sections.net/2008/08/26/bad-bloggers-copy- great...](http://inter-sections.net/2008/08/26/bad-bloggers-copy-great- bloggers-steal) :

 _[Borges's] sources are innumerable and unexpected. [He] has read everything, and especially what nobody reads any more: the Cabalists, the Alexandrine Greeks, medieval philosophers. His erudition is not profound - he asks of it only flashes of lightning and ideas - but it is vast. For example, Pascal wrote: 'Nature is an infinite sphere whose centre is everywhere, whose circumference is nowhere.' Borges sets out to hunt down this metaphor through the centuries. He finds it in Giordano Bruno (1584): 'We can assert with certainty that the universe is all centre, or that the centre of the universe is everywhere and its circumference nowhere.' But Giordano Bruno had been able to read in a twelfth-century French theologian, Alain de Lille, a formulation borrowed from the Corpus Hermeticum (third century): 'God is an intelligible sphere whose centre is everywhere and whose circumference is nowhere.'"_

</comment></comment></comment></comment><comment><USER13> Totally agree. There is so much vanity & too much noise.

Also, it's very difficult to have an interesting conversation.

It's better to follow interesting people using a reader (i prefer Google Reader)

<comment><USER14> Why not do both? Some tidbits of information don't merit an entire blog post, but in aggregate they can be quite useful. I do agree with you regarding the noise level, but followcost.com has helped me a lot when deciding whether to follow someone or not.

Incidentally, @newsycombinator on twitter has been one of my favorites, due to the steady stream of interesting links :-)

<comment><USER15> Re: @newsycombinator

But then you've thrown out the voting and the comments, which is the whole reason I come to news.ycombinator.com.

Did this article get 100 points or 10? Does it have 50 comments or 5? Time is precious. I need context!

<comment><USER14> Re: Re: @newsycombinator

No, if it's interesting enough (which is most of the time), I'll actually visit the site again. But you're right, I do wish it linked to HN first instead of sending me directly to the article.

</comment></comment></comment></comment><comment><USER16> > ("Brunch at Hi-Spot at 1!") becomes impersonal and meaningless when it's > sent to so many

This somehow happens to all social networks. They try to be more open when what we really need is a _closed_ network. I have > 300 friends on facebook (cause I just can't say no), constantly spammed with meaningless invitations like ("lost my phone need your number," and I barely know the guy/girl) and whatnot that i've finally completely stopped using facebook.

Proud abstainer of facebook and twitter here.

</comment><comment><USER17> Why I Don't Care If You Don't Use Twitter: because if you don't get it, you just don't get it. It's ok.

<comment><USER15> I'm getting really tired of people saying, "just use Twitter, then you'll get it and you won't know how you lived without it."

I tried, but I still don't get it. If I am just not using it "correctly", perhaps someone could enlighten me as to what I'm looking for?

<comment><USER18> If you don't get it, then perhaps it's not a good service for you. There's no law saying any website should be universally useful or popular.

<comment><USER19> That is true. On the other hand, saying that someone "just doesn't get it" until they've used it implies that _anyone_ will 'get it' once they've used it for a while.

<comment><USER20> There is a difference between not getting it and not having a use for it though, I've seen too many people complain about not getting twitter - suggesting they don't understand the simple concept. Perhaps this is a fault of the Twitter UX? I "got it" straight away.

</comment></comment></comment></comment></comment><comment><USER21> Facebook's last redesign killed any lingering desires for me to use Twitter. I don't like the constant Twitter-hate some people think is necessary, but I don't feel the need to tweet, either.

<comment><USER22> Facebook and Twitter are completely different. Don't see how a redesign of one would matter one iota for the other.

Facebook is about one-to-one relationships. Yes, there are "groups" and "become a fan of X", but the essence of Facebook, as in other traditional social networking sites, are bi-directional relationships. When I "friend" you and you accept, we are "friends" in both directions. There are no one-way "friends".

Twitter is broadcasting, one-to-many relationships. "Following" someone is a one-direction relationship. You can tell the people from older sites who don't grok this, insisting that all follows need be "followed back". But that fails to understand the power and appeal of Twitter. You can follow Oprah's Twitter feed, but you can't be Oprah's Facebook friend. (Replace "Oprah" with someone whose words you think hold value).

<comment><USER22> Also, something I left out: one of the most valuable parts of Twitter comes not from following certain people, but following a search term (or "hashtag").

Example: Michael Vick signing with the Eagles this past week. I found out about this from following the #NFL tag. I saw it there _hours_ before even the first rumor blog picked it up, let alone ESPN.

For something more appropriate for this site: following the #defcon tag was easily the best resource I had during that event while I was stuck at work. Anything interesting that happened appeared instantly there.

Twitter is amazing for unfolding events. There's absolutely no counterpart to this on sites like Facebook, it's just a completely different focus.

<comment><USER19> > I saw it there hours before even the first rumor blog picked it up, let > alone ESPN.

Does it really matter that you got the rumor/news _hours_ before the story 'hit'? I can understand that getting such news as fast as possible might be a utility if you are a sports gamble, or sports reporter... But for the vast majority of people, do those extra couple of hours really matter?

</comment></comment></comment></comment><comment><USER23> Funny how this was posted by them to Twitter and drives more traffic to TechCrunch than digg. [http://www.techcrunch.com/2009/06/14/for-techcrunch- twitter-...](http://www.techcrunch.com/2009/06/14/for-techcrunch-twitter- traffic-a-statistical-breakdown/)

</comment><comment><USER24> I tried Twitter for a few months as a personal service and found it useless and noisy. But as a method of monitoring support requests and chatter about my project, it's been invaluable. I think the site offers a lot of value as a kind of customer support hotline.

</comment><comment><USER25> My reason for using twitter is on my site that provides vital information on weather, its the easiest way for me to currently connect to all my followers cell phones...

</comment><comment><USER26> The Onion did it 9 years ago:

<http://www.theonion.com/content/node/28694>

</comment><comment><USER27> "My car gets 40 rods to the hogshead and that's the way I likes it."

Oh sorry, but that's the tone of voice I used to read this article.

</comment><comment><USER28> No one doing anything important uses Twitter.</comment>


Microsoft Releases MS-DOS Source Code on GitHub - <AUTHOR> https://news.softpedia.com/news/microsoft-releases-ms-dos-source-code-on-github-522998.shtml <comment><USER2> This is old news. Also, slightly misleading, since it suggests to those that know the old news that MS has released later DOS source code, i.e. 6.22.

</comment><comment><USER3> So it was built on Assembly language? Always thought it was built using BASIC.

<comment><USER4> Why would you think that?

Are you sure you're not thinking of something like the Commodore 64 that dropped you inside a BASIC interpreter after boot?

<comment><USER3> I got it confused with Altair BASIC which gates used to work on.

</comment></comment></comment><comment><USER5> Is this practical for anything at this point?

<comment><USER5> I meant this as an honest question. Are there practical uses for this beyond "huh, that's interesting". I can't think of any, but I'm not knowledgeable on OS design, so I'm honestly asking the question.

<comment><USER6> Educational purposes I suppose.</comment></comment></comment>