skysight-inc/HackerNews huggingface dataset:
I'll take a few of those questions.

> If I split() a string, does each piece get its own BOM?

Conceptually, each piece is a sequence of code points. The BOM stuff only comes into play when you turn it into an external encoding. And frankly, I would much rather use UTF-8, explicitly specify that the encoding is UTF-8, and not have to worry about adding a BOM.

> If a chr(0x20) is part of a multi-byte escape sequence, does it count as a space when I use .split()?

In valid UTF-8, all bytes in multibyte characters will have the high bit set. A space can only be represented as the 0x20 byte, and an 0x20 byte can only be a space. If you've got malformed input, then that's a whole other can of worms.

> Is it possible for a zero byte to be part of a multibyte sequence representing a character? How does this work with C API's that expect zero-terminated strings?

In UTF-8, the answer is no. In other multibyte encodings (e.g. UTF-16), you should not expect to be able to treat it at all like ASCII.

> If you're using UTF-16, what endianness is used? Is it the same as the machine endianness, or fixed? What operations cause endian conversion?

When reading external text, you can detect this from the BOM -- byte order, after all, is why you have a byte order marker. When converting from your internal format to UTF-16, you pick whatever is most convenient.

> Should my C programs handle the possibility that sizeof(char) != 1? Or at least check for this case and spit out a warning or error?

I don't know any popular non-embedded platform on which sizeof(char) != 1. That said, it can't hurt to get it Right.

> What automated tools exist to remove BOM's or change accented characters into regular ones, if other automated tools don't accept Unicode?

In Python, there's a library called "unidecode" which does a pretty good job of punching Unicode text until it turns into ASCII.
The reality is that the quality of any app depends on the skill set of the developer(s). Some of the native apps I use are wonderful, others are terrible.

As a web developer who is currently on a mobile app project that uses HTML5 and PhoneGap, I have been pleasantly surprised that we have been able to create an app that, in my opinion, looks great, is wonderfully fast on newer devices, and is a pleasure to use.

HTML5 is not the right choice for a lot of apps. But it's an option that should be taken seriously by anyone who has web development experience and it's a solution that I feel is getting better every day.
the Moon is 400,000km from the Earth and the speed of light is 300,000km/s. So, about 1.3 seconds, but since you need to send a command and get it back, you're looking at 2.6 seconds before you start receiving your data back.
This reminds me of when I went to a legal symposium at a newly opened law school (UC Irvine). There were about 80 attendees sitting in a room with Aeron chairs. A lecture room with Aeron chairs, FFS. Many attendees were congratulating the Dean on the opening of the school, with more than one reference to 'that new law school smell.' This is why I can't afford to attend a real school :-(
Yeah, the reconstruction isn't hard at all, but it's not a direct 1:1 mapping to the AST, since multiple control flow structures in the AST can become the same thing in bytecode. That said, it's quite simple to make it Good Enough (TM); the reason I wrote that and the RMarshal module was that I was writing a Python decompiler a part of a larger commercial project. I should release the decompiler at some point.
I was saying that tongue in cheek, but yeah, it will happen.

At some point the brainiacs in the war department will realize that you can never find enough soldiers to police everyone -- if they haven't already realized this. The only way to solve that is make a machine more efficient than people.

Our ally on the inside, potentially, are soldiers like the general in Wargames played by Barry Corbin, who don't trust the machine over a human soldier.
Well, for non-STEM majors at least the value of going to a top college is 70% being able to say you were good enough to get in. So you've got a positional good and thanks to the government lots of people who've been loaned the money to bid it up. And since most of these places are non-profit you won't see high returns to investors, meaning the one place for the money to go is to superfluous staff.

There's an element of Baumol's cost disease[1] too, but according to a paper I read recently (I'm too lazy to dig it up, sorry), that only accounts for >20% of the rising costs of tuition.

[1]http://en.wikipedia.org/wiki/Baumol%27s_cost_disease
CodeHS Wants To Teach Every American High Schooler How To Code
True, I suppose people pasting the ridiculous chain letter style 'post this to 9 statuses tonight or u will hae bad luck for 10 weeks' posts don't necessarily believe they are averting poor fortune.
He might also want to take a look at Pure64 [1] to handle the bootup stuff in a super lightweight manner (and also see how it's done).

[1] http://www.returninfinity.com/pure64.html
Netflix Hystrix
I have, but I'd rather stick to one set of proprietary technologies (the app platforms themselves) than learn another proprietary layer atop said first proprietary layer, and risk constantly scratching my head in vain when inevitably the abstraction leaks and things become inconsistent.

Not to mention lock-in. I'm already at the mercy of the respective distribution channels - I don't need to add to that pain.

Edit:

Don't get me wrong, I'm happy that these things exist. I like anything that lowers the barrier of entry for people who otherwise wouldn't write software. It's just that you're trading a lot of maintenance/optimization time for a shallower learning curve - and it's important to make that known.

Also one last point - the reason why this kind of stuff typically needs to be learned through painful iterative experience is because it's typically undocumented. In most cases it's undocumented specifically because it's not a supported development path, and as a result it's very likely the techniques you discover today will break tomorrow.

It's a lot like leveraging unspecified/implementation-specific language behaviors in C.
About Control
The scale of this problem varies quite a bit based on institution type and based on the primary sources of revenue for the institution. A medium size two year institution has a very different (lighter) organizational structure from a large four year residential institution. In general, emphasis on the full featured residential experience leads to more "programs" (product bundling) and more administrators to run those programs. This might not be a bad thing especially for endowment driven institutions that have chosen a high cost strategy. These schools can afford to pay the large number of administrators and pay their faculty well pretty much without trouble.

The problem truly arises with the second tier of institutions that are trying their best to "keep up" with first their peer institutions and then the top tier in the US News rankings. Their budgets are generally more tuition driven which starts to put some constraints on what is possible. These schools build the same expensive high touch programs and resources to attract the best students and try to keep up in the rankings. Higher ed is like a school of fish - everyone wants to swim together but only a few really have the money to do it. This is where the cracks in the model really start to show.

There are definitely opportunities for disruption and change in higher ed. Intelligent application of technology both to teaching and learning and to the other elements of the current bundle (research, certification, etc.) will lead to disaggregation and (probably) reduced employment for higher education administrators. The wildcard is how accrediting organizations will respond to the changes on the horizon. They act as a brake on innovation, and since most federal and state funds are tied to accreditation, institutions are loath to change too quickly.
I imagine a special IMAP server for this purpose that doesn’t allow you to delete messages.
Is it possible to load both apps simultaneously to do a comparison? I feel like I need to experience the trade-off.
From one husband to another, hang in there man and in all sincerity, best of luck.
100% true. For this device, just roll with the defaults.
Education is not a market where perfect competition obtains (as for fungible commodities like oil or cotton or iron). Rather, it follows laws of monopolistic competition, so price doesn't automatically converge on a sensible equilibrium.
I agree that this isn't enough to judge Einsteins morality, but it is interesting the tendency to want our heroes to be noble people. James Thurber wrote a wonderful short story about this -- The Greatest Man in the World.
Why Objective-C is Hard to Learn
I'm not technically an "engineer" in terms of qualifications but I am a coder who did all the design work for my startup (serpIQ.com).

It's common in small bootstrapped startups because you have no choice but to wear a lot of hats.
You think that's bad? Check out NYU's Bobst library, where there are entire floors with Aeron chairs.
UCS2 allows random access to characters, UTF-16 does not.

I'm not sure if that's really true. On IBM's site, they define 3 levels of UCS-2, only one of which excludes "combining characters" (really code points).

http://pic.dhe.ibm.com/infocenter/aix/v6r1/index.jsp?topic=%...

If you have combining characters, then you can't simply take the number of bytes and divide by 2 to get the number of letters. If you don't have combining characters, then you have something which isn't terribly useful except for European languages (I think?)

Maybe someone more familiar with the implementation can describe which path they actually went down for this... given what I've heard so far, I'm not optimistic.
From someone who's been through part of that (though without the kids), if you can possibly find an out, do.
Good luck if you believe that Univ of Phoenix is a disruptor in the space and simply lacks "prestige".

That's quite an excuse. The newer University of California campuses have only been around for a few decades.
Name one Unicode implementation which shows utf16 `0x00 0x41 0x03 0x08` as length 1.

U+4100 U+0803 is two code points by defintion. Thus length == 2.
The Value of Side Projects is more than you might think
Just go to the Chronicle of Higher Education. The cruel mathematics of the web are not that restrictive.
Even only 15-20 feet off the ground, my instinct is that there's a fear factor in riding aerial gondolas unlike any in urban rail.
Heh, if only you knew the stories behind all this.

What if I told you that the attackers had a 2-month head start on some discs due to insiders leaking them -- would that make a difference? What about if you found out that there weren't as many "rippers" as it seems because for a while, one of them was a "thin client with remote access to a competitor's ripper"?

Also, the "uncrackable" thing came from an external analyst who had no communication with anyone at the company and was obviously wrong.

http://www.avsforum.com/t/871371/bd-unbreakable-for-10-years...

BD+ _is_ renewable, meaning no single hack breaks the system for all time (unlike DVD-CSS). There's always something you can do, and with enough resources, it can still give attackers a challenge.

I'm not saying that BD+ is the most successful DRM scheme ever, but I do think it's done well given the particular environment. If you want an out-and-out success story from the same company (8 years, no hacks ever), see the CryptoFirewall. This is an apples and oranges comparison though.
The printer ink thing is probably their #1 success story, although the non-DRM version is to build some patented shape and rely on patents for protection, which may also work. (IANAL though; I know you can do compatible designs in some cases, too).

This whole "DRM for 3d printing" thing is a red herring -- the real war was "DRM embedded in physical devices we purchase", like auto parts and ink, and that was fought and lost in the last decade.
Wonder what other industries need large scale inventory done like this from effectively image recognition?
Raspberry Pi micro arcade machine
Differently from most other comments, I didn't see this as Einstein being a jerk. I more feel compassion for him since, to me, this list is like an admission of his solitude.

It must be quite lonely being so unique as Einstein. Most people have a hard enough time finding someone who they can relate to. When you're as publicly distinguished as he was I imagine finding someone to relate to must've felt entirely hopeless. Particularly since she was a bright woman, and 'on paper' should've been a good match and now it wasn't working out.

Einstein's second marriage was with his cousin which could be seen as more evidence of his desire to be able to relate to someone. Having family history probably helped them feel close, and he probably gave up on someone being able to relate to his intellectual pursuits by that time.

Unfortunately I don't have any hard evidence to point to support my ideas. I have been thinking of this since Steve Jobs died and have been wondering how such unique people like him, Einstein, and others dealt with not being able to feel true connection with another human being.
Agree (i thought the same thing about myself). Big ideas for a big space are hard to come by.
You can't easily copy what Netflix gives you thanks to good old DRM, but that doesn't really hurt you.

Unless you happen to run a non-mainstream OS. Or move to Mexico. In which case it hurts you all the way.
Yes, well, with 1000x that in assets I'd say he's an even better candidate for a wealth tax.
Do you remember Sealand? Offshore datacenter on an independent "principality" off UK coast?
How the Universe works
The business goal behind most of these "protection" methods is to make unauthorized (unpaid) copying/sharing inconvenient. That's it. There are no commercially feasible methods to protect video or audio content against "a determined hacker", but that's not what these barriers are for. You can make fun of these laughable encryption methods all you want, but they serve their purpose by providing the desired purchase to piracy ratio.

The problem is marketing folks getting carried away when describing these "technology solutions" to the content owner, because that's what they (as well as VCs) want to hear.

Disclaimer: cofounded a video CDN+DRM provider more than a decade ago, developed many content protection methods over the years.
Reading all of your comments, so you are suggesting a Unicode object should not have len() or substring() ?

A standard like that is totally not embarrassing.
This was an internal email: https://medium.com/tech-talk/1aff50f34fc
and highschools teach everyone how to math, in the end it's still up to the individual
Fast and branchless line drawing routines
Today's modern interfaces are tomorrow's obsolete ones.
It's not like PCIe will last any longer than PCI, PCI-X, ISA, Vesa Local Bus, EISA, etc.
The Bic pen trick works wonderfully, and quite a few laptop locks still use the same kind of key. I got lucky with the speed, but my dad lost $20 to me in less than 30 seconds when his $20,000 warrantied lock opened without the key.
http://stackoverflow.com/questions/4579215/cross-platform-it...
Any Mozilla devs wish to weigh in? The article sounds reasonable but is speculative without a first-party response.
A Siemens S70 LRV such as the ones used on the LYNX Blue Line in Charlotte, NC, can hold 68 passengers sitting, 230 including standers. One train comes every ten minutes peak, fifteen minutes off. This means we have a max capacity of 1380 pphpd (passengers/hour/direction) peak, 920 pphpd off.

These gondolas look like they can hold a max of about six passengers, but there's also a lot more of them. The article offhandly mentions a peak headway of thirty seconds. This implies a max capacity of 720 pphpd peak. For the same max capacity as current Blue Line service, we'd need to land a gondola every 15 seconds. The catch is that the Blue Line still has room to add trains, but landing a gondola every 15 seconds is probably pushing it.

I was expecting this to turn out rather poorly in the gondolas' favor, but considering the major advantages in capital cost, this actually doesn't look too bad. And they do have a point about high-frequency services attracting ridership. The main question is whether they can actually pull this off for the stated capital costs, and whether the operations and maintenance costs will come back to bite you later.
This is interesting to me! I've never met an engineer or artist who I would trust to do the UX. They are very, very disparate skill sets with very, very different goals. And, all the "hybrids" I know understand where their limits are, and we often work very well together on the nitty-gritty details of interaction design, like the precise timing of transitions and such, but they're generally more than happy to let me do the bulk of the UX work, figuring out all the edge cases and flows off the happy path.

But, I do have a theory that if the entire team understands the user goals and how the product is supposed to best support them, and everyone has a modicum of good taste, that maybe you don't need dedicated UX people.

Maybe you can workshop the entire UI and flow, like in a design studio. Maybe you need a short-term UX person to facilitate; maybe that can be taken on by a manager, or it can be a role that's rotated through.

I've never met a team like that, though.
Some major responsibilities you have not included: recruiting new faculty, stealing other universities' faculty, restructuring underperforming departments, handling promotions. And above all: raising money!
Why would you craft all that in CSS, and then use an image to do a simple gradient? Not that I'm claiming there aren't reasons (AFAIK you can't add random dithering to the gradients to make the transition between shades less noticeable) but still - why?
A little late, but I think I fixed this. Working for me now in 17.0/Windows 7
Agreed. I just wanted to talk in general to make sure that people weren't too intimidated. I think a hobby OS is a great way to become a better programmer.

About the course: the extent to which we were guided was minimal by design. It wasn't a matter of "here's a skeleton, here are steps A, B, and C to get it working", but rather "here's an API, implement it; here are some general design ideas". I think that this is comparable to what you'd get if you sat down with a book on your own, and so I hope that it might give people a decent idea of the level of difficulty of such a project.

I emphatically agree with your point about the difficulty of a newbie + PCI situation, although a year still seems steep.
So you don't have any experience in the area, and you don't want to do any cursory research to figure out what a university administrator does, but you do want the juicy details of an "insider's apology" that confirms your suspicions (yes I know it's just an innocent question, the kind that college kids ask about CEOs) that they do nothing all day.
I do. I also recall that the venture was a failure.
That's true, but it doesn't mean we shouldn't teach math in hs. Same with programming. We need to give kids the opportunity to learn.
The bottom line: From 1993 to 2009, U.S. universities added bureaucrats 10 times faster than they added tenured faculty.

-- Makes sense.

Non-profit=The profits go out the door in "costs"
As the transit planner Jarrett Walker regularly reminds readers on his blog[1] and book of the same name, the real things that make a mass transit project effective are not about the particular technology being used to do the moving. The geometry of the network, its connections, and its schedule of service are what actually make it usable.

[1] http://www.humantransit.org
True, but I think the idea is more about trying to make computer science thought of more as a fundamental skill as math is. It's only going to be more important to know how to program as computers rule almost every subject. Pretty soon they'll stop putting "computational" in the front and it will just be an assumption.
AFAIK, it's actually significantly easier to fire administrators. My parents are both bio professors, so I've been around academia my whole life. Multiple of their friends at different schools discussed the downside of being "promoted" to a dean is that they lose their tenure. These were all private schools though.
MicroSD Adapter project for Nexus devices
Excellent video, thank you.

(SmallTalk is my favorite language that I'll never ship a product with :-/ )
Data Science - Go For MS or use the MOOCs?
From a different site, but relationship oriented: Charles Darwin's list covering the pros and cons of marriage:

http://www.brainpickings.org/index.php/2012/08/14/darwin-lis...
One suggestion. May be you should add couple of entries in your FAQ about Bitcoin and what's the value of trading in it instead of currency.
Drifting off-topic, but according to written history SJ did have strong relationships with his wife, children and friends.
i'll try it once bitcoins gets easier to use. at the moment, it's too much of a headache/hassle/mystery.
What is the definition of a "human shield" there, being in the vicinity of people who shouldn't be killed?
It is not clear at all how to make a listing after signing up.

I would create a big button that says "CREATE LISTING" like StackOverflow has for asking a question

Also, is there a way to add a category/request that one be added? There's no "Ruby" section and I was looking to post a listing.
In fairness, decade old crypto is still perfectly good, with the added benefit of being field tested. Now, if we can only get people to use it properly (as in make crypto libraries that do not require a degree in crypto to use properly).
A bouquet of options: Higgs factory ideas bloom
This is an interesting advance from a few years back in 2D line drawing routines. With 3D being all the rage, we sometimes forget that some environments still need fast 2D code that even works on old 8-bit CPUs.

The classic routine was by Bresenham. The previously fastest routine was by Wu, but his approach is complex. Compare them and see why:

http://www.edepot.com/linebresenham.html
http://www.edepot.com/linewu.html

By comparison, EFLA just uses a pair of increment values in its main loop and no branching. I don't want to spoil how it works, but the key is in how the x and y increment values are chosen and why one of them is taken from the upper 16 bits.
my adviser happens to be the dean and it seems his job focuses on budgets, plans for improvements (direction of the department), and overall being the 'face' of the department for events between businesses and alumni.
Why is this useful? I'm asking because I am a tree counting noob, vs. trying to be a dick
Sex offender in Facebook court challenge
Ernesto Sirolli: Want to help someone? Shut up and listen
Everyone knows how to read and how to do algebra problems because life requires it.
He is right though - I was really into messing with kernel development a few years ago, and despite being an experienced C/C++ developer and working on it on and off for a couple of years, nothing useful came out of it.

You really need to be extremely familiar with computer internals, have a very good grasp of the instruction set architecture of the platform you're targeting, have expert C knowledge, and at least be very comfortable programming with assembly.

And even then you're going to fail unless you're working with a large team - there's just too many parts of a modern operating system for one person to ever tackle. Even if you only want to support a single set of hardware (one graphics card, one network card, etc), you'd spend years just writing drivers for everything and by then the hardware would be long obsolete.

I'm not trying to say that he shouldn't do it - it is great for learning how computers work on a low level - but he really does need lots of experience, and should go into it with the correct expectations.