APFS is not safe to use with names which have Unicode normalisation issues - <AUTHOR> https://eclecticlight.co/2017/04/06/apfs-is-currently-unusable-with-most-non-english-languages/ <comment><USER2> The real problem isn't whether filename normalization is a good/bad thing, the problem is _Apple used to do it one way and is now switching without warning to doing it the other way_.

It's the logical end product of the odyssey from Apple's original philosophy of a resource and data fork model for files to the UNIX stream-of-bytes model for files. The UNIX model traditionally kept metadata about files separate (anyone else remember naughtily hand-editing directory files with sed(1), back in the day?) but gradually picked up a bunch of new stuff that has to be stored _somewhere_. Meanwhile, the Mac platform adopted UNIX binaries with the move to NeXTStep underpinnings (we're going back to the late 90s here, and the adoption of OSX over traditional MacOS), obviating the need for the original resource bundle, which got rid of those annoying errors about missing bundle bits but left us with a legacy of .DS_Store turdlets in every directory to hold file metadata that was formerly stored in the resource fork.

As a destination it's laudable — design consistency is almost always laudable — but it's the end goal of a very messy process and it looks like APFS isn't quite there yet; NSFileManager and NSURL need some way of distinguishing files with different unicode representations, and the Finder in particular needs to be robust. I'm guessing this is going to be fixed when High Sierra finally ships, but isn't supported in Sierra at present, hence the OP's alarm at the situation.

<comment><USER3> "without warning"? Not really. This has been discussed to death on ATP last year.

Also, in regards to the headline, there are tens or maybe over a hundred million non-english speakers using iOS already running APFS...

<comment><USER4> Did anyone mention normalization-preserving/normalization-insensitive behavior? That's what ZFS does, and it's great!

<comment><USER5> > Did anyone mention normalization-preserving/normalization-insensitive > behavior?

You did, 11 times so far this thread. I counted.

</comment></comment></comment></comment><comment><USER6> There's a potentially useful discussion to be had on normalization but the title is pure clickbait hyperbole. HFS+ is the only filesystem in common use which performs Unicode normalization and a statement that bold would require at least some evidence that Windows, Linux, etc. are only usable by English speakers.

My position on this is mixed. I've had to write code to deal with normalization changes in archives and it's quite tedious. The HFS+ approach of normalization is in many ways the best choice considered in isolation but in practice it's really expensive to support since most filesystems, tools, APIs, etc. predate Unicode and everyone else chose the bag of bytes approach.

<comment><USER7> Normalization is very expensive and does not belong at the FS level. This kills performance for some classes of applications.

The comparison with other filesystems does not hold since applications for other OSs have always been developed with no normalization at FS level, and hence it was done by the applications, or through the use of high-level OS APIs. Mac applications, on the other hand, expect it to be the responsibility of the filesystem. This is explained pretty clearly in the article.

On a side note, I wish Apple would have taken this opportunity to switch normalization from NFD to NFC, which basically everything else uses. The distinction causes complexity and often issues in software which share data between Apple platforms and other platforms, such as version control systems for instance.

EDIT: according to pilif's comment, they did, which is awesome!

<comment><USER6> Do you have any recent benchmarks showing a significant impact from normalization? I haven't seen that on anything in at least a decade and that was simply Red Hat shipping an ancient and completely unoptimized libicu.

> Mac applications, on the other hand, expect it to be the responsibility of > the filesystem. This is explained pretty clearly in the article.

Again, the article made a huge sweeping claim without supporting it. That's simply not true in either way – many apps on every OS don't handle this at all, some handle it consistently everywhere, and what a "Mac application" means varies widely from "clean, modern Cocoa" to "uses a lot of C, etc. libraries", "cross platform C++", "C# port", "Electron shell", etc. You can't make any statement which is true for every single one of those categories, much less for every code path which eventually results in a filesystem call. I've run into cases where something mostly worked until you hit their integrated ZIP, Git/SVN, etc. support and found a new way that a filename was constructed.

My point wasn't that everything is fine but simply that this is complicated and no decision results in avoiding problems. Not normalizing allows for confusing visually-identical files; normalizing results in errors or data loss which will be blamed on the OS.

<comment><USER8> > Again, the article made a huge sweeping claim without supporting it.

Looks to me like the article made claims and backed them up with examples and screenshots.

Rather than saying the article is wrong, can you demonstrate /why/ it is wrong? Using its examples and concerns (Finder, console, and scripts)?

<comment><USER6> > Rather than saying the article is wrong, can you demonstrate /why/ it is > wrong?

I think you might to re-read my entire comment: note that I'm not arguing that the technical details are wrong, only that they're insufficient to support the huge "APFS is unusable" conclusion.

As previously noted, Windows and Linux work the same way and they are used by more people in individual non-English locales than the total number of Mac users. Would you say "NTFS is unusable by non-English users" is a useful statement?

There's plenty of room to say that a particular tool needs improvement, or that people making systems which copy or archive files should check for pathological cases, but it doesn't help anything to overstate the case so broadly.

<comment><USER9> The issue isn't a "bag-of-bytes" filename model. The issue is a "bag-of-bytes" filename model combined with an inconsistent normalization scheme.

It's not a problem on Windows or Linux filesystems because Windows and Linux don't provide a half-assed normalization scheme that lets me fairly easily create files that can't be accessed. If the Cocoa libraries did no normalization, then the resulting behavior might be obnoxious from a human- interface perspective, but I don't think the article would describe it as "little short of catastrophic".

I'm sitting here on my US English keyboard typing scancodes that look just like they did in 1990, so I'm not the best authority on how big of a problem it really is, but I'd guess it's going to result in a lot of bugs. Anyone who's ever tried to use a Mac with a case-sensitive HFS+ partition should be able to tell you that programmers can't even "normalize" their filenames consistently strictly within their native language.

<comment><USER6> > It's not a problem on Windows or Linux filesystems because Windows and Linux > don't provide a half-assed normalization scheme that lets me fairly easily > create files that can't be accessed

This is only true if you're talking about the kernel APIs. Unfortunately, filenames come from a variety of sources and it's easy to find tools which inconsistently normalize them – e.g. simply copying and pasting a name from a Word doc, web page, etc. which has different normalization than whatever originally created the file – or which produce either duplicate error messages or confusing error messages because the normalization form used in a file doesn't match the normalization form written on disk.

I've encountered variations of this problem on all three systems. No approach is going to handle 100% of the filenames in the wild and all of them will require extra care in the user-interface which may or may not have been done – e.g. the Windows Explorer still provides no way to tell why Café.txt and Café.txt are not the same file – and fixing the cases where programs are internally inconsistent. APFS switching will expose some programs which were unsafe before but since it's consistent with the other common filesystems it'll remove the need for every archive, version control, etc. system to either special-case or break.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> HFS+ was the only file system I know of that was doing Unicode normalisation and is certainly was the only one choosing NFD which encodes characters in a way that's impossible for someone to easily type in the UI.

Short-term this will cause a lot of inconsistencies with applications using low-level APIs as the files currently existing will be NFD normalised, but any user-given path will very likely be more or less equivalent to what NFC would do.

So in the short term, this will be a mess (unless the APFS conversion on install-time also does a once-time conversion of the normal form), but in the long term, I believe this is the way to go.

And for that matter, the same should happen with regards to case-insensitivity which is even worse as ensuring case-insensitivity might actually be dependent on locale, which means that depending on the user's locale two file names might or might not be identical under case-insensitivity rules.

Unfortunately, it look like there's just too much legacy code around that plain doesn't work with a case-sensitive file-system on the mac (I'm looking at you, Adobe).

BTW: On my 10.13 Beta 1 setup with an APFS converted boot drive, unless I manually create a NFD encoded file name on the command line (which you can't do accidentally), everything is NFC both in the UI and on the command line. This also applies to files I haven't touched since the conversion to APFS.

<comment><USER11> > _HFS+ was the only file system I know of that was doing Unicode > normalisation_

I've seen something in a couple comments now to this effect, does nobody here do anything with ZFS at all? It's a pretty great filesystem on not just illumos but FreeBSD, Linux, and macOS, and it has full native normalization support (and for all 4 forms too). Normalizing is optional, but it's definitely there and with Macs I have been using NFD for compatibility purposes for 5 years now with no discernible performance problems in day-to- day use. I know ZFS isn't remotely a majority but I don't think it's _that_ obscure either.

<comment><USER4> Thank you for pointing this out.

In particular ZFS has normalization-preserving/normalization-insensitive behavior, which is far superior to HFS+'s opinionated normalization-on-create (to a form that is different from the common input modes' output!).

<comment><USER12> Yes, HFS+ implements normalization-insensitive behavior through not being normalization-preserving, in the same way that some FATs might implement case- insensitive behavior through not being case-preserving. They didn't realize that you could have both features: normalization-preserving and normalization- insensitive.

<comment><USER4> I guess it was a very forgivable lack of imagination. When we came up with form-preserving/insensitive we were motivated in great part by the interop mess caused by HFS+ -- we might not have arrived there without that mess, though I'd like to believe that someone would eventually have reached this conclusion regardless.

</comment></comment></comment></comment></comment><comment><USER13> The title is click-bait and over-dramatises the issue.

The choice of APFS is that a filename is a sequence of bytes. Nothing more, nothing less (feel free to correct me if I'm wrong here).

If you want to see the kind of issues that path normalisation brings, check out this: [https://github.com/thibaudgg/rb- fsevent/blob/master/ext/fsev...](https://github.com/thibaudgg/rb- fsevent/blob/master/ext/fsevent_watch/FSEventsFix.c)

I'd like to believe that most developer would prefer the current behaviour over that proposed by the article (normalisation).

If there are issues in Apple's Finder or other high level APIs, I'd like to believe they will be fixed before the final release. These are fixable bugs, IMHO.

<comment><USER14> The problem seems to come from the high-level APIs doing normalization. So if you have two files in a directory, one normalized and one not-normalized and open the non-normalized file, the high-level API will then normalize that filename and you open the wrong file.

I've always disliked the practice of messing around with file paths (storing them, concatenating them, etc). I preferred the way that the Classic MacOS typically dealt with filesystem references and aliases instead of file paths. This also meant users can rename or move files and references still work.

<comment><USER15> Having two sets of APIs, one that does not mess with paths and one that does or adds other constraints, will cause all kinds of funky problems. For APFS it will be high-level-API using applications not being able to open certain files or using the wrong file[0], like stated.

You got a similar siltation with NTFS where the file system supports long paths while the userland WinAPI does use a much smaller length limit (unless you jump through "\\\?\ hoops, which does not work for relative paths), which renders certain files "unopenable" by certain applications.

[0] Regarding opening the wrong files, anybody remember the Android zip vulnerabilities? [https://googlesystem.blogspot.com/2013/07/the-8219321-androi...](https://googlesystem.blogspot.com/2013/07/the-8219321-android- bug.html) It's not that hard to imagine that some macOS software does security/sanity checks on files using the low-level non-normalized API but then opens the (wrong and unchecked) file later with normalizing high level API, or vice versa. Having this API discrepancy built into your OS certainly makes these kinds of things more likely.

</comment></comment></comment><comment><USER4> I've been saying this for years: [http://cryptonector.com/2010/04/on-unicode- normalization-or-...](http://cryptonector.com/2010/04/on-unicode- normalization-or-why-normalization-insensitivity-should-be-rule/) (originally at blogs.sun.com, now blogs.oracle.com, though I can't find it there).

The problem is that most input methods produce something close to NFC while HFS+ decomposes to something close to NFD. Which means that if you cut-n-paste non-ASCII Unicode names from a finder into any app that doesn't normalize, then you'll have problems.

The solution we came up with for ZFS was normalization-preserving but normalization-insensitive name comparison and directory hashing. This produces the best interoperability via NFS, SMB, WebDAV, and so on, and local POSIX access.

<comment><USER16> I also think encoding doesn't belong into a file system. Let the names be arrays of bytes and leave the encoding to the people that use it, be it utf-8, utf-16 or something entirely different.

<comment><USER17> the problem that arrives there almost instantly is that people want to see a list of filenames.

If you're ever going to do some sort of "displaying" of data, you cannot store it as bytes. You need to know what characters things are supposed to be presented as.

You could imagine not settling on a specific encoding, but you must know the encoding. Unless your plan is to show a list of numbers to users.

<comment><USER18> The filesystem can't be responsible for displaying anything, though. Displaying filenames is the job of the shell / window manager / etc.

The filesystem is much better off handling filenames as a number of arbitrary bytes. Let people who want to put weird bytes in their filenames see ugly filenames along the lines of "\x00 Can you see this?"

<comment><USER17> OK so I move a file from my hard drive to a USB drive, and give it to a friend.

Can they not read the filenames anymore because their shell/window manager is different?

<comment><USER4> Right!

Or worse, you speak multiple languages, or learn new ones, and need to... switch codesets? How do you then access your old files?!

We must switch to Unicode. Full stop. If there are imperfections in Unicode script support, then we must fix those, but otherwise we must adopt Unicode.

</comment></comment></comment></comment></comment></comment><comment><USER19> The actual problem is not APFS but Apple's programs doing (and their advice to developers to do) normalization. It wouldn't be a problem if programs just used the file names given to them.

In fact, I think the normalization HFS+ does is more problematic. For example, fish shell can't complete file names when you use un-normalized characters in the input. [0][1]

Edit:

0: "Unicode normalization issues with HFS+" [https://github.com/fish- shell/fish-shell/issues/474](https://github.com/fish-shell/fish- shell/issues/474)

1: "Completion does not work for special characters" [https://github.com/fish- shell/fish-shell/issues/1794](https://github.com/fish-shell/fish- shell/issues/1794)

<comment><USER4> [http://cryptonector.com/2010/04/on-unicode-normalization- or-...](http://cryptonector.com/2010/04/on-unicode-normalization-or-why- normalization-insensitivity-should-be-rule/)

</comment></comment><comment><USER20> Apparently on iOS 11, even the case-sensitive variant of APFS will be normalization-insensitive. Previously it looked like this would only be the case on macOS's case-insensitive APFS variant.

Anyway, it looks like the issues raised in this (April) blog post will not actually apply to iOS 11 or macOS High Sierra.

<comment><USER4> Oh, that's great!

I've been saying for years, to anyone who will listen (and many who won't!) that normalization-preserving/normalization-insensitive is the only sensible behavior for a filesystem.

(I've said this many times in the IETF in the context of NFSv4 and WebDAV and such. Every time I've noticed the subject of stringprep for filesystem protocols come up.)

[http://cryptonector.com/2010/04/on-unicode-normalization- or-...](http://cryptonector.com/2010/04/on-unicode-normalization-or-why- normalization-insensitivity-should-be-rule/)

</comment></comment><comment><USER21> I'm happy that the filesystem treats name as sequences of bytes. Normalization should happen at a higher level.

<comment><USER9> "Happening at a higher level" is a reasonable solution, if it happens _consistently_ , no matter which higher level you're using. If you have 18 different functions to open a file, and 11 of them normalize and 7 don't, then you're screwed before you even get out the door. Programmers simply aren't capable of getting this right in a consistent way if asked to solve the problem application by application.

<comment><USER21> Higher level doesn't mean in app.

What I mean is that unicode normalization is really hard, and it should be it's own module that can be used regardless of the fs.

app->fopen->unicode normalization->APFS/HFS/FAT...

<comment><USER9> In that case, I agree. The problem here seems, from my understanding, to be that what Apple did was more like

        app -> CFFile -> unicode normalization -> fopen -> APFS

which screws you because anyone can just call fopen on their own without using the core foundation libraries, leading to inconsistent states in the filesystem. You can be higher level than the filesystem, but only a little bit. You can't be higher level than some API that developers will regularly use (unless you do like ZFS and normalize at lookup rather than create).

<comment><USER21> I guess the ZFS approach is the best one.

</comment></comment></comment></comment></comment><comment><USER22> From the "What's new for developers" in macOS 10.13 High Sierra document [0], case-sensitive APFS can be normalisation-insensitive:

> APFS now supports an on-disk format change to allow for normalization- > insensitive Case Sensitive volumes. This means that file names in either > Unicode NFC or NFD will point to the same files.

Which means that both versions support normalisation-insensitivity.

(Edit: There is also a one-line mention of this in the iOS 11 document [1] but it doesn't say if it is the default.)

[0]: [https://developer.apple.com/library/content/releasenotes/Mac...](https://developer.apple.com/library/content/releasenotes/MacOSX/WhatsNewInOSX/Articles/macOS_10_13_0.html)

[1]: [https://developer.apple.com/library/content/releasenotes/Mac...](https://developer.apple.com/library/content/releasenotes/MacOSX/WhatsNewInOSX/Articles/macOS_10_13_0.html)

<comment><USER22> The link to the What's New in iOS 11 page is wrong, it's here: [https://developer.apple.com/library/content/releasenotes/Gen...](https://developer.apple.com/library/content/releasenotes/General/WhatsNewIniOS/Articles/iOS_11_0.html)

APFS is mentioned at the very end.

</comment></comment><comment><USER23> "Unusable" is a strong word to use. Should filesystems be making up for our Unicode shortcomings? From a SW design perspective, is that the most sensible place to pass the burden of responsibility? I would say that another way to handle it is to store a file name as an array of bytes and put the burden on software developers to interpret Unicode correctly. Swift does this pretty nicely.

I would say the only downside to this approach, is a user wouldn't be able to distinguish two files with the same name apart, but it's hard to imagine how they'd get to creating such a situation in the first place without the developer rule above being violated.

<comment><USER24> > _Should filesystems be making up for our Unicode shortcomings?_

Absolutely, yes. File _names_ are text by their very definition; that we've been treating them as "bags of bytes" is a historical tragedy. At the very least, file names need to be displayed, as text, to the user, so they should be stored _as text_ , that is in some well-defined encoding, and yes, it should be the job of the filesystem driver / kernel to enforce that it's not writing garbage out to disk.

Reinventing that wheel in every system that in any way interacts with the filesystem is bad engineering, and doomed to fail.

Further, I don't see why the typical user should need to know or understand the differences between 'e\N{COMBINING ACUTE ACCENT}' and '\N{LATIN LOWERCASE E WITH ACUTE ACCENT}'. Likewise, I don't see why each and every piece of code should be forced to handle that. Developers _will_ get this wrong. In fact, the article seems to say even Apple can't get it right, in that Finder will not correctly show the directory contents in some instances, and fails to open files in some instances, telling users the file "doesn't exist".

<comment><USER16> But what is text? Not everyone wants to use unicode. It is dependent of the platform, the region, the OS and on many other different things like LC_* variables on linux. Why should a filesystem depend on those too?

<comment><USER24> > _and on many other different things like LC__ variables on linux.*

The point is that it _doesn 't need to be_. I would entertain that not everyone might not want to use Unicode: in that case, the FS should _still_ have a well-defined encoding, such that I can still arrive at a string to display to the user. The point is not that "Unicode is best" but that storing file names as "bags of bytes" is incredibly user unfriendly, and there needs to be a straightforward, no bullshit method to display and transmit the names of files.

But I would also argue that Unicode is the best we've got presently, and it would be pragmatic for a filesystem to simply adopt it outright. It's _overwhelmingly_ the dominant character set in use today, especially if you ignore deprecated junk that Unicode is a strict superset of.

</comment></comment></comment></comment><comment><USER25> > Currently, the Mac Extended file system, HFS+, uses Normalisation Form D > (NFD). Under that, é and é are automagically converted to é, and > represented as three bytes, 65 cc 81.

This is actually an oversimplification. Mac NFD does not decompose characters in a few specific ranges[0]:

> U+2000 through U+2FFF, U+F900 through U+FAFF, and U+2F800 through U+2FAFF > are not decomposed

But I do expect applications built for HFS+' pseudo-NFD to struggle with non- normalizing APFS.

[0]: [https://developer.apple.com/library/content/qa/qa1173/_index...](https://developer.apple.com/library/content/qa/qa1173/_index.html)

</comment><comment><USER26> Would be interesting to know why Apple made the decision not to normalize on a file system level then. Just an argument based on separation of concerns?

<comment><USER27> Normalizing on the file system level in the past was a mistake. Normalizing Unicode is not an easy task, it belongs into userspace and not into a kernel driver.

Other systems consider filename a string of octets and interpretation what these octets mean is left for userspace to decide.

For Linus Torvalds colorful opinions on HFS+, see here: [https://plus.google.com/+JunioCHamano/posts/1Bpaj3e3Rru](https://plus.google.com/+JunioCHamano/posts/1Bpaj3e3Rru) (in the comments).

<comment><USER28> Others have different opinions. Normalization of Unicode identifiers is necessary for identifiers to be identifiable. Mostly this is only done for domain names, I also do it for identifiers in my programming language, and consequently path names and directory entries should also identifiable. The garbage in - garbage out camp completely ignores all unicode security concerns and simply shifts blame to user-space. I applauded Apple to use normalization in HFS+, but the APFS integration is just horrible. 1st it makes unicode paths insecure again, and 2nd it's inconsistent.

NFD over NFC is simply trading data over CPU. NFC requires 3 passes over a string, NFD only 2, whilst NFD is usually a few bytes longer. Linus talking about NFD corrupting data is of course nonsense. He should stay technical and only rant about things he has an idea about. The python3 NFKC normalization format is nonsense, but not really important. NFD is fine, because faster.

Shifting interpretation of byte encodings from utf-8 to user-space is typical Linux non-sense, but he inherited the existing mess. Using utf-8 is miles better than bytes.

Case-insensitivity in HFS+ is of course legacy nonsense. This should have been to target to get rid of, not normalization.

The 2nd big security issue would be to forbid mixed scripts in a name (filename). I blogged about it here, and OP uses the same examples I used: [http://perl11.org/blog/unicode- identifiers.html](http://perl11.org/blog/unicode-identifiers.html) Invisible combining marks, right-to-left overwrites or similar / spoofs security problems are only fixable with normalization and more TR31 (mixed scripts, confusables), though confusables can only be handled in user-space, not the FS.

</comment></comment></comment><comment><USER29> This is going to be fun with the java.nio.file API. Java currently normalises everything to NFC even though the file system on macOS is NFD. This was introduced some time in Java 8 because reasons.

Of course this is all going to break now, of course it will take years until Oracle fixes this.

</comment><comment><USER30> So, can somebody answer this, is this right on APFS or not?

        rsync -rltv --iconv=utf-8-mac,utf-8 from_a to_b

and similar sshfs: [https://github.com/osxfuse/sshfs/issues/14#issuecomment-1859...](https://github.com/osxfuse/sshfs/issues/14#issuecomment-185913726)

I need to use that iconv options everytime when dealing with umlauts and mac<->linux communication. So do I still need that on APFS or not?

<comment><USER25> Per pilif[0], NFD filenames are converted to NFC during HFS+ to APFS conversion:

> BTW: On my 10.13 Beta 1 setup with an APFS converted boot drive, unless I > manually create a NFD encoded file name on the command line (which you can't > do accidentally), everything is NFC both in the UI and on the command line. > This also applies to files I haven't touched since the conversion to APFS.

[0]: [https://news.ycombinator.com/item?id=14496538](https://news.ycombinator.com/item?id=14496538)

</comment></comment><comment><USER31> Sadly this was expected but it's not clear what Apple wants developers to do about this now. I am very happy that normalization is removed from the FS layer but I wish they had removed it from Cocoa as well or at least picked a different normalization form.

The fact that Cocoa apps create different filenames than the terminal is not great. It's even worse that some UI (like Finder) seem to cause even more confusion is not helping.

</comment><comment><USER32> Wait why is a file name a sequence of bytes? Why is it not a sequence of bytes that form a valid string in some encoding, so that you can just refuse some file names? Who refuses invalid characters such as invisible characters or "/"? Would not the same place be a good place to refuse anything that doesn't normalize to the same byte sequence, or an even stricter subset?

<comment><USER4> Supporting more than one encoding requires knowing what that is, and apps and APIs are very bad at keeping track of that. Which is why only Unicode in some UTF makes sense.

ZFS allows you to store non-UTF-8 if you like, but for all valid UTF-8 it implements normalization-preserving/insensitive behavior, which is the best possible compromise (IMO).

</comment></comment><comment><USER33> To be honest, I blame Unicode. Why allow different representations for the same character, and then provide a normalized form anyway, except it's not one normalized form but several? Sounds like job security to me.

<comment><USER34> Blame the encodings that came before it: Latin-1 and Windows-1252, and all the other ones. Hindsight is always 20/20, y'know.

<comment><USER35> I'm just being sarcastic: should we also blame the computers of old for not being able to handle more than 255 characters ?

<comment><USER4> No, just developers. Of course, the use of bytes for characters goes back a long time, to times when computers had small memories and disk (and other) storage capacities. And to even before then, to the days of telexes and typewriters. It's completely understandable. But UTF-8 is genius, which is why we use it.

Incidentally, ASCII was actually a multi-byte codeset... since one could combine most lower-case characters with BS (backspace) and overstrike with apostrophe, backtick, tilde, comma (for cedilles), and double-quotes (for umlauts), or with the same char for bold, or with underscore for underline. nroff(1) still uses this for bold and underscore, no?

<comment><USER18> I've always wondered what the concept of a "backspace" character was supposed to mean. (I tried printing it to erase a previously printed character, but that doesn't work.)

I guess it's another relic of the idea that computer output goes to a printer rather than a display?

<comment><USER4> Yes! Terminal vendors had to explicitly support this in terminals, though maybe not just because of printers but because it's actually quite useful.

Note that BS only produces overstrike when followed by certain characters (which we might term "combining" for the fun of it), while most will just change the character at that location. A tty spinner is just |BS/BS- BS\BS|BS... with some delay between each -- no overstrike there.

</comment></comment></comment></comment></comment></comment><comment><USER12> For tips on working with different filesystems, especially filesystems that have different approaches to normalization, see an article I wrote:

[https://nodejs.org/en/docs/guides/working-with-different- fil...](https://nodejs.org/en/docs/guides/working-with-different-filesystems/)

The gist is that normalization should only ever be used for comparison (if needed, e.g. "do these two files have filenames that would look the same to user"), and never for changing data (filenames are user data and should be stored verbatim without normalization). HFS+ should never have used normalization in the first place. You can think of normalization as essentially a lossy hash function (you cannot get back to HFS+ NFD form once you normalize it to NFC - HFS+ NFD and NFD proper are not the same thing - many people don't realize this). Using normalization for anything other than temporary comparison leads to data loss.

</comment><comment><USER36> Do "most non-English" languages have normalization issues? At least CJK users do not.

<comment><USER28> Actually Korean (Hangul) is the biggest user of NFD normalization, with very special logic. Hangul also has the only 2 still remaining identifier bugs in the unicode 9 database. HANGUL FILLER and HALFWIDTH HANGUL FILLER wrongly being valid ID_Cont, as such wrongly usable as identifier characters (such as in filenames).

Almost every script but Latin-1 has TR31, TR36 and TR39 issues. [http://www.unicode.org/reports/tr39/](http://www.unicode.org/reports/tr39/)

<comment><USER4> Hangul has composed and decomposed forms, but only the decomposed forms are used as canonical, even in NFC.

(Incidentally, NFC is closed to new compositions, though new compositions can be added to Unicode.)

</comment></comment></comment><comment><USER37> Personally I think the current Normalisation Form D is awful, storing an ü as two characters is really annoying and even bash can't really deal with it in the version Apple uses. I really hope APFS will fix this. But we'll see.

<comment><USER4> It's awful in great part because common input modes produce something close to NFC.

<comment><USER38> Apple could of course change their keyboard layouts to produce something close to NFD. (OS X has always allowed keys to produce multi-character results.)

<comment><USER4> But everyone else's input modes would still produce something close to NFC. Interop with the rest of the world matters. OS X is not the only OS.

</comment></comment></comment></comment><comment><USER39> Did anyone not read the documentation? I'm pretty sure this will be a non- issue soon.

> How does Apple File System handle filenames?

> APFS has case-sensitive and case-insensitive variants. The case-insensitive > variant of APFS is normalization-preserving, but not normalization- > sensitive. The case-sensitive variant of APFS is both normalization- > preserving and normalization-sensitive. Filenames in APFS are encoded in > UTF-8 and aren't normalized. […]

> The first developer preview of APFS, made available in macOS Sierra in June > 2016, offered only the case-sensitive variant.

</comment><comment><USER40> I dont expect my computer to treat charcters that look the same equally.

<comment><USER4> Even when they are the same character according to Unicode?!

(I understand not treating confusable characters as the same. That's a different story.)

<comment><USER40> No, in my mind a filename should be an identifier made of a bunch of bytes. How you represent those bytes is not important in the context of the file subsystem.

For me it seems more like a problem with Unicode. I can see why it is the way it is from a certain perspective. Very connivent.

But it has broken the underlying abstraction layer.

<comment><USER4> There was no underlying layer, just lots of U.S.- or Western-centric assumptions. Unicode breaks them, but so did every codeset (Shift-JIS, this, that, and the other).

</comment></comment></comment></comment><comment><USER41> Title is oversensationalized. Also, what if this wasn't Apple? Because ext4 is currently unusable with most non-English languages as well. [https://gist.github.com/Kwpolska/0c63a22f65efe9c90607a826aad...](https://gist.github.com/Kwpolska/0c63a22f65efe9c90607a826aad99d1f)

</comment><comment><USER42> A pet peeve of mine is the use of the word "unusable" when reporting a behavior which the reporter finds undesirable. Apple is just now doing what Linux has always done. Is Linux unusable?

Keeping your issue reports neutral and avoiding hyperbole is an underrated skill.

</comment><comment><USER43> I really fail to see why do you want your file system to normalize utf8 chars with hfs+ rules.

<comment><USER25> Normalizing to NFC form would make some sense, and was conceivably an option.

<comment><USER4> Normalization-preserving/normalization-insensitive behavior makes even more sense!

</comment></comment></comment><comment><USER44> I'm glad this is getting attention. I've been working around this issue for over a year now, assuming that "if it's broke, Apple will know, and they will fix it".

Apparently that was a wrong assumption.

</comment><comment><USER45> i guess we'll see a new option on the finder "show non-normalized files" next to "show hidden files" pretty soon. i don't see how they could automatically solve all the potential mismatch issues otherwise.

<comment><USER4> ls | od -c?</comment></comment>


Pentadactyl, vim binding for Firefox (Vimperator fork) - <AUTHOR>

<comment><AUTHOR> Pentadactyl 1.0 [beta 1] was released last month. The change log is at [http://www.mozdev.org/pipermail/vimperator/2010-September/00...](http://www.mozdev.org/pipermail/vimperator/2010-September/005719.html)

The reason for the switch is outlined in the FAQ ( <http://dactyl.sourceforge.net/pentadactyl/faq> ). tl;dr the official maintainer of the project had not contributed for years yet was still soliciting donations for users and was unwilling to relinquish control, so the core developers decided to fork.</comment>


New study of USS Theodore Roosevelt shows how Covid affects young healthy adults - <AUTHOR> https://www.stripes.com/news/us/new-study-of-uss-theodore-roosevelt-sailors-reveals-how-coronavirus-affects-young-healthy-adults-1.633056 <comment><AUTHOR> Key points:

* "The study asked for 1,000 volunteers to provide blood and swab samples and answer a survey, however only 382 Roosevelt sailors participated. The volunteers were not a representative sample of the crew population..."

* "The study found 60% of the volunteers had antibodies for the coronavirus, and of those, 59% also had neutralizing antibodies at the time their blood was drawn."

* "The tests also indicated among the sailors who had been exposed, almost 1 in 5 were asymptomatic or about 18.5%."</comment>


Why Doesn't the U.S. Have China's Quirkier Smartphones? - <AUTHOR> http://m.fastcompany.com/3049080/why-doesnt-the-us-have-chinas-quirkier-smartphones

<comment><USER2> The phone I envy the most is one that would take 2 different sims. That way you can have different numbers on the same phone, even different carriers.

But that would never work or be supported by the US carriers.

<comment><USER3> [https://oneplus.net/2](https://oneplus.net/2)</comment></comment>


Tell/Ask HN: Sell right from the start./? - <AUTHOR>

This is maybe a bit pretentious, but I wanted to tell that long ago. Something coming here on a regular basis is how hard it is to get momentum, to keep the motivation and going ahead when you are tired etc.
I found that the best solution is to sell. It does not mean that you need to sell a lot, even if it is just $50 a month. Do it. Offer a paid option of your webapp and sell.
The days you will be down, the serendipity will be there and you will get an email from your payment processing gateway: "$50 for you". And this is the best thing you can get, it means:
"Me, the customer, trust you, you have a good product and I am ready to pay for it. You are good."
When you are offering both "totally free" and "paid options" the effect on the moral of getting a sale is higher than the inverse of your conversion rate. It is like drug, you want more of it, you start to make crosses on your year calendar on the wall, you feel good.
Go sell and enjoy accumulating these little red crosses.
And you, what is keeping you rolling? Do you think that in your case you cannot sell right from the start? <comment><USER2> Interesting to discussion to kick off.

1) Do you think that having a sell angle on your site can be a traction killer? Will you be stickier if things are free and happy for a longer period of time?

2) Isn't integrating with billing solutions and going through all the necessary legal/tax/yada rigamarole the exact kind of "dip" that tends to demotivate people in the first place?

3) Isn't the customer service that comes with keeping your paying customers happy also the kind of thing that tends to take away from development momentum? Esp. if you are solo?

Would love to hear what other people have to say. I think this is a great question.

<comment><AUTHOR> For my very small case which is a software available as GPL with a free limited in space hosting and a paid "more space" hosting.

1) the offer is a freemium offer and the free part is something I would personally use, the free offer gives traction and users are happy using it. Some are also slowly (no stats yet) converting to paid customers.

2) I had already my company so this was not an issue. The only thing I had to do was to get a merchant account and a payment processing gateway. It took a bit of time but it was way easier than expected.

3) No way, the customer service is telling you were you need to code and in my case helps my development momentum. When I have a paid customer who ask me something I wanted to implement but were procrastinating, it is the small kick pushing me ahead.

What is also helping me is a paper in front of my desk with just the 13 sentences from here: <http://www.paulgraham.com/13sentences.html> (minus the first one, I am a single founder).</comment></comment>


Reply to Vijay Pande, VC Investor and Stanford Professor - <AUTHOR> https://medium.com/@mostafab/response-to-vijay-pande-comment-here-da106bc53119 <comment><USER2> Posting these rants daily is not a good look.

[https://news.ycombinator.com/submitted?id=mostafab](https://news.ycombinator.com/submitted?id=mostafab)</comment>


JavaScript Game Development Asynchronous Execution Loop - <AUTHOR> http://caspervonb.github.io/2014/02/24/javascript-game-development-asynchronous-execution-loop.html

<comment><USER2> I'm sorry for voicing my ignorance, but the article mentions a high- performance timer with microsecond granularity.

Are these things actually useful to anyone? I was under the impression that most operating systems use something on the near order of a few milliseconds of granularity--thus, any extra precision is not really useful.

It seems strange to me that we'd care about microsecond resolution in Javascript.

<comment><AUTHOR> Albeit high performance and JavaScript might seem like an oxymoron, for game physics a high precision timer does matter, altho not the most crucial, chances are you'll never notice the difference considering the type of games that are typically going to be written for the browser.</comment></comment>


The not-so-brave Yogurt of Iceland - <AUTHOR> https://medium.com/p/de2eb0f6aaff

<comment><USER2> The problem is the average advertising agenda is the exact opposite of your proposed one: "Make sure that an average person is fooled by your marketing."

<comment><AUTHOR> I know, I know. But what if a brand EMBRACES transparency? Don't you think that people might start liking that brand? Icelandic people are nice... These guys could be first.</comment></comment>


Ask HN: Collecting user registration details: At beginning OR End? - <AUTHOR>

Sorry about the vague title. I could not frame this question better in the title. Anyway, here is my question:
The App
<comment>---
Lets say my app lets you create a resume online where you will enter your details of job history etc etc.
My question is: Is it a better idea to let them first create the resume and if they are happy with the results, THEN let them register on the site in order to save the resume?
OR
Let them register right away and THEN let them enter the details.
From a UX point of view, which one is more recommended ? </comment><comment><USER2> Give as much as you can without registration. This way, you lose some valuable information about the user, but it is really better from a UX point of view.</comment>


The Product Manager vs. Product Owner - <AUTHOR> http://blog.aha.io/index.php/the-product-manager-vs-product-owner/

<comment><USER2> For me coming from applied Systems Engineering, I see this as a very good lessons learned sharing - Thanks ! The article just forced me to write down few comments, my emphasis, and thoughts, coming from my background and experience as a Systems Architect.

I'd like to reflect back with my words, that one needs to get customer dialogue and engineering dialogue into balance, to be able to create successful products and/or services and to be able to launch them in time.

One has to ensure that the customer needs are refined well for engineering, for product and/or services content decisions and for development. This along with a company own strategical and internal needs and requirements. The engineering process may be agile, lean, waterfall, V etc, but the information, how and by who it is harvested, and what are the dependencies, are very important matters.

There are several means to ensure the effective refinement of information. The given lessons and described work sharing looks good and is surely important. E.g. epics were mentioned, and required good PM&PO co-operation.

Should the customer categories, portfolio and/or required engineering effort increase, the situation gets more complicated. One needs to ensure that the information is captured on/by identified locations/roles, and that it's refined on for relevant stakeholders e.g. in engineering. In many organizations today, it is impossible to rely on an IT solution stored information as your input data. In many cases personal network is emphasized instead, which makes the operations too much person and person2person relation dependent, as well fragile. For sure the network of colleges is important !

We should complement the proposed PM&PO work sharing and good relations are far as possible, BUT with defined information model, tasked refinement roles, and minimum amount of control mechanisms, whatever process is been applied in the organization.

</comment><comment><USER3> This is actually the same challenge we have had in traditional software development environments. We addressed it by have a Product Manager (Business owner) and Technical Product Manager (analogous to Product Owner).</comment>


Stealing the Pie without touching the Sill Scriptless Attack - <AUTHOR> http://www.slideshare.net/x00mario/stealing-the-pie <comment><USER2> Is there video of this by chance?</comment>


'Blue Whale' suicide game linked to 130 teen deaths makes its way to UK - <AUTHOR> http://metro.co.uk/2017/04/22/blue-whale-suicide-game-linked-to-130-teen-deaths-makes-its-way-to-uk-6590737/ <comment><AUTHOR> Just received a warning about this from my daughter's school.

See also [https://en.wikipedia.org/wiki/Blue_Whale_(game)](https://en.wikipedia.org/wiki/Blue_Whale_\(game\))

From wikipedia: "The game involves a series of duties given by the administrators that players must complete, usually one per day, some of which involve self-mutilation. Some tasks can be given in advance, others can be passed on by the administrators on the day, the last task being suicide. It is believed that the first case of suicide related to the game occurred in 2015 in Russia."

EDIT: Also from wikipedia: "While the phenomenon is real, some publications have exaggerated its scope, leading to a moral panic"

<comment><USER2> This looks like a mix of some real suicides with a fake urban myth. It's similar to the burundanga stories or the LSD tattoos stories, but in this case they mix some sad cases to make it more credible.

These stories used to circulate as email chains, until some school or police department take it seriously and make some official warnings.

[http://www.snopes.com/blue-whale-game-suicides- russia/](http://www.snopes.com/blue-whale-game-suicides-russia/)

[http://www.snopes.com/crime/warnings/burundanga.asp](http://www.snopes.com/crime/warnings/burundanga.asp)

[http://www.snopes.com/horrors/drugs/bluestar.asp](http://www.snopes.com/horrors/drugs/bluestar.asp)

</comment></comment><comment><USER3> Maybe I'm just jaded, but are 15-16 year olds really not cognizant enough to avoid stuff like this? Either something is missing from the story, or there's some heavy fabrication here.</comment>


The Great Sugar Shaft - <AUTHOR> http://www.fff.org/freedom/0498d.asp

<comment><USER2> Is this why we use high fructose corn syrup everywhere?

<comment><USER3> Yes. The quota system drove the price of sugar up so much that manufacturers switched to the much cheaper alternative.

<comment><AUTHOR> That's what he was asking. I think he meant "is this the _only_ reason why we use high fructose corn syrup everywhere" to which I think the answer is "no." There's no shortage of corn subsidies, and farmers have been looking for new ways of utilizing corn for years. HFCS has been one of the ways which has payed off. Additionally, fructose is rated higher than sucrose on the Relative Sweetness Scale (140 and 100 respectively) so that less product may be used.

But yes, the above reason is vital.

<comment><USER4> Actually more HFCS is used than sugar for some reason...

I'm looking for a reference on this, but haven't found one yet. I know I read it somewhere.

</comment></comment></comment></comment><comment><USER3> "The problem with socialism is that eventually you run out of other people's money" -- Margaret Thatcher

<comment><USER5> From Wikipedia: _Socialism refers to various theories of economic organization advocating public or direct worker ownership and administration of the means of production and allocation of resources, and a society characterized by equal access to resources for all individuals with a method of compensation based on the amount of labor expended._

Of course Wikipedia might be wrong here, but even my rudimentary understanding of "socialism" is aligned with wikipedia's stated definition.

How are the sugar import quotas socialism, or is it merely popular nowdays to label every overstepping of government as socialism and/or communism?

<comment><USER6> "public ... administration of ... allocation of resources" is socialism. And that's whats happening with sugar.

<comment><USER7> The word "public" is used here to mean the State, as in, the current capitalist state, not a worker's state controlled and administered by councils as in socialism. If it were public, as in non-private property, it would be administered by the workers themselves, not agents of the bourgeoisie.

<comment><USER6> So in America, its worse than in a true socialist state. How about compared to existing corrupt socialist states? Probably better. I can forgive people comparing such policies to socialism, since we rarely see true socialism, and cynically we regard our elected representatives are hardly better than socialist councils.

<comment><USER7> Whether you agree or not, everything seen so far has been an iteration of Stalinism, without question. Additionally, in either a degenerate socialist state or a capitalist society like the U.S., productive means are most certainly not under the control of workers in any real capacity. Whether the said productive means are controlled by a bureaucratic elite from a single party, or from a "two" party system that unabashedly represents capitalist interests, the end result is still the same: subjugation of the worker.

<comment><USER6> Easy to say "subjugation of the worker", in the sense that the worker doesn't guide policy. But the ideals of capitalism are supposed to work in the worker's favor, which softens the claim. If the worker values receiving compensation for what they do, has the right to spend their money as they please, wants to live in a thriving economy with choices, that is hardly subjugation. A worker may feel subjugated because they are frustrated by policy decisions made by others. Is it better in Socialism where the committee of workers makes the decisions, if the worker isn't on that committee? How does it matter that the committee is "closer" to the worker? The subjugation is the same. (except now the committe is made up of amateurs,but thats another argument) I think "subjugation" if it exists, is actually the decision by the governed to submit to the will of the whole. No matter what the system this "subjugation" must exist - its the foundation of civilization.

<comment><USER7> > "But the ideals of capitalism are supposed to work in the worker's favor"

The ideals of capitalism favor the bosses. Such a statment is very telling. You've obviously never read any literature on the subject, nor much about history of worker struggles, both in the U.S and abroad, that much is clear. At least I've read enough about neoliberal policies and the ideas that form the basis of capitalism in order to sufficiently criticize it.

> "If the worker values receiving compensation for what they do, has the right > to spend their money as they please, wants to live in a thriving economy > with choices, that is hardly subjugation"

What does this really mean? By your interpretation, capitalism is always "thriving" and people that live under it are always willfully and gainfully employed. Unless you've been living under a rock for the past few years, you're aware of the joblessness that is plaguing not only the U.S., but the world. The capitalism of yesteryear is hardly what we have now, and the dynamicism offered up by neoliberal policies is essentially over. What say you about the inevitable crises of capitalism? What about the increasing pace and severity of boom and bust cycles? Even in the worst dictatorial Stalinist regime, they at least have full employment. That's more than we can say about our system.

> "A worker may feel subjugated because they are frustrated by policy > decisions made by others. Is it better in Socialism where the committee of > workers makes the decisions, if the worker isn't on that committee?"

Your point is moot, as in a worker controlled factory, the actual committees are comprised of the workers themselves, or at the very least the people they directly elect from amongst the factory workforce. The representatives are also subject to instant recall, and managerial positions are routinely rotated. Every major decision from controlling production, to working hours, to health benefit and sick time is decided democratically. As such, the workers in the factory have a vested interest in its survival and productive capability. Additionallty, since the "managerial" aspects of running the factory merely deal with administration of the daily tasks, it is divested of its character of authority. Any worker can and will occupy the position traditionally held by the boss at a given time.

None of this is fanstasy. It has happened several times throughout the capitalist epoch, most notably in Catalonia during the Spanish civil war (see [http://flag.blackened.net/revolt/spain/coll_catalonia_dolgof...](http://flag.blackened.net/revolt/spain/coll_catalonia_dolgoff.html)) and the Soviet Union, immediately following the October revolution to about the 1930, before degeneration at the hands of the state bureaucracy fully set in. For a more current example, see Mondragón (<http://en.wikipedia.org/wiki/Mondrag%C3%B3n>) the world's largest worker controlled cooperative.

> " The subjugation is the same...No matter what the system this "subjugation" > must exist - its the foundation of civilization."

We're not talking about the idea of the social contract and the rule of law. Subjugation in this sense refers to the subjugation of the worker under a system of wage labor. Tell me, when a worker, through his or her labor produces a certain amount of value for his employer in the form of profit, yet receives only a fraction of that generated value back in the form of wages, how is that not exploitation? The only reason such a situation persists stems from the fact that the owner possesses the productive means (a factory, office building, machinery, a mine, etc.), while the worker only possesses his own labor. All he can do is sell it in order to survive. It is his only recourse.

But you say "What stops him from starting his own business and becoming rich like the boss?"

As a prerequisite, one needs a willingness to exploit one's fellow human beings for profit. Logistically speaking though, not everyone can be a boss, as by definition, a boss (and production in general) cannot exist without workers. Even barring that, credit is necessary to initially start operations. When banks aren't lending to make a small business loans to consumers, it is nearly impossible to start a business, as the case right now.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> There is a silver lining here. Without American protectionism, the Brazilian biofuel program wouldn't have left the prototype phase. It was (1) the 70's oil crisis, (2) plenty of sugar and (3) nowhere to sell it that made alcohol economically viable.

<comment><USER9> However, this still damages Americans because we've decided to tax sugar cane ethanol imports as a means to promote domestic ethanol development. This means that the less efficient corn ethanol is cheaper than sugar cane ethanol. Hmm, sounds like another corn product that's replaced sugar in the US.

<comment><USER6> Corn crops are large; is it even feasible to suggest replacing corn ethanol with sugar? Isn't the total sugar production an insignificant contributor to potential ethanol supply? Sure the import restrictions are onerous, but not a significant factor in the ethanol debate

<comment><USER10> Corn production is an insignificant contributor to potential ethanol supply.

Ethanol is a white elephant.

To fuel even 1/10 of our needs by ethanol, we would need 53 million acres of farmland dedicated to growing fuel-corn (the process of which is 170% efficient, requiring 70% more energy to grow than can be extracted via ethanol).

In 2006, we only harvest 309 million acres of farmland.

The only reason ethanol is gaining steam is politics. It has no potential whatsoever to become even a major fuel additive. We are much better off investing those corn subsidies that keep corn ethanol cheap into batteries for plugin-hybrids, alternative nuclear sources (LFTR comes to mind), and better mass transport. Especially for freight.

<comment><USER6> The energy argument is stale: consider this article. To quote their conclusion: "Corn ethanol is energy efficient, as indicated by an energy ratio of 1.24, that is, for every Btu dedicated to producing ethanol, there is a 24-percent energy gain."

<http://www.klenergycorp.com/pdf/USDA_Shapouri.pdf>

<comment><USER10> Thanks for the research.

It still doesn't seem quite right to me that our government should invest so much money in something that will reduce food production (and, at the same time, make corn too expensive for people to buy for food in some countries - this is already happening in latin america[1], though Mexico has since set an upper limit on tortilla prices[2]) when world hunger is an important issue. The only sources I could find for this were two years old; not sure if things have improved or worsened in the meantime.

[1] <http://www.technologyreview.com/energy/18173/?a=f> [2] [http://www.nytimes.com/2007/01/19/world/americas/19tortillas...](http://www.nytimes.com/2007/01/19/world/americas/19tortillas.html)

</comment></comment></comment></comment></comment></comment><comment><USER11> "Protectionists warned that if sugar tariffs were lifted, then the value of slaves working on the sugar plantations would collapse thus causing a general fall in slave values throughout the South."

Sugar tariffs originally supported the slave industry. There's a muckraking point against HFCS that I hadn't heard before. I'm surprised it hasn't been exploited.

</comment><comment><USER12> From this 1998 OP - _"The only thing that could make American sugar cane farmers world-class competitive would be massive global warming."_

Gee whiz - sugar was also the reason why the US never signed the Kyoto Protocol!

<comment><USER13> The US signed it but the Senate didn't ratify it (they voted 95-0 against it). Which is for the best really because it was a poorly conceived idea even, perhaps especially, if you think man-made CO2 emissions would lead to a world catastrophe in the near future. Note that most of the signatories to the Kyoto protocols have not lived up to them.

<comment><USER12> I guess my point - poorly made - was elaborating on the article's observation that Congress and the White House have spent the better part of two centuries doing everything they can to prop up the US sugar industry, and then connecting the observation about global warming to the timing (about 12 months after Kyoto).

As a general rule, when a comment or joke takes more words to explain than it did to make originally, that's a darn good sign you missed the mark!

<comment><USER14> I disagree. A joke will always be more concise than the explanation of what (possibly) makes it funny.</comment></comment></comment></comment>


Technichi: Macbook Subscription Service - <AUTHOR> http://www.technichi.com/ <comment><USER2> This seems like a difficult business to execute on.

1) You need capital to buy the machines to give out and slowly collect $60 on. Once the capital runs out, more is needed, but without getting capital quick enough, new customers have to be turned down, growth slows, and capital becomes even more difficult to acquire.

2) Since the tech and product can be easily purchased by anyone, there is room for other businesses to enter the space quickly and drive a pricing war. If large chains got involved they could offer a lower price and push local same day service.

3) Machines break. Without a hassle-free return / warranty, customers will likely get frustrated, refuse to pay, and make collections very difficult.

Not to say it can't be done, the leasing industry is fairly large, but I'd thought I'd share my thoughts on the problems that might arise. Reminds me of when they did PCs for 19.95 a month plus internet for a contract term.

<comment><USER3> In your opinion what is the difference between leasing a computer and leasing a car?

<comment><USER4> Off the cuff, cars cost 10x as much and aren't obsoleted by better cars that drive 3x as fast after two years...

<comment><USER5> Nor do laptops anymore.

<comment><USER6> A $300 Dell Venue 8 Pro Intel Atom _tablet_ is faster than a Macbook Pro of 4 years ago.

[http://www.anandtech.com/show/7263/intel-teases-baytrail- per...](http://www.anandtech.com/show/7263/intel-teases-baytrail-performance- with-atom-z3770-cinebench-score)

<comment><USER7> Doesn't matter. Does Photoshop feel measurably faster on a 4 year old Macbook Pro vs. a new one? Does email? Does web browsing?

Minus some spergy cases (PC gaming, 3d rendering, virtualization, etc) most computers are just fine for everyday tasks for a long while.

<comment><USER6> Then get the $300 Asus Vivotab Note, instead of spending $60/month on a lease on a new laptop. Within 6 months, you'll have made your money back and then some (Especially since the $300 tablet can do everything a 4-year-old computer can do, while having superior battery life, significantly less weight, support of a Wacom Active Stylus and a touchscreen)

Yes, I have run Photoshop and Gimp on a $300 Baytrail Tablet. Yes, they work. I can _personally_ verify that fact. On the other hand, I do notice significant performance increases when comparing these cheap, tiny computers against my beefy Desktop. Regardless, I speak from experience.

Benchmarks do not lie however, these $300 Baytrail tablets are faster than Macbook Pros from 4 years ago.

Regardless of how you slice it, computers depreciate significantly faster than cars. For those where "just enough" performance is good enough, you might as well buy these modern $300 netbooks / tablets than lease a top-of-the-line laptop for $60/month... unless you really throw away your laptops after less than 5 months of usage.

A brand new cheap computer is better than a top-of-the-line computer from 4 years ago. And for those who are chasing the top end, modern premium computers are released too often for this lease business model to make sense IMO.

<comment><USER8> _Regardless of how you slice it, computers depreciate significantly faster than cars._

Actually an MBP [1] holds its value better than many Detroit products[2].

[1] See eBay. [2] [http://www.forbes.com/2010/10/27/cars-resale-value- lifestyle...](http://www.forbes.com/2010/10/27/cars-resale-value-lifestyle- vehicles-depreciation-residual-used.html)

<comment><USER6> I'm thinking of the typical car vs the typical computer.

>> New cars typically lose about 20% of their value the moment they're driven off the lot, and about 65% after five years.

MBPs are one of the few computers that hold their value the best. But after 5 years, you're looking at a depreciation rate of 75%+ (going from $2000+ in 2009 to only $500 in 2014).

But we're looking at the _best_ computer that holds its value the best. No one gives a damn about a refurbished Dell Inspiron from 2010.

www.sears.com/dell-refurbished-dell-latitude-e6400-14inch-notebook-intel/

You're looking at ~90% depreciation for the more typical laptop, and maybe 70% if you focus only on Macbooks. With Cars, you're looking at 65% typical depreciation, with only ~45% if you focus on Camrys or Corolas.

A 2009 Camry will run you ~12k today, only 45% depreciation.

<comment><USER8> Did you read the article? These guys are leasing MBPs, not Dell Inspirons. Your MBP depreciation numbers ($2000->$500 in 5 years) are also wrong.

<comment><USER6> [http://www.ebay.com/itm/Apple-13-Inch-Macbook- Pro-2009-4GB-2...](http://www.ebay.com/itm/Apple-13-Inch-Macbook- Pro-2009-4GB-256GB-Maverick-OS-Mac-Office-Please- Read-/191122794950?pt=Apple_Laptops&hash=item2c7fce69c6)

You're right. Macbook Pros depreciate down to $400, (if you have $100 office tacked on). I guess its closer to $2000->$300 in 5 years.

Without Office... it looks like the Macbook Pro depreciates to $175.

[http://www.ebay.com/itm/Apple-MacBook-Pro-13-3-Laptop- MB990L...](http://www.ebay.com/itm/Apple-MacBook-Pro-13-3-Laptop-MB990LL-A- June-2009-/221402884746?pt=Apple_Laptops&hash=item338ca3ea8a)

Not looking good for a laptop that 5-years ago costed $2000.

Realistically, I'm seeing $500 on certain EBay deals, but really its anywhere between $175 to $500.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> Apple itself has a Macbook "subscription service", actually. It's called a "Fair Market Value lease" and works basically like a car lease.

[http://store.apple.com/us_smb_78313/browse/finance/lease](http://store.apple.com/us_smb_78313/browse/finance/lease)

<comment><USER10> The devil will be in the details. The Apple lease program to me isn't interesting because a) the minimum lease term is 24 months and b) the minimum order is $3,000.

If I have an option to subscribe on 6-12 month terms and upgrade my machine on each release cycle, that'd be really interesting.

<comment><USER11> You'll pay for a shorter lease term with a much higher monthly payment. Depreciation isn't linear; both a car and a computer will lose value much faster during the first 6 months than during the second 6 months (much less months 12-18.) So if you lease for say, 6 months rather than 24, the rate has to reflect that higher depreciation (plus the risk and cost associated with reselling the item at the end of the lease, spread over a much smaller number of periods.) I could easily see it costing double the rate Apple charges for a 24 month lease to rent for 6 months.

Example: $2000 machine that depreciates to $1500 after 6 months, 1200 after 12 months, $800 after 24 (keep in mind much of the value loss happens when you "drive it off the lot" and turn it from new into used). $100 overhead on accepting the return, cleaning it up and reselling it to extract that value. 6 mo lease: ($2000 - $1500 + $100) / 6 mo = $100/mo 12 mo lease: ($2000 - $1200 + $100) / 12 mo = $66/mo 24 mo lease: ($2000 - $800 + $100) / 24 mo = $50/mo

(Yes, I"m ignoring interest here. But rates are low.)

</comment></comment></comment><comment><USER12> Am I the only one who thought April fools? I could actually see this being useful if I was considering buying a new Mac as a way to test out different models for an extended period of time assuming I could get a one month lease.

<comment><USER13> I thought april fools also, but I'm really hoping it's true. My 4-year-old MBP has finally been outpaced by software speed needs.

<comment><USER8> I occasionally wonder whether to replace my 2009 MBP (upgraded to SSD and 8GB, naturally). What software finally vanquished your laptop?

<comment><USER13> Honestly Chrome is the worst. I'll have 10-12 tabs open (including apps like Asana and Gmail, plus a few extensions) and it takes a while to switch tabs, especially when I'm also doing development work, with Atom open, a few iTerm tabs, Activity Monitor, Finder windows, Messenger, Telegram, and Mail. Add a few daemons for servers or databases running in the background it just locks my system up.

Plus I work with data sets, and my HDD is filling up fast...

</comment></comment></comment></comment><comment><USER14> This page really needs to specify the length of the term, otherwise something like $60/month is pretty meaningless when trying to figure out if something like this would be worth the cost of convenience.

</comment><comment><USER15> I _really_ hope this is real. There have been a couple of occasions where I've been waiting for a 'big leap' in Apple's annual hardware refresh, but circumstances have dictated that I need a new computer right now[1]. Being able to simply rent a laptop for a couple months would be killer.

[1] Specifically what's happened to me in the past is that I left a job and had to return my work laptop, and in another instance someone dropped a pint of beer onto my laptop.

</comment><comment><USER16> This could be great for businesses. To pay $60 for a machine for 2 years (for example) means a total cost of $1440. If this service includes something like an 'instant repair', i.e. they just send you a new one and take care of repairs, so that you aren't ever without a machine, it could be worth the slightly higher cost. Also, most companies will want upgrades/replacements every 2 years anyway, so this way they get that, don't need to worry about what to do with an old machine, which they probably wouldn't sell anyway.

<comment><USER17> "zrail" said in a comment that Apple already give that sort of offer to businesses: [http://store.apple.com/us_smb_78313/browse/finance/lease](http://store.apple.com/us_smb_78313/browse/finance/lease)

</comment></comment><comment><USER18> I goto school with a lot of people who would jump all over this. If the credit requirement's aren't crazy and students could easily get approved, this could be a game changer. I'm assuming it's going to be a 1 or 2 year term and they are relying on the high resale value once you send it back to profit or re rent the old systems for a lower price.

</comment><comment><USER19> For everyone in this thread: I'm pretty sure it's a joke.

<comment><USER20> [https://twitter.com/TechnichiLLC](https://twitter.com/TechnichiLLC)

It's real.

<comment><USER19> All tweets are from today. How does that prove anything?

<comment><USER20> I guess that I just assume that people are quick to congratulate themselves on a joke well pulled.

</comment></comment></comment></comment><comment><USER21> Whats the advantage over financing such a purchase through any of the other number of means available?

<comment><USER22> First Guess: Doesn't show up on your credit (or require great credit)

Second Guess: There are different tax ramifications for renting something than there are for purchasing/financing.

When you purchase a computer I think you can only write of a certain amount (maybe depreciation?) as a business expense, whereas this entire $60/mo is a business expense.

</comment></comment><comment><USER23> This service has been existing in Europe for a while. It's not nearly as polished, though.

Yes, it requires a initial investment, but with a big insurance (fraud is rampant and breakage astounding) a bank would be happy to pay against easily re-sold inventory.

The key differentiating factor is the minimum rental time: you can offer any period, but One-day rentals require a different logistic than a year.

I would personally love to see a meaningful One-week option because my MBAir needs new batteries, and I can't imagine stepping away from it more than a day. If Apple could afford that through its Official Repair Partner, I'd be a happy man.

</comment><comment><USER11> Here's a question: when you return the computer, will they review its condition for damage / mileage, the way a car dealer would for a lease return? And if not, what's the incentive to take care of it?

</comment><comment><USER24> I hope that they offer next day replacement machines. As it is now, when my laptop dies, I go to the Apple store, they say it will take a week to repair so I buy a new one on the spot. I later get the old one fixed and give it to my son as a hand-me-down. I've done that twice now, but it isn't the most predictable way to always have a Macbook.

It would be kind of cool to be able to get a replacement machine by FedEx the next day, and stay current on my hardware. (They tend to last a bit longer than 2 years).

<comment><USER25> That would be especially compelling if they integrated backups as well. You get _your_ laptop back, including all the data from the last full-disk backup.

Of course, security. Perhaps encrypt the drives by default, then backup snapshots of the encrypted data? Then you get the benefit of the backup without the privacy hole.

</comment></comment><comment><USER26> What about cases of loss/theft? Is there a deposit?

</comment><comment><USER27> I call April fools: none of the models they advertise support the "upgrade" to 1TB magnetic hard drive, which they list in optional upgrades. When was the last time you saw a magnetic hard drive with PCI Express interface? :-)

</comment><comment><USER28> rent-a-center business model hits startup land

</comment><comment><USER29> Just heard of a MacBook rental company Livyy from Khoi Vinh. Looking for something more my price range and came across Technichi. Love the price and the idea, but, are any of you fearful this might still be a joke?

</comment><comment><USER30> Would one get new stuff when the old gets outdated? If yes, what would you do with the old hardware? Who want's the old stuff then? If not, is there any point other than your support for the consumer?

</comment><comment><USER31> No Macbook Air?

</comment><comment><USER32> Very interesting service, given that MacBooks have such high resale value it may work out for them.

I do hope they offer the high-end 15" Retina config even though it is not mentioned on the homepage.

</comment><comment><USER33> This would be really useful if you macbook is being repaired.

</comment><comment><USER34> Why not just use a credit card if you want to pay over time?

<comment><USER35> Low credit limit? Credit's not that great? Incremental hardware upgrades? (60/month for a year is $720 and I can upgrade to the latest and greatest machine for the same price)

<comment><USER34> Nothing to argue with there. I was primarily pointing out that this company is addressing a problem that doesn't really exist in the first place. Financing for consumer purchases is readily available, and if you have bad credit you probably shouldn't be leasing a Mac for "less than your monthly cell phone bill" (nor should you likely have a cell phone bill over $60 per month...)

<comment><USER35> >if you have bad credit you probably shouldn't be leasing a Mac for "less than your monthly cell phone bill" (nor should you likely have a cell phone bill over $60 per month...)

That doesn't necessarily follow.

This is actually the boat I'm in right now. Medical bills + no real work for 1.5 years = Credit history is garbage for at least 4 more years until it falls off my report. Sure, it's paid off now, and the report reflects that, but the people and algorithms who just look at the number don't know and don't care how or why.

Practically, I could either stack up the roughly $1500 necessary to outright buy a machine and have only AppleCare, or I could just pay $60/month and have a fully covered machine that's functionally immune to both breakage and hardware updates.

(Or I could pay $200 a month to a sketchy "we rent to people with shit credit" outfit and gain all of the headache with none of the benefit)

I know which particular equation I like more...

Aside, People really need to stop basing assumptions of people's behavior on their credit score, and that goes double with the economic downturn of the past few years.

</comment></comment></comment></comment><comment><USER36> Do I automatically trade it in for a new model when it comes out, or would I have to pay more?

</comment><comment><USER37> is "How about them Apples" not enough of a clue that this is a joke?

</comment><comment><USER38> Is it going to work outside United States?

<comment><USER39> If the cost remains the same then it'll probably do really well.

</comment></comment><comment><USER40> maybe a good option for start ups until they prove out their business model and start to make money

</comment><comment><USER41> subscribed for beta.

a heads up: your glyph-icons are broken in firefox.

</comment><comment><USER42> I like this!

Laptop as a service :-D

</comment><comment><USER43> Congratulations, you've disrupted leasing by starting a leasing company.</comment>


iPad Day One: Big Media Mostly Playing in Free Apps, Not Paid  - <AUTHOR> http://paidcontent.org/article/419-ipad-day-one-charts-show-big-media-only-playing-in-free-apps-not-paid/

<comment><USER2> Editorializing headlines still annoy.

</comment><comment><USER3> iBooks (#1 Free App) is free but a lot of content is extra. We will have to wait and here about book buying habits. Netflix (#2 Free App) requires a paid Netflix account.

</comment><comment><USER4> It's a bit early to tell since most people have had their iPads less than 24 hours at this point. I like the free WSJ & NYT apps so far but I'm definitely not ready to subscribe.

<comment><USER5> I tried to install the nytimes app, but only found the old iPhone app!

<comment><USER4> For some reason it's called "Editor's Choice"</comment></comment></comment>


72% of people can't name any female tech leaders – can you? Take the quiz - <AUTHOR> http://www.information-age.com/it-management/skills-training-and-leadership/123458876/72-people-cant-name-any-female-tech-leaders-can-you-take-quiz

<comment><USER2> Why would I be able to identify headshots of female CEOs? Outside of Gates, Jobs and maybe Zuckerberg, I couldn't identify any male tech leaders by face.

One thing that I always find interesting is when I follow a tech blogger whose work I've read for years on Twitter, and finally see what they actually look like. People in technology are names and ideas to me.

</comment><comment><USER3> I can't even name the male ones. Unless they are in the news often I don't pay attention.

</comment><comment><USER4> The test is pretty easy if you pay attention to the backgrounds of the images.</comment>


HITCON CTF 2015 - <AUTHOR> https://ctf2015.hitcon.org/ <comment><AUTHOR> The HITCON CTF qualifiers start tomorrow. This is generally one of the highest quality CTFs, and whether you're new to CTF or a veteran, I'd highly recommend playing.</comment>


HNHalfLife aims to increase discussion half-lives on Hacker News - <AUTHOR> https://github.com/polyfractal/HNHalfLife <comment><USER2> Another way to boost discussion time would probably be to cut page load time in half.

What's the current excuse for 4 second page times (on nearly pure text pages) and up to 30 second new-post times, with hundreds of advanced developers around offering free help?

<comment><USER3> IIRC these are wait times deliberately engineered by pg/said-advanced- developers for various reasons. I remember reading that there is a cool-off period to discourage hasty comments and fast growing off-topic comment trees. There also appears to be intentional slow load response times for posters with certain negative comment thresholds. I cannot officially confirm any of these.

I agree though, the restrictions are arbitrary and unnecessary.

<comment><USER4> I thought the cool-off time was enforced by setting progressively longer times for the "reply" link to appear as threads lengthen. The idea is that as exchanges get longer, the probability of needing a "cooling off" period before replying increases.

</comment></comment></comment><comment><USER5> An ex-HNer commented a while back, while leaving the community, that the primary deterrent was the culture change to where discussion was not valued. He stated that the primary draw to "Old HN" were not the articles themselves, but rather the long-tailed intellectual discourses that happened in the comments.

I often see comment threads die out on HN far too quickly, and the parties lose interest often. Any change that would promote more critical insight and stimulating conversations gets a profound thumbs up from me.

<comment><USER6> I'd like a simple interface to go back and browse/read those old threads (even if read-only). Has anyone done that?

(I had some archived but lost the archive... I know.)

For example, pick a date and see all the threads that started on that date.

However, I also have concern for the load/overload this might place on the HN systems. So... maybe present time is the best, all things considered. But I do miss the tone, quality, and signal/noise ratio of those early threads.

</comment></comment><comment><USER7> Woah, didn't expect to see this on the frontpage!

I made this some time ago and have been using it ever since. The script is pretty simple but makes HN a lot more pleasant for me personally. I'm glad other people are finding it useful :)

<comment><USER8> Oops...

I accidentally down voted you. It's very hard to browse HN and vote comments on the iPad...

Thanks for the plugin.

</comment></comment><comment><USER9> Here's a completely different solution to the same problem:

<http://hckrnews.com/about.html>

Grab the browser plugins from there, and then use hckrnews.com as your front page.

<comment><USER10> I use this almost exclusively but I think it actually shortens the discussions - you see the stories immediately when they are new and with little comments and then you have to make a conscious effort to come back to them.

<comment><USER9> To me, the big orange numbers on the left are the first thing that pop out at me, pulling me back into older stories with significant number of new comments.

</comment></comment></comment><comment><USER11> A simpler way to do this is to keep stories around on the home page that continue to receive comments

<comment><USER12> better a tab 'active' next to 'new'

</comment></comment><comment><USER13> I've been using this for a long time: [https://chrome.google.com/webstore/detail/imeeonmdbakdmilnnc...](https://chrome.google.com/webstore/detail/imeeonmdbakdmilnnccaddiplgjjhbog)

HNHalfLife's "new comment" indicator seems a little subtle to me. I like how HNCommentTracker makes the new comments really stand out. However, I like the saved page idea. (Will it indicate that there are new comments on your saved pages?) HNCommentTracker also shows new comments on the "threads" page. Does HNHalfLife do this?

<comment><USER7> The saved page is actually already provided by HN, but pg decided to bury it inside your profile where most people don't notice it. All my script does is prominently display the saved page on the navbar.

And yes, it will indicate new comments on the "saved" page. The script basically stores a last accessed timestamp and number of comments. On the frontpage (and saved page, etc), it just checks to see if there are more comments than the last time you accessed the page.

Unfortunately, it does not markup the "threads" page at all.

</comment></comment><comment><USER14> this may not even be a good idea.

HN has high content comments, not a lot of back-and-forth. I think that's worth preserving.

<comment><USER7> The problem with HN comments is that you may make a very thoughtful and lengthy reply to someone...and no one ever reads or sees it because stories scroll off the frontpage so quickly. And it isn't easy to check up on old discussions you participated in, so your thoughtful comments are buried.

I think it is detrimental to the community and encourages all the wrong kinds of behavior.

<comment><USER15> _And it isn't easy to check up on old discussions you participated in_

That's what I use the "threads" link for. It's worked quite well for me.

</comment></comment></comment><comment><USER16> I'd also made something recently to try solve the same problems. ie working with discussions and threads as apposed to the front page. Check it out here: <http://christopherdebeer.github.com/hnCommentWatcher/> check it out if you have a chance.

<comment><USER7> The user-swatches are a good idea. I've been toying with a similar concept but applying it across the whole site. I really dislike how HN doesn't have avatars...I visually recognize avatars a lot easier than reading usernames.

I made a "highlight user's comments" script (<https://github.com/polyfractal/HNHighlightUser>), it'd be cool if you could incorporate something like that as well. Sometimes I want to quickly identify all the posts by a single person in a thread.

Very nice work :)

</comment></comment><comment><USER17> I'm actually working on something exactly like this right now. I just started last night, but it's mainly for fun/learning

</comment><comment><USER18> I've written something similar as a Chrome extension:

[https://chrome.google.com/webstore/detail/kikfikaiccdaabdilg...](https://chrome.google.com/webstore/detail/kikfikaiccdaabdilgpbcceionekdegl)

Code is here: <https://github.com/tkahn6/hn-newcomments-chrome></comment>


Journo and Literate CoffeeScript - <AUTHOR> http://ashkenas.com/literate-coffeescript/

<comment><USER2> Jeremy, your code's comments are all hard-wrapped at column 80, but the code itself extends beyond that.

Do you tell your editor to hard-wrap each "block" of comments as you write (or edit) them, or is your editor configured to automatically hard-wrap all comments?

Either way, have you considered configuring your editor to _soft-wrap_ comments while leaving your code alone? I'd say that's the most natural approach from a writing standpoint.

P.S. Every day, I use tools you've made. Keep making!

<comment><AUTHOR> Yeah, in an ideal world, that would be better -- and I've tried writing like that ... but sooner or later I end up wanting to open the file in a location where the wrapping isn't configured properly, and all of the super long lines look terrible.

So I just tend to hard-wrap manually, out of habit, even when writing in a .txt file or an email. In fact, it's hard to stop myself from doing it in this textarea ;)

<comment> eric-hu What editor do you use? With vim I think I've always been able to select comments and "gq" them to autoformat them to whatever the linewidth is set to.

</comment></comment></comment><comment><AUTHOR> TL;DR posted up the earlier-promised example Literate CoffeeScript blog engine: <https://github.com/jashkenas/journo>

<comment><USER3> I've always been excited by the idea of literate programming, and after having flirted with most of the other Javascript meta-languages, now use Coffeescript as my main language for both server-side (node.js) and client-side code. Is there currently a good syntax highlighting mode that properly displays .litcoffee files? I currently use Emacs with the coffee-mode major mode, but I don't think it's been updated yet.

<comment><AUTHOR> I'm not aware of an Emacs one being updated yet, although I think that someone's finished it for Vim.

If you want to be an open-source hero -- go ahead and do it yourself ;) It's mainly a matter of taking the Markdown package, and the CoffeeScript package, and pasting the latter into the former, right where the syntax rule for "code block" goes.

<comment><USER4> Do you have a link to the vim plugin you referenced?

<comment><USER5> <https://github.com/mintplant/vim-literate-coffeescript>

</comment></comment></comment></comment></comment><comment><USER6> Jeremy,

I am a big fan of the goals of your work (CoffeeScript, Literate Programming).

Both projects make code easier to understand and more accessible to everyone.

I have the feeling that many of us forget about the value of this, after having invested many hours to understand complex syntaxes and general patterns.

From lowering the entry barrier and increasing efficiency, everybody will profit in the end.

</comment><comment><USER7> Well that was interesting. Started reading the readme formatted on the page.. Well commented as usual, nice little snippets to demonstrate..

About half way through realized it was the actual source file.

</comment><comment><USER5> Loving the litcoffee format! Clean, elegant, addictive.

Simple example usage: <https://github.com/joyrexus/tester>

&: <https://gist.github.com/joyrexus/5147449>

For vim-ers, check out _vim-literate-coffeescript_ : <https://github.com/mintplant/vim-literate-coffeescript>

I've found a few additional mappings quite useful: <https://gist.github.com/joyrexus/5112582>

Now need to take a closer look at _journo_ and _docco_ integration.

</comment><comment><USER8> I had never heard of literate programming until Monday with the release of CoffeeScript 1.5.0

So I tried it out and found it to be a really rewarding experience: <https://github.com/JonAbrams/tomljs>

<comment><USER9> I experimented with Literate Programming in PHP two years ago: <http://bergie.iki.fi/blog/literate_programming_with_php/>

</comment></comment><comment><USER10> I thought the `do loadManifesto' syntax was discouraged in favor of 'loadManifesto()'? I've read jashkenas say he wished that hadn't been introduced in the first place, and now I see it in his code.

</comment><comment><USER11> It's always interesting how something that shouldn't be that big of a deal is a much bigger deal when experienced. I mean that using Markdown is not conceptually different than writing judiciously-placed block comments, but the ease of formatting for the coder -- and the most definite impact on reading for the reader -- is a _huge_ impact. Thinking about it now, I sometimes skip self-documentation even when I _know_ it's the right thing to do (given how much time we spend re-reading code compared to writing it) because it's annoying just enough to remember what my style/convention is to make long comments readable. Having Markdown provide the template removes that cognitive barrier, and hopefully makes it easier to _ease_ into the documentation process.</comment>


The Humanity Star - <AUTHOR> http://www.thehumanitystar.com/ <comment><USER2> Neat.

"The Humanity Star is a geodesic sphere is made from carbon fibre with 65 highly reflective panels..is visible in the night sky from anywhere on Earth at dawn or dusk as it passes overhead. You can track the Humanity Star's location here to find out when it will be overhead and visible in your region."</comment>


Next generation of software engineers need training, not retraining - <AUTHOR> http://www.cio.com/article/3122964/careers-staffing/next-generation-of-software-engineers-need-training-not-retraining.html <comment><USER2> Am I missing something really obvious?

The essay promotes boot camps, which is something I'm hesitant about because the type of programming I do took far more than a dozen weeks to learn. But sure, I'll accept they are useful.

But the funding model seems to be that people pay for their own training, either directly or through financial aid. That puts a lot of risk on the person.

Why aren't companies paying for the continued training of their employees? Then they can spread the risk over many people.

Or is it one of those situations where it's cheaper to hire people that another company has invested time and money to train, rather than do it oneself?

If so, isn't this an example of a case where it makes sense to raise taxes (esp. corporate taxes) to provide free or subsidized education?

<comment><USER3> >Or is it one of those situations where it's cheaper to hire people that another company has invested time and money to train, rather than do it oneself?

I've always like the quote:

P1: What if we train them and they leave?

P2: What if we don't and they stay?</comment></comment>