Seven Unix Commands Every Data Scientist Should Know - <AUTHOR> http://neowaylabs.github.io/programming/unix-shell-for-data-scientists/ <comment><USER2> 'sort' and 'uniq' should also be near the top of the list. And once your doing more on the command-line, 'join' and 'comm' can help you merge data from multiple files.

<comment><USER3> Amen.

I'm guessing regex's are beyond Data Scientist [0], but throw sed and vim into the mix and there are very few one off problems that can be managed by a single CPU that you can't do, and what's more do more efficiently than any other tool chain. The overhead of throwing it into a SQL database or whatever is do big, these simple tools simply blow them away is you are doing it just once.

[0] I'm guessing a "Data Scientist" is someone who knows a lot about the data and the scientific domain that created it, and to whom a computer is just a just another hammer you hit the data with. A hammer that someone deliberately made insanely and unnecessarily complex for job security, or something.

</comment></comment><comment><USER4> I'd add jq ([https://stedolan.github.io/jq/](https://stedolan.github.io/jq/)) to the list. JSON data is so common, and jq makes working with it a breeze.

<comment><USER5> And xsv for CSV data.

</comment></comment><comment><USER6> Folks may want to have a look at [https://www.gnu.org/software/datamash/manual/datamash.html](https://www.gnu.org/software/datamash/manual/datamash.html) I suppose it violates the Unix philosophy of one tool doing one thing well but it may nevertheless be useful. See also the examples page [https://www.gnu.org/software/datamash/examples/](https://www.gnu.org/software/datamash/examples/)

<comment><AUTHOR> > I suppose it violates the Unix philosophy

It is GNU (GNU Is Not Unix), it is on purpose.

Seems a nice tool.

</comment></comment><comment><USER7> I would be a little bit shocked if any of the data scientists at my day job didn't know all seven of these, so, I guess that's an accurate title.

<comment><USER8> I didn't know about shuf because it's a GNU specific utility, and not installed on my Mac by default.

Homebrew installs the GNU Core Utilities with the g- prefix, and checking now I see it's available as gshuf.

I see a couple of problems with how it's used in this essay:

      cat big_csv.csv | shuf | head -n 50 > sample_from_big_csv.csv

Since shuf's -n option is "output at most COUNT lines", there should be no need for the head:

      cat big_csv.csv | shuf -n 50 > sample_from_big_csv.csv

In principle this should be faster because there's less I/O, and it should take less memory if shuf implements the -n option using something like reservoir sampling. (EDIT: it does - [https://git.savannah.gnu.org/cgit/coreutils.git/tree/src/shu...](https://git.savannah.gnu.org/cgit/coreutils.git/tree/src/shuf.c#n175) )

Also, since shuf takes a filename, it could be:

      shuf -n 50 < big_csv.csv> sample_from_big_csv.csv

However, in terms of data science, don't most CSV files contain a header? Most of mine do, and the example 'data.csv' has the header "var_x".

Using "shuf" means there's a very high chance that the sampled CSV file either won't include the header line, or will have it somewhere other than the first line.

Doesn't that mean that most data scientists will rarely use 'shuf' for sampling from CSV files?

<comment><USER9> There is no standard for CSV per se, although experience suggests most files have it. Use head/tail as needed to preserve or avoid it in pipelines.

The GNU utils are usually the way to go; the Mac/Darwin/BSD variants have some weird quirks and usually aren't worth the bother to fight with. awk and sort are notably deficient.

Ease off the "data science" a tad--this is just scripting, a perfectly honorable pastime! Why else would GNU coreutils exist in the first place?

<comment><USER8> There is a CSV standard, RFC 4180. There are also many variants. I used products which specifically say that follow that RFC.

It's awkward to preserve a header using shuf, even with head/tail. Here's what I came up with:

      head -1 x.csv && (awk 'NR>1' x.csv | shuf -n 5)

My point is that "shuf" is GNU specific, while the author said it was a Unix tool like the other ones. Linux != Unix. Also, there are no Mac/Darwin/BSD variants of shuf.

"Ease off"? Why? The term "data scientist" appear in the title and each of the first three paragraphs, and the comment I replied to was "I would be a little bit shocked if any of the data scientists at my day job didn't know all seven of these". I want to know why data scientists who work with CSV files should be using shuf and not some more appropriate tool like csvkit.

That is, the entire topic is about scripting _as applied to data science_ , not "just scripting".

<comment><USER9> RFC 4180 is really a well-intentioned attempt to document popular ways CSV is used in the wild, but it does not set a standard. There is no such thing as CSV well-formedness in the way that exists for XML. Can a CSV field value span lines or not? How are linebreaks encoded within a field? Can backslash escape quote (or other) characters, or is the double-doublequote approach contemplated in the RFC proper? How is one to know definitively if the first line is a header or a data row? What about comments?

My beef with "data science" is that this is not science--it's even less science than political science--it's munging.

<comment><USER8> _shrug_ Sure, yes, I pointed out there are many variants. But you said there wasn't a standard when there is. You meant to say that there is no widely used consistent CSV format, I think, which is a bit different.

RFC 4180 says a CSV field can span multiple lines. Section 2.6:

> Fields containing line breaks (CRLF), double quotes, and commas should be > enclosed in double-quotes.

You asked "Can backslash escape quote (or other) characters". 4180 says "no", and that double-double quoting is used. The grammar in 2.7 is:

> escaped = DQUOTE *(TEXTDATA / COMMA / CR / LF / 2DQUOTE) DQUOTE

The RFC says that the MIME type should use header=present or header=absent to indicate if the first line is a header. "Implementors choosing not to use this parameter must make their own decisions as to whether the header line is present or absent."

I have never seen a CSV file with comments.

Note also that the Python csv module, which supports a large number of CSV dialects, also does not support comments.

While you have a beef, that doesn't change that you wanted to drag me off topic (from "data science" to "just scripting"), when my point was that that example wasn't a good data science example in the first place. It also isn't a good scripting example.

</comment></comment></comment></comment></comment></comment><comment><USER10> I cannot recommend this enough:

The Awk Programming Language - Aho, Kernighan, Weinberger

[https://ia802309.us.archive.org/25/items/pdfy- MgN0H1joIoDVoI...](https://ia802309.us.archive.org/25/items/pdfy- MgN0H1joIoDVoIC7/The_AWK_Programming_Language.pdf)

The book is amazingly well written, and is invaluable.

<comment><USER11> For a quick understanding of the power of awk :

[https://gregable.com/2010/09/why-you-should-know-just- little...](https://gregable.com/2010/09/why-you-should-know-just-little- awk.html)

<comment><USER12> great, thanks

</comment></comment></comment><comment><USER13> They left out _rm_ , used to clean up all their files when they are done so other users can work.

<comment><USER14> They also left out ls and cd, might have been considered too basic.

<comment><USER15> However they did include 'cat' and only mentioned it's most basic common use rather than its primary reason for being.

Ultimately guides like the one submitted are just one persons braindump of stuff they think might be helpful for others. It's probably best not to over think why something was added or omitted.

</comment></comment></comment><comment><USER16> [http://visidata.org/](http://visidata.org/) is a nice one for quickly getting an overview of some tabular data – you can even just stick it at the end of your pipe. If

bzcat foo.bz2|sort|uniq -c|sort -nr | awk -f munge.awk |blah

produces a tsv, then

bzcat foo.bz2|sort|uniq -c|sort -nr | awk -f munge.awk |blah|vd

makes that tsv an interactive (if you think ncurses is interactive) spreadsheet with plotting and pivot tables and mouse support :)

You can also save your keypresses in vd to a file and then re-run them at a later stage – I've got some scripts to re-run an analysis and then run vd on it and immediately set all columns to floats and open the frequency table so I can see if I managed to lower the median this time.

<comment><USER17> HOLY CRAP I've been trying to find visdata for the past year or so. Saw it once here on HN and was completely unable to find it again.

Thanks for mentioning it.

<comment><USER18> Author of VisiData here, how did you try to find it (what did you search for)? I'd like to make it easier to find but I'm not sure how.

</comment></comment></comment><comment> Anthony-G If you have a lot of files that may be processed by a `find` command and speed is important, it's worth knowing about the plus-sign variation of the `-exec` expression. The command in the original article

        find . -name setup.py -type f -exec grep -Hn boto3 {} \;

could be written as

        find . -name setup.py -type f -exec grep -Hn boto3 {} +

The difference is that the first version (the `-exec` expression is terminated with a semi-colon) forks a new process to run the `grep` command for each individual file "found" by the preceding expressions. So, if there were 50 such `setup.py` files, the `grep` command would be invoked 50 times. Some times this is desired behaviour but in this case, `grep` can accept multiple pathnames as arguments.

With the second version (expression is terminated with a plus-sign), the pathnames of the files are collected into sets so that the `grep` command is only called once for each set (similar to how the `xargs` utility works to avoid exceeding the limits on the number of arguments that can be passed to a command). This is much more efficient because only 1 `grep` child process is forked – instead of 50.

This functionality was added to the POSIX specification [1] a number of years ago and I've been using it for at least 10 year on GNU/Linux systems. I imagine it should be available on other Unix-like environments (including BSD [2]) that data scientists are likely to be using – though the last time I had to work on a friend's Mac the installed versions of the BSD utilities were quite old.

[1]: [http://pubs.opengroup.org/onlinepubs/9699919799/](http://pubs.opengroup.org/onlinepubs/9699919799/)

[2]: [https://man.openbsd.org/find.1](https://man.openbsd.org/find.1)

</comment><comment><USER19> I have an example based tutorial for all these commands plus other cli text processing commands

[https://github.com/learnbyexample/Command-line-text- processi...](https://github.com/learnbyexample/Command-line-text-processing)

</comment><comment><USER20> Problem: Given a CSV file, we want to know the number of columns just by analyzing its header.

       $ head -n 1 data.csv | awk -F ',' '{print NF}'

Or spare a process:

        awk -F ',' 'NR <= 1 {print NF; quit}' data.csv

One of numerous weak points to this article.

</comment><comment><USER21> > Prints on the screen (or to the standard output) the contents of files. > Simple like that.

While it's not exactly false, it's also not a good explanation for cat. If you just want to operate on the contents of a single file, you should use redirection. The cat utility is for concatenating files.

</comment><comment><USER22> tldr: grep, cat, find, head / tail, wc, awk, shuf with bonuses of xargs, and man.

I've never needed shuf, and awk is a bit out of place in the list, but head and tail have saved me from many a large file. The interesting data is usually in head, tail, or grep anyway.

<comment><USER23> awk '{print $2,$4;}' is useful and easy to remember. $NF refers to the last field. FS is the variable to override the default field separator of white space. Here's an example of it's use. OFS is the output field separator.

awk 'BEGIN{FS=":"; OFS=":"} {print $1,$NF}' /etc/password

Works on CSV files too with the right field separator.

<comment><USER24> > awk '{print $2,$4;}' is useful and easy to remember. $NF refers to the last > field. FS is the variable to override the default field separator of white > space. Here's an example of it's use. OFS is the output field separator.

Yeah also cut is just inconvenient, awk works much better when working with the usual tabulated data.

> Works on CSV files too with the right field separator.

You're probably better off using xsv though.

</comment></comment></comment><comment><USER14> Is there a real advantage to using awk over python for most tasks? Or is just a little faster/more convenient if you already know it?

<comment><USER19> if you need a cli tool, then awk clearly wins as python isn't suited in a cli pipeline

speed is a factor too, if you consider combining with other cli features, for example [https://adamdrake.com/command-line-tools-can- be-235x-faster-...](https://adamdrake.com/command-line-tools-can- be-235x-faster-than-your-hadoop-cluster.html)

</comment></comment><comment><USER25> Is "data science" so undeveloped that pipes and grep need to be on an everyone-should-know list?

<comment><USER26> There is a lot of low-hanging fruit available in teaching people from research backgrounds about what we would consider baseline computer use and software development practices. It turns out there is a large population of brilliant people who can accomplish things in Python that I can barely comprehend in abstract, much less line for line, who have also never heard of Git, unit testing, or modularity.

<comment><USER25> I guess I was under the impression that the label indicated some level of expertise in the basic tools of the trade that would differentiate it from statistics or applied math.

Of course there is nothing wrong with specialization or lacking experience when it is not particularly relevant to your chosen field, but something like 'grep' would seem to be the bread and butter of data science.

<comment><USER26> That would be R, Pandas, SQL, etc.

</comment></comment></comment></comment><comment><USER27> Any book recommendations to understand and master the use of UNIX commands?

<comment><USER20> System man pages.

 _UNIX Power Tools_ , Peek, et al, is somewhat aged, but excellent.

 _The UNIX Programming Environment_ is even older, but highlights basic philosophy.

For more recent tools, StackExchange Linux and shell topics can be illuminating.

<comment><USER11> The Unix Programming Environment was eye opening for me!

</comment></comment></comment><comment><USER28> Let's not forget cut for dealing with csv.

<comment><USER29> They described how to use awk like cut.

</comment></comment><comment><USER30> s/Data Scientist/Unix User/

<comment><USER31> Hey, sed is not even on the list</comment></comment>


Ask HN: How do you learn from mistake after you note it down? - <AUTHOR> I have a diary. When I make a mistake in life or at work, I note down what happened and what I should have done. I have been doing this for years.
But I found 2 things: 1. I do not regularly re-visit these notes. Even I added some reminder to myself, when it pops, I just click it off. It seems, writing things down is more of taking care of my emotion.
2. I make same mistakes again and again. Exactly same? hardly; but I do not see much improvement.
Most of the areas are about communication and interaction with others.
Any tip? <comment><USER2> For each mistake, you need to define a solution that you can use beforehand so that you don't have to think of a solution when you are faced with a difficult situation. You need to condense the mistakes into as few words as possible and broaden each problem so that it's not specific to one situation. Keep a list of the mistakes you make. Pick one or two and define a solution when you encounter yourself in the same situation. Review it every day and act on it. Once you feel satisfied with the results move on to the next. You can't fix all of them at the same time but you can work on a few at a time. There are no quick answers. It's a matter of work and time.

Also, see if you can come up with a simple rule that will always help you. Such as: Excessive Debt is a problem. To fix it, always make sure that you have enough money to pay for what you want, in cash.</comment>


A list of resource for Covid-19 - <AUTHOR> http://jooseph.com.s3-website-us-east-1.amazonaws.com/modules/61 <comment><AUTHOR> Hello everyone,

I Just gathered list of resources for Covid-19, I hope it helps. I'll update resources each week. Stay safe, flatten the curve</comment>


Intel to Cut 12,000 Jobs, Forecast Misses Amid PC Blight - <AUTHOR> http://www.bloomberg.com/news/articles/2016-04-19/intel-to-cutting-up-to-12-000-jobs-or-11-of-employees <comment> tma-1 So Intel is cutting 11% of its workforce, Goldman Sachs just reported a 56% drop in profits, Morgan Stanley had a 50% drop in profits, Netflix missed subscriber growth estimates etc... yet, the Dow just hit a 9-Month high, and the S&P500 is now above 2100.

The whole market is overvalued, not just the tech unicorns.

<comment><USER2> I don't see why job losses are a bad thing. The last generation of machines was built so well that people don't need new ones. Good! This should be a great thing.

Valuing growth over sustainability makes these backwards ass goals of hiring more, building more and growing. The way this is spun is pretty horrible.

Amazon and Wal-mart losing is a good thing for the environment and society as a whole.

You yell, "But people lose their jobs..." There are more jobs, plus why does everyone need a job anyway? Can people in Silicon Valley not make $150 ~ $250k a year, everyone else get a minimum income and we work together to make better art, smaller factories and a world that will last much longer by recycling and rebuilding and not needing to buy an endless supply of shit?!

"Ending is better than mending. The more stitches, the less riches." -Brave New World, Huxley.

<comment><USER3> > You yell, "But people lose their jobs..." There are more jobs, plus why does > everyone need a job anyway?

This is kind of silly. Job losses are a bad thing precisely _because_ we don't yet live in a world where you can get by on a guaranteed minimum income without a job.

If you think it's worthwhile to push society in that direction, then great, but don't kid yourself that believing in it is the same as having already accomplished it.

<comment><USER4> Some european countries have already achieved this; your unemployment benefits after getting fired are a significant fraction of your previous salary, and slowly ramp down. You pay for it in taxes (and then some), but at least you know you can still make rent if you get canned.

<comment><USER5> You also pay for a bureaucracy to perform administration and fight abuse. That consumes a fraction of the system's resources. It's hard to argue that this adds much value, or any.

What this system boils down to is a compulsory savings scheme. So an alternative would be a voluntary savings scheme, which would have higher efficiency by not consuming resources for administration.

<comment><USER6> Of course the obvious downside to a voluntary savings plan is that it isn't effective at actually creating savings. We know this, because in the United States, we don't have compulsory savings plans, and thus have a voluntary system. So how's that working out? Not well. Approximately half of all Americans save 5% or less of their income[0], which isn't enough for emergency situations. Another study in 2013[1] said 27% had no savings at all. Now the main reason for this is quite simple. A lot people don't make enough to have anything so save.

[0] [http://money.cnn.com/2015/03/30/pf/income-saving- habits/](http://money.cnn.com/2015/03/30/pf/income-saving-habits/) [1] [http://money.cnn.com/2013/06/24/pf/emergency- savings/](http://money.cnn.com/2013/06/24/pf/emergency-savings/)

</comment></comment></comment></comment></comment></comment><comment><USER7> This is what the end of Moore's Law looks like.

* Tick-tock is dead.

* 10 nm is severely delayed.

* EUV is severely delayed.

* Significant layoffs in R&D

* The ITRS roadmap is vaguer than it's ever been.

* Giant mergers are up (Intel+Altera, KLA+Lam, etc.), concentrating the industry more than ever.

* And ultimately: A 5-year-old PC still works just fine.

When I say this is the end of Moore's Law, I'm not trying to be dogmatic. Of course there will still be a semiconductor industry and of course there will still be amazing technological progress. But it seems the rate of that progress is slowing, and now the industry is adjusting.

<comment><USER8> Interesting point. If we are witnessing the end, would we recognize it at the time? Moore's Law has been something we've become accustomed to, so it almost seems hard to believe that it will end even if we are told that it will.

Makes me wonder what research money will be spent on instead of just faster chips.

<comment><USER9> Worst case scenario: nothing. The R&D goes away. Look at aerospace for a nightmare scenario.

In the early 20th century we got fixed wing flight.

In the teens and 20s we got motorized fighters and the first passenger planes.

In the 40s we got jets.

In the 50s we broke the sound barrier and orbited Sputnik.

In the 60s we landed on the Moon.

In the 70s we... stopped going to the Moon.

In the 80s nothing much happened except declassification of a few things (stealth) that were developed in the 60s and 70s.

In the 2000s we grounded the Concorde. Passenger flight got _slower_ and _more expensive_.

In 2016 we fly on passenger planes no faster than what we used in the 70s and 80s, and we're stuck in low Earth orbit.

1969 was the peak of the aerospace industry. With the exception of SpaceX (which is really just picking up where NASA left off), we are _less advanced_ today than we were in the 1960s.

There's many places we _could_ go beyond conventional Moore's Law: multi- dimensional chips, optical, quantum, exotic materials with very low power consumption, etc. But if what we have is "good enough" and there is little demand for anything faster, the R&D dollars won't be spent. If anything the shift toward mobile computing and wimpy thin client endpoint devices might actually lead to a pull-back and loss of capability similar to the one we saw in aerospace after the 70s.

The consolidation we are seeing is not a good sign. This is what happens when an industry decides it's now a cash cow and it's time to go out to pasture.

We also _could_ have a base on the Moon and Mars right now and be working on our first interstellar probe to Alpha Centauri. Physics didn't stop us. Economics and politics did.

<comment><USER10> That's not entirely wrong but you're ignoring the massive price difference for air-travel between the 60s and "slower" 2016.

The price drop in air-travel can be attributed to: 1\. Technology. Cheaper (per seat), more efficient planes. 2\. Consolidation of airlines (and airplane manufacturers). 3\. The disruption of full-service airlines by low-cost carriers.

In semi-conductors we have been getting along with 1 and a bit of 2. I would say that the disruption of Intel by ARM is an example of 3 because intel is not incentivized to compete at those low price points.

<comment><USER11> _3\. The disruption of full-service airlines by low-cost carriers._

In the US at least, this was due to political deregulation. The process was started by Nixon, but finished in law by Jimmy Carter (!), note also the leading lights of the Democratic party in the signing picture, e.g. Teddy Kennedy 2nd from right: [https://en.wikipedia.org/wiki/Airline_Deregulation_Act](https://en.wikipedia.org/wiki/Airline_Deregulation_Act)

</comment></comment></comment></comment></comment><comment><USER12> One must understand that this is re-structuring. Intel is probably letting go of some divisions it no longer intends to pursue. In the not-so-distant past, Microsoft did an internal re-structuring when Satya Nadella became the CEO. It isn't as bad as it is portrayed to be as most people end up getting re-hired in other groups or take the severance and join a new company.

<comment><USER13> News like this out of the blue is strange. I was pretty sure that the post-PC era was a sham. It still is, right?

<comment><USER14> How much of your time is now on a mobile that used to be on a desktop? Their core business is drying up.

<comment><USER15> Am I the only person for whom the answer to this question is "almost none?"

I'm serious: about 80% of my day is meeting with real people in the real world. Mobile phones haven't changed that.

The other 20% of my day is sitting at my desk creating original work product (mathematical models and thoughtful memoranda) or reviewing the work product of others. Mobile phones haven't changed that, either.

No doubt the drought in PC sales is real and permanent. But I wonder how much of that is because people just don't need to keep their laptops up to date in the age of great cloud services.

<comment><USER16> Yeah, mobile hasn't figured out a good way to take over the workspace. Some of the tablet/laptop hybrids are getting closer.

As for entertainment though, are you watching Youtube extensively on your desktop?

<comment><USER17> I know this sounds crazy, but there are still some people who have cable subscriptions and watch TV on a TV. Oh the horror!

<comment><USER18> Those TVs are now 'smart' along with cable boxes and other peripherals. Is Intel Inside any of those?

</comment></comment></comment></comment></comment></comment></comment><comment><USER19> I'm not sure how much of an effect this would have, but from a consumer's point of view, there isn't as much of a reason to buy a new PC every few years anymore. The laptop I'm using right now was purchased in 2011, and the prices in stores now are very comparable to what I paid back then. I've made up my mind to buy a new one a few times, but then when I go to the store, it just isn't worth it.

<comment> mark-r Moore's law may become irrelevant long before it becomes invalid. Without rapid increases in usable computing power, the reasons for upgrading have largely disappeared. In particular the chips at the top of the profit margin curve, where Intel loves to play, are much less compelling.

Intel might eventually find itself in the same shoes Kodak did - when your primary business dries up, there's unlikely to be a follow-on that is successful enough to keep the company going.

<comment><USER20> I'm not convinced that moores law has ended (using the processing power doubles not transistor count doubles).

We've hit the physical limits of our current processes but we haven't remotely hit the physical limits of..well physics.

It's possible that we are on the flat before the next curve starts whether that curve will reach the consumer space I don't know but at the top end of computing (supercomputers) there is still massive demand for more processing power.

<comment><USER21> What makes you think we haven't started to hit physical limits of physics? A 4nm transistor is 7 atoms wide. Obviously, a one atom transistor is pretty much the absolute smallest possible, which would be about .5nm. Anything less than 7nm experiences quantum tunneling, which is going to really mess things up, and will get worse the smaller the size. [1] I imagine the interference between transistors will be fun...

Next, how exactly are you going to make these atom-sized objects in quantity? You can't be manually placing atoms. But lithography has a hard physical diffraction limit, forcing the use of higher frequency light. The higher the frequency, the greater the energy. Etching single-atom features will require hard x-rays, which we may not even have technology to generate. Even if we do, focusing x-rays is not trivial, as you can't just slap in a glass lens. Plus, the focal lengths may be rather long. And what kind of photoresist do you use? Hard x-rays are likely to blast pretty much anything, and the etching characteristics are probably not neat little troughs. How do you ensure you have your one atom stay put when everything around it is being blasted by high-energy x-rays?

I think the physical limits are looming pretty large.

[1] [https://en.m.wikipedia.org/wiki/5_nanometer](https://en.m.wikipedia.org/wiki/5_nanometer)

<comment><USER20> Maybe but (and I could be way off I'm a programmer not a physicist) those limits are pretty much the limits on our current technology, it's a bit like saying "well we've reached the point of diminishing returns with this steam engine, that's it no more progress" and over in a shed somewhere else someone is inventing the AC electric motor.

I'm optimistic because I've seen "end of progress" reports on computing power since I was a kid in the 80's.

We are long way away from this [https://en.wikipedia.org/wiki/Bremermann's_limit](https://en.wikipedia.org/wiki/Bremermann's_limit)

We've known for ages that Germanium and similar offer better characteristics than Silicon but the cost to improve silicon has stayed below the cost to retool for Germanium til now, if we do hit the limit at 5nm silicon then the cost equation changes and alternate materials become worth the investment.

<comment><USER22> They already use germanium in their manufacturing processes. It's not all germanium because there are challenges that would create. There are also benefits to mixing a different sized atoms into the same lattice to affect the speed in which the electrons travel so modern manufacturing often implants germanium atoms into the silicon lattices. I do agree that material improvements can change everything so the often spouted doom and gloom of stagnation is often unfounded.

</comment></comment></comment></comment></comment></comment><comment><USER23> A good friend was laid off from Intel during their last round of layoffs. Without going to into details that would identify my friend, he was laid off after losing a game of internal politics. His division's vice president even apologized to him for his layoff.

My friend's story gave me the impression of Intel being a highly dysfunctional company. My friend was sad to leave Intel, but I think it was good for him in the long run.

For those about to be laid off from Intel, I hope it also works out for you.

<comment><USER24> Are there companies with >100,000 employees who are not highly dysfunctional?

<comment><USER25> Number of employees as a metric for dysfunction? Why not number of court injunctions? Number of union strikes?

I mean, if we're getting serious, we could write a dysfunction function, D = dysfunctional points:

      D = (points for threat posed by dysfunctional government)
        + 4*(points for direct environmental harm done by company)
        + 2*(points for environmental harm caused by subcontractors)
        + (points for each lobbying dollar spent)
        + 2*(points for frivolous or non-FRAND patent lawsuits)
        + 10*(points for fighting against a free and open internet)
        + (points for trying to track users / violate privacy)
        + 10*(points for getting hacked, releasing user's private data)

etc.

</comment></comment></comment><comment><USER26> There's an irrational belief system at hardware companies about Windows that clouds their logic and leads to a sense of separation anxiety. Intel lost the opportunity to get a lead in mobile because they viewed the Linux/UNIX client device category as a side business rather than making it their core platform. They continued to invest substantial resources in supporting Windows 8 and Windows 10 despite the obvious reality that Windows is a dead-end platform with no growth prospects. It isn't just Intel but even nVidia/AMD lost the mobile space for this same reason, too much Windows not enough Linux/UNIX.

The Windows ecosystem has become corrosive to any industry or company it touches. We now see the end results of supporting a closed-source legacy platform is 12,000 jobs at Intel due to the lack of excitement and innovation in the PC space. Perhaps Linux will revive the PC market but in the meantime Intel and their peers at nVidia/AMD have done little to make that a reality in the mainstream sense.

<comment><USER27> Every single thing you said is complete hogwash and you have provided zero evidence to backup any of your poorly formed opinions.

To begin with, Intel didn't lose an opportunity to get a lead in mobile because of their views on Linux/UNIX. None of the players today have a "lead" in mobile because of Unix. They have a lead because of the touch-based front- end. It wouldn't have mattered what that was running on.

Furthermore, Windows is responsible for _creating_ numerous multi-billion dollar industries and Windows obviously holds a ton of value for businesses that Linux can't even compete with. That's why just about every business runs Windows and not Linux.

The willfully obliviousness of nix fanboys like you is boring.

<comment><USER28> > _Every single thing you said is complete hogwash [...] obliviousness of nix > fanboys like you_

This comment violates the HN guidelines egregiously. We ban accounts that do this, so please don't do it again.

Proper use of this site means commenting civilly and substantively, or not at all. Please read the rules and follow them:

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

[https://news.ycombinator.com/newswelcome.html](https://news.ycombinator.com/newswelcome.html)

</comment></comment></comment><comment><USER29> H1B use is up, though.

[http://dailycaller.com/2016/04/19/intel-lays- off-12000-peopl...](http://dailycaller.com/2016/04/19/intel-lays- off-12000-people-after-lobbying-for-more-foreign-workers/)

<comment><USER30> Last I checked they were the #1 sponsor for EEs/Computer Engineers. It's appalling that Congress looks the other way when abuse is clearly evident.

<comment><USER31> When you pay the exact amount of money and benefits and sometimes even more as joining bonus and stocks awards for a H1B employee, how can this be an abuse of the system?

<comment><USER32> The argument "we can't fill all these open positions, please let us bring in foreign workers" then firing 10,000 people contradicts why they want the government to deregulate the system.

<comment><USER33> No, it just means none of the 10k people were qualified enough. They were not fit for the open positions. Otherwise there is no sense in hiring an H1B with the same salary plus all the H1B related fees and expenses.

<comment><USER34> > Otherwise there is no sense in hiring an H1B with the same salary plus all > the H1B related fees and expenses

I am sure some employers will perceive them as more compliant employees, given their visa status depends on their continued employment.

<comment><USER35> If you're looking for compliant employees, why go through the trouble of hiring an h1b employee, bringing them from a different country and paying all the fees associated with processing visas and probably a green card process, and paying them the same or higher (usually, the outsourcing body shops are generally the places that play below market for h1b) ... if you can just find and American to do the same thing?

Hell when you get rid of an h1b worker there are even costs associated with revoking their visa and possibly paying for their flight back!

<comment><USER36> > If you're looking for compliant employees, why go through the trouble of > hiring an h1b employee, bringing them from a different country and paying > all the fees associated with processing visas and probably a green card > process, and paying them the same or higher (usually, the outsourcing body > shops are generally the places that play below market for h1b) ... if you > can just find and American to do the same thing?

The argument is that you can't, because American workers know their rights - rights that every employee should have and stand on, but sadly those from other countries don't always know about.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER37> Holy bloodbath..

From CNBC:

> _Shares of Intel were halted after the bell Tuesday as Intel announced it > would cut 12,000 jobs, or 11 percent of its workforce_

> _The technology company also said the CFO would step down_

<comment><USER38> From CNBC: "The technology company also said the chief financial officer Stacy Smith would leave that role to lead sales."

<comment><USER39> Hmmm...CFO heading up sales is not something you see every day...

Anyone have any further context around this?

<comment><USER40> Lateral moves, even downward ones, are part of the corporate culture at Intel. At most large companies this type of job switching at the C-level would come as a surprise, but if you read some of the stuff Andy Grove and others have written about Intel's "matrix" practices, it's not too shocking.

Basically, they believe that experience across multiple areas of the business is a good thing, and that no one should become too attached to a particular position or title.

</comment></comment></comment></comment><comment><USER41> Intel ranks #14 in H1B use and was a large proponent of the bill to increase the allowance foreign tech workers.

So I'm assuming their inability to find 'talent' is no longer an issue? Same as Microsoft, IBM, and the numerous other big corps that have had massive layoffs recently, while also claiming an inability to find enough US tech workers?

<comment><USER42> You're assuming that the 11% is coming from roles that are so hard to hire for it becomes more economical to look overseas for the talent--is that true?

In other words, I think it's just worth pointing out that Intel's a huge company and it might be that these layoffs are coming from roles where market demand is lower.

<comment><USER43> I think this is spot on. A lot of companies I know that are doing layoffs are entirely hands-off developers, except maybe the occasional breaking off with a contracting company.

</comment></comment></comment><comment><USER44> For years Intel got to ride the rocketship of routine chip-density doubling. For years the new chips were so much superior to the old ones that it paid to replace them and the machines into which they were built.

Now, not so much. I can put a SSD and more RAM in my eight-year-old laptop and make it work just about as well as a new one.

I can switch off the old HP DL380/G5 boxes in my colo, hand them over to the steel recycling guy, move the data to some cloud service, and come out ahead electricity bill vs. cloud bill. I'm not buying many processor chips anymore. Neither is anybody else, except maybe the cloud services. And their bargaining power makes Dell and HP look like the guys in the white-box computer shop down the street.

The processor chip rocket ship has entered orbit; its occupants are now in microgravity. Some other rocket ship will be the next big ride.

It's too bad those folks are out of work. It's too bad plutocrats always behave as if les bontemps rouleront toujours.

<comment><USER45> > I can put a SSD and more RAM in my eight-year-old laptop and make it work > just about as well as a new one.

I did exactly that with an old i3 based all-in-one Sony Vaio PC my dad handed down to me. It previously had a 3.5" 5400rpm spinner and 4GB of RAM and would take a month of Sundays to boot. I installed a 250GB SSD and another 4GB of RAM and it totally transformed the machine. All it cost was GBP62.00 (I got an amazing Black Friday deal on both SSD and memory). Hell, the thing can even run Visual Studio 2015 and a couple of CentOS VM's on Virtual Box and still feel quite responsive.

</comment></comment><comment><USER46> Didn't they spend 300 millions on a diversity initiative recently to hire women and minorities ? who are they firing now ?

[http://fortune.com/2015/01/12/intel- diversity/](http://fortune.com/2015/01/12/intel-diversity/)

</comment><comment><USER47> Does anyone working within Intel know the reasoning ?

It seems skylake is doing really well.

Is it mostly electrical engineers working on the processors or sales and marketing people ?

<comment><USER48> I hope it's the hardware side of the company waking up that the software and "solutions" side of the company is a gangrenous fifth limb.

Things like trying to start an app store when they didn't have content (e.g. Steam) or a platform (Google, Apple, Microsoft), trying to pivot that abomination into a media store after Netflix already won and the studios are all trying to start their own, trying for way too long to deliver solutions of putting parts in verticals (e.g. tablets, micros) where they are at best only competitive on one of price, power, or performance and immediately face- planting, but limping along seemingly oblivious to why any of these projects fail.

The mention of IoT though makes me think this isn't the case. Definitely part of the brain-dead trendy "solutions" thinking. I don't think you're going to compete with commodity cheap micros with the best IP or the best process size... price is king.

There are too many layers at Intel, and that leaves too many of those layers too well insulated, able to believe it was the brand that won them their markets (not the economics: Wintel monopoly in personal computing history, having the best server and laptop parts currently), and that despite the economics of new products and "solutions", the brand will somehow convince people to buy in.

Like, why do I ever see you on Television, Intel? Who is the audience for these ads, potential investors? Shouldn't they rather see higher dividends? People don't go to the mall and buy Intel chips, they go buy Macbooks and they use Instagram. Facebook and Apple buy your chips at a scale where it's all ROI, and you deliver that, so what are the ads for?

This shit is why I left, and why always did the quicksale on the stock purchase plan.

Intel needs to just keep making the best parts and leave it to the market to conjure up asinine things to do with them. Kill all the product lines where there's no road to being #1 ROI within 10 years, keep those in the lab.

<comment><USER49> I'd still like to know whose idea it was to try and compete in the Internet of Things market by pitting a buggy warmed-over 486 (the Quark) against ARM's best, most modern chip designs. Sure, Intel got a bunch of headlines in the tech press about their new IoT solution, but the technical details just didn't add up. The performance and power figures were dire, it couldn't run existing x86 code, it looked like a bear to integrate into anything, it just made no sense.

<comment><USER50> Intel's latest Quark has gotten to 1.5ua sleep current with sram retention. That's not the best ,but that's good enough for many applications. And it's using 22nm so it may be the cost leader, by far. And that's mostly what counts in embedded.

</comment></comment></comment></comment><comment><USER51> What Intel needs is some reason for people to do compute intensive tasks on their computers. Today games are probably the only popular type of app that requires abundant CPU power, for most other popular activities CPU usage is low which doesn't motivate to upgrade hardware. Maybe VR can change this?

<comment><USER52> Games have been GPU-bound for years and years. Even in 2011 when it came out, Skyrim used (at most) 30-40% of CPU power. Fallout 4 (updated version of the same engine) uses proportionally far _less_.

In short, no, gamers aren't buying new CPUs every 18 months like they used to, either. GPUs, maybe, but Intel's weak in the gaming GPU space.

</comment></comment><comment><USER53> Large enterprise companies like this can lay off 10% anytime they want with little effect on output -- there are oodles of people slacking in big corporations basically not doing much of anything except collecting a paycheck.

<comment><USER23> And do you think these same companies are just as efficient as identifying who's slacking off? I don't think so.

They may know that 10% of the company is slacking off, but they often end up amputating a hand when they meant to just trim the fingernails.

<comment><USER54> A cynical manager who knows his employer periodically clears out 10% dead weight would keep some dead weight around, so they could deliver the cut without losing the guys they need.

</comment></comment></comment><comment><USER55> > "It's acknowledging the reality that it's a single-digit growth world,"

Oh, the horror.

</comment><comment><USER56> I wonder if this is related at all to the Altera acquisition, and how many of those employees will be affected. Intel had to give up a lot of cash, and take on quite a few redundant employees…

<comment><USER46> Didn't they acquire McAfee too ? How did it ever make sense for an hardware company ?

<comment><USER57> Since when did Acquiring McAfee ever make sense for anybody?

<comment><USER58> it makes sense for McAfee shareholders...

</comment></comment></comment></comment><comment><USER59> \- Cuts outlook: sees revenue up mid-single digits, down from prior outlook of mid- to high-single digits

\- Also cuts full year margin guidance, sees 62% down from 63% before

\- Generated $4 BN in cash from operations, of which it spent $1.2 BN on dividends, $793MM for buybacks and saved the rest for severance

\- Notable difference in GAAP vs non-GAAP: GAAP Net Income: $2.046BN (missing expectations), non-GAAP Net Income: $2.629BN

</comment><comment><USER60> Am I the only one with a sinking, gut instinct, that this is indicative of a deeper problem in the economy? It feels like a crash is lurking... Maybe I'm just paranoid?

<comment><USER61> interest at zero means that you are stepping on the gas pedal and the car is hardly moving, so of curse a crash is coming, a big one

<comment> UK-AL It's been like that since the last crash.

</comment></comment></comment><comment><USER62> If they're cutting entire divisions, there will be a great mix of strong performers in there -- great for other companies who are hiring.

I'd always love to talk to Intel people from the hardware security projects (SGX, etc.).

</comment><comment><USER63> I really hope this is not going to affect their already ever lagging release schedule. If I'm not getting Kaby Lake Q3 this year as promised I will be severely disappointed.

<comment><USER64> Kaby Lake in itself is already a disappointment. Intel must have _lots_ of problems with 10nm production if they're willing to slip a full product generation.

<comment><USER63> I wouldn't call it a disappointment. It will add native USB 3.1 (Type-C) support which is major thing for me, considering that USB Type-C is projected to become the most popular socket in the history of humanity. Also: support of Intel Optane ([https://en.wikipedia.org/wiki/3D_XPoint](https://en.wikipedia.org/wiki/3D_XPoint)), Thunderbolt 3, HEVC, etc ([https://en.wikipedia.org/wiki/Kaby_Lake](https://en.wikipedia.org/wiki/Kaby_Lake)).

<comment><USER65> I thought type C was just a connector. How is this supported or (not supported) by the SoC? There are USB 2.0 devices with a type C connector. This is more confusing than it should be for me...

<comment><USER66> Skylake supports all these, but needs a a seperated chip on the motherboard. With Kaby Lake it'll be built in to the chip. That should hopefully mean these connections aren't just restricted to high end laptops.

</comment></comment></comment></comment></comment><comment><USER67> Intel's IT department is so big it was for me to believe it. On the other hand I am pretty amazed that they were so serious about keeping internal application communication encrypted end to end, in every layer.

<comment><USER68> They're likely a very juicy target for economic espionage.

</comment></comment><comment><USER69> Hope some of those folks are chip designers and they decide to go work on the RISC-V/lowRISC projects.

</comment><comment><USER70> Maybe it's time to innovate a bit? I have 0 reasons to upgrade my 6 year old MAC Pro, I would need to spend 5K to get a mild performance boost.

<comment><USER71> I agree but that's a bad example. Macs are notoriously expensive for the performance they deliver.

<comment><USER70> That's a stereotype from a time long gone. The difference in price between Mac Pro and identically configured dell workstation is minimal. On the low end yes there is price difference. On mid tier iMac 27" 5k costs about the same as dell 5K monitor without the computer (they use identical LCD).

</comment></comment></comment><comment><USER72> I bet VR will lead to more PC sales in the coming years.

<comment><USER73> There's this thing called the stock market where bets like this are quite common. If you're certain, now is the time... :)

</comment></comment><comment><USER74> > The company said it's shifting focus to higher-growth areas, such as chips > for data center machines and connected devices.

Where have I heard this before? I think in a little book called the "Innovator's Dilemma". Can anyone predict what happens next?

I wonder if Intel will try to push Atom into "Core i3" and make _single-core_ Core i7's next to "increase profitability". They've already started making dual-core Core i7s - I mean how ridiculous is _that_ idea?! Isn't a dual core Core i7 supposed to be a Core i5? Do their brands still mean anything anymore?

</comment><comment><USER75> Intel is in a very cyclical industry. They over hire when the economy is doing very well, and they cut when things are not. I got a pink slip from Intel back in 2001 just after I graduated college when the dotcom bust happened.

</comment><comment><USER76> "Robots will soon begin taking human jobs in places like retail stores, fast food restaurants, construction sites and transportation. The key technology that will fuel the transition is inexpensive computer vision systems, and the number of human jobs at risk numbers in the tens of millions. More than half of the jobs in the United States could be eliminated."

[http://www.amazon.es/Manna-Visions-Humanitys-Future- English-...](http://www.amazon.es/Manna-Visions-Humanitys-Future-English- ebook/dp/B007HQH67U)

</comment><comment><USER77> Makes sense. My 5 year old laptop has a i7-2820QM, 8 vcpus, is plenty fast for the stuff I do, 4600 bogomips, 45W. My recent upgrade was a NUC with a Pentium N3700, 4 real cores, 3200 bogomips, 4W. Pretty impressive.

</comment><comment><USER78> I think if there's any time Apple would switch to their own ARM designed chips for Macs, it's now. This along with Intel slowing down from their Tick-Tock schedule will probably do it.

<comment><USER79> Why? The POWER->x86 jump was made largely because of the need to have more performance from the chips (raw power) and better performance per watt (for laptops). Intel wooed Apple on what they had available at the time as well as the impressive roadmap of where the they going. I often get 10 hours of battery life on my Macbook pro, so they did something right!

I totally think Apple will go to ARM, but I can't see Apple doing shift until OS X is getting similar performance on ARM over x86. When Job introduced the x86 switch, he said they had had an internal version of OS X running x86 since day 1. I'm sure they have a version on ARM as well right now, and are just waiting for them to get "good enough". Apple's marketing on recent iOS devices has been also very interesting. Lots of use of the phrase "Desktop Class". Also, the GeekBench scores, and AnandTech teardowns support the hype: Apple's ARM chips truly are best-in-class and rapidly approaching mainstream x86 performance.

<comment><USER78> I think it's obvious why and you've stated part of it. Apple's designs are rapidly approaching the level of Intel's and Intel is stretching out their R&D and reducing their investment in this area. So Apple will be asking themselves, why give away all that margin to Intel when we can do it ourselves and keep it? (Intel's gross margin is 62%, no idea what it is for their consumer processors specifically).

<comment><USER79> I misunderstood you then. I read you post as "Intel in financial trouble? This will make Apple leave them"

</comment></comment></comment></comment><comment><USER80> While there are obvious market valuation issues at play, I think this signals more about Intel and it's future strategy. The layoffs come shortly after their $16.7 billion acquisition of Altera was completed.

Intel really missed out on mobile and with PC sales rapidly declining it looks like they are going to refocus on enterprise and data centers. ARM and NVIDIA/GPU computing are also expanding rapidly in those areas and that will pose a major threat to Intel.

</comment><comment><USER81> I wonder how CEOs feel about their bottom line when they're off by such a big percentage in the workforce they need.

Couldn't they have predicted this sooner?

</comment><comment><USER82> As you read these comments, I'll repeat mine from an earlier post: Don't come to HN for legal, medical, or economic advice!

</comment><comment><USER83> Being in hardware is getting harder and harder.

Increasingly the footprint of hardware is becoming sparser, replaced by software, etc.

It is time to make the push to make hardware open source mainstream from the point power hops on to where software picks up.

There are many, many really good reasons to do this, but in the end, to me, it will define how free the world is.

</comment><comment><USER84> This will have a pretty bad effect on the company's morale. Depending on how long this layoff occurs for (1 month vs 1 year), everyone will feel extremely uneasy going into work knowing today's possibly the last day.

</comment><comment><USER85> Wondering if Intel is moving out of some markets completely - mobile chips (phones / tablets) is the one market that comes to my mind. The margins on those are almost non existent currently (on the low / medium end).

</comment><comment><USER86> How competitive is Intel in mobile chips these days, have they been improving?

<comment><USER87> I think the trouble with application processors is you ought to have lower prices and margins compared to desktops and servers, so even if they do great there it's not that great financially. Intel is a relatively high margin business so it either needs to find markets where that works, or grow volume very drastically, which is hard given their already very high volumes, or shrink.

</comment></comment><comment><USER30> Guess they should have kept going with StrongARM/XScale. They could've had a mature, trusted product line by now.

</comment><comment><USER88> Unlike Capitalism, Globalization is Zero-sum

</comment><comment><USER89> Almost exactly decimation.

<comment><USER90> Closer to nonation, technically, but decimation is the word everyone already knows.

<comment><USER91> "decimation" is also the word with meaning. "nonation" is just turning "nineth" into a verb and then somewhat of a gerund, like "ninething". Without the historical context, it has little meaning.

<comment><USER90> Yet that is exactly the pattern used by decimation.

      decimus (tenth) + -ate (convert to verb) = decimate
      decimus (tenth) + -ation (resulting state of -ate form) = decimation

It could be used with any Latin-rooted ordinal number. Primate, secundate, tertiate, quartate, quintate, sextate, septimate, octavate, nonate, decimate, undecimate, dodecimate.

Primate, secundate, tertiate, and octavate have meanings other than either "reduce by 1/Nth" or "reduce to 1/Nth". Tertiate is actually roughly equivalent to "threepeat". Those words have about as much inherent meaning as "tenthing", but some had meanings extrapolated from "decimate" as early as 200 years ago. The "reduce to 1/Nth" meanings would be more accurately encapsulated with the "an-" (to) prefix, as in "annihilate": literally "to nothing (verb)". That would give you antertiate, anquartate, anquintate, et cetera for the reciprocal-valued words.

As I said, "decimate" is the most well-known of the bunch. "Annihilate" is also well known. But every last one of them is a perfectly acceptable English combination of Latin roots, and should be understood easily enough.

<comment><USER91> > should be understood easily enough

I think you'll find you have an easier time communicating if you stick to terms that people have heard before, even if they're slightly less accurate than new creations.

Of course, if you're trying to get famous, you should absolutely invent new words. Take Thomas Friedman's "glocalization". That one didn't do so well. Steven Colbert's "truthiness", that was a gem.

<comment><USER90> I refuse to participate in the evisceration of English vocabulary. If you can't guess the meaning of an unfamiliar English word from context, your working vocabulary simply isn't large enough. A staggeringly large quantity of English words are derived from common elements filched or inherited from Greek, Latin, Old Norse, Anglo-Saxon, and Norman.

Knowing the root words are sufficient to both guess the meaning of many of the 600k+ English words that are in the dictionary, but not typically used, and to formulate new, English-sounding words with intuitively obvious meanings. This is similar to knowing the IUPAC chemical naming rules, which allow chemists to name molecules in such a way that other chemists will know how it is structured, just by reading the name. (Z)-Hex-3-en-1-ol, for instance: hex means the longest carbon chain is 6 atoms long, 3-en means there is a double bond following the 3rd carbon, (Z) means it is in _cis_ configuration, and 1-ol means there is an -OH alcohol group on the first carbon in place of a hydrogen. English is less formally structured, but it still has rules.

Truthiness = truth + -y (similar to) + -ness (quality of being)

Therefore, truthiness is the quality of being similar to truth, which is as Colbert's character described it. It follows the rules. It reads like an English word with unambiguous meaning, and is therefore adopted as though _it already was an English word_.

Glocalization = global + local + -ize (convert to verb) + -ation (state resulting from the verb action)

This smashes two dissimilar words (global, local) into one portmanteau that has ambiguous, unclear meaning (glocal), and then tries to extend it with regular English suffixes. Portmanteaus are less readily adopted without literary backup. Dodgson's _frumious_ (furious + fuming) never would have made it without the Bandersnatch, and _slithy_ (slimy + lithe) required a bit of explanation from Humpty Dumpty. Needless to say, Dodgson was much better at it than Friedman.

This is why I like to say that people who know English well are sesquilingual, because you need to know a little bit of several other languages to know that many of the words.

</comment></comment></comment></comment></comment></comment><comment><USER74> Right now, the _only_ content in this article is "Developing...".

<comment><USER92> I am actually curious. Did everyone who upvoted the title post not click on the link at all?

<comment><USER93> clearly, no.

<comment><USER94> HN's scoring algorithm should ignore or discount upvotes if the user did not click on the article link before voting. For extra credit, HN could also watch for page visibility changes that would indicate that the user, in addition to opening the article, also switched to that the article tab. :)

<comment><USER68> I sometimes read an article at work or home, and then later read the comments and upvote later at home or work. Don't assume that everyone operates the machine the same way you do, nor with the same goals.

</comment></comment></comment></comment></comment><comment><USER95> bubble? next crisis is coming?

</comment><comment><USER96> GoodBYE!

</comment><comment><USER97> Oh man, they're even better than AMD at _laying off people_.</comment>


How we got stuck with cubicle culture: a brief history - <AUTHOR> http://finance.yahoo.com/blogs/daily-ticker/how-cubicles-became-the-norm-in-the-workplace-152304173.html <comment><USER2> Software dev here... I recently transitioned from an "open space" office to a cubicle. I absolutely love it. I still wear headphones all the time, but cutting out the visual distractions alone is an improvement!</comment>


Show HN: WriteMonkey - distraction-free writing environment for Android - <AUTHOR> https://play.google.com/store/apps/details?id=com.azacsoftware.writemonkey

<comment><AUTHOR> i'd grateful for comments</comment>


Fog Creek Guides to Marketing, Sales, Pricing and Hiring - <AUTHOR> http://www.fogcreek.com/guide/ <comment><USER2> Yes, because they're like so successful.</comment>


Roll Your Own Ngrok with Nginx, Letsencrypt, and SSH Reverse Tunnelling - <AUTHOR> https://jerrington.me/posts/2019-01-29-self-hosted-ngrok.html <comment><USER2> If it's for testing, one could do,

        ssh -R *:9000:localhost:5432 user@host

No security aside from whatever your local is setting on that port.

You simply hit example.com:9000 and you'll reach your machine's 5432 port.

I use a 128MB VPS as the proxy for this ($15 per year).

And you're not limited to HTTP traffic. You can expose anything like this.

           -R [bind_address:]port:host:hostport

The * is allowing anything to connect. If not specified, only local connections are allowed.

<comment><USER3> Who's your VPS provider?

<comment><USER4> I've had a few 128mb/$15/year for a few years now from RamNode. I've been happy with them

<comment><USER5> I've used ramnode as well. They are certainly ok for testing and tinkering. Word of caution, be ready to have some patience with them if they have a billing issue. Their billing system is a monster. Their node performance is decent for the price though.

<comment><USER4> That's fair criticism. I wouldn't want to host anything mission critical on the platform, but for the price I am quite pleased with what I get.

<comment><USER5> Most certainly. I would use them again as well.</comment></comment></comment></comment></comment></comment>


Ask HN: How do you automate a build at your company? - <AUTHOR> Greetings,
So I am working for a small company whose source code is written in lot of Ruby, Python and Go.
I noticed that their build process (i.e. building the project for the first time on a machine) isn't automated and you've to manually type in many commands e.g.
installing lot of things using brew, adding things to bash_profile, installing node packages, cloning a couple of Git projects and etc.
How would you go about automating this? Do you use any tools? Are there any good tools that I can use to automate this all? <comment><USER2> I swear by Vagrant for development environments.

With that as a base, any config tool can setup the environment, my preference is for shell scripts, or config packages if youre invested enough in a single platform (eg using debathena config-package-dev for debian environments)

<comment><AUTHOR> Thank you for your reply and insights, appreciate it.

Before I'm able to convince the team on migrating to Vagrant, do you suggest shell scripts as a short term solution?

<comment><USER2> If what youre doing now is running commands/placing files, then sure shell scripts can definitely be a quick win.

<comment><USER3> If you use Vagrant you might wind up doing all the heavy lifting in shell scripts anyway.

<comment><USER2> Its definitely an option, yep.

Key is to think portable when writing them.

Target /bin/sh not bash, don't asusme library paths, etc.

</comment></comment></comment></comment></comment><comment><USER4> Dockerfile in the repo. Vagrant is obsolete IMHO after they released a first class client for all platforms</comment>


Spotify plans to join the hardware race, but what can it offer? - <AUTHOR> https://arstechnica.com/gadgets/2018/02/spotify-is-building-a-hardware-product-and-it-could-be-a-smart-speaker/ <comment><AUTHOR> Really hope this is something unique and interesting - rather than just a copycat smart speaker, for instance.

Spotify has such a strong brand and identity, so hopefully they can imbue that into any hardware (if/when it gets released).

And given Sweden's fantastic music pedigree (Sverige!), I could even see potential for a music/rhythm device-of-sorts - more Dropmix and Guitar Hero - than say something akin to a UE Boom or an Echo Dot.</comment>


Code Golf at Google - <AUTHOR> http://blog.zmxv.com/2015/07/code-golf-at-google.html <comment><USER2> Fun fact: there has been a problem with Googlers calculating hash functions that pass all the test cases for certain questions.

<comment><USER3> If you think about it the right way, that's what everyone is doing: calculating a hash from the problem statement into stream of symbols with certain constraints.

So the problem here is not calculating hash functions per se, but over-fitting the solution to those test cases.

</comment></comment><comment><USER4> i think the sad pattern I see in a lot of these code golf implementations is the solution score is based on Lines of Code, which we already agree is a POOR representation of either complexity or simplicity.

I think it would be far more interesting to measure number of instructions to complete the objective. Though I suspect the folks familiar with assembly would run circles, perhaps you could segment by solution language?

<comment><USER5> You may be interested in [http://www.zachtronics.com/tis-100/](http://www.zachtronics.com/tis-100/). It's essentially a code golf game with many different metrics to optimize including number of instructions.

<comment><USER6> It's DRM-ed, sadly.

<comment><USER7> Not anymore: [http://www.gog.com/game/tis100](http://www.gog.com/game/tis100)

</comment></comment></comment></comment><comment><USER8> Hah, I remember spending hours on this during work hours when I was interning last year. I used to come up with very clever and short solutions only then to find out I wasn't even top 10 :(

</comment><comment><USER9> Perl is a way more fun for golfing but it's missing from the supported languages

</comment><comment><USER10> I had to do a code test for a job (sigh). But it actually was kind of fun. The website takes your code and checks correctness and efficiencies.

The company posts "challenges" every month. But they also have lessons which contain some interesting code challenges. The only problems is 1) they're timed 2) sometimes the descriptions are kinda mathy which may put people off.

[https://codility.com/programmers/lessons/](https://codility.com/programmers/lessons/)

</comment><comment><USER11> Can a googler put the questions in public for others to see?

</comment><comment><USER12> I'm trying to run the c++ version, but it won't compile because the loop variables in the range for loops do not have declarations.

<comment><USER13> There was a proposal[1][2] for C++17 to allow:

        for (e : c)

which would be equivalent to:

        for (auto &&e : c)

Gcc implements this when compiling with -std=c++1z. My understanding is that it was rejected by the committee.

[1] [http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2014/n385...](http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2014/n3853.htm)

[2] [http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2014/n399...](http://www.open- std.org/jtc1/sc22/wg21/docs/papers/2014/n3994.htm)

</comment></comment><comment><USER14> >[http://go/codegolf](http://go/codegolf)

How does this work, some sort of TLD magic? (That shouldn't be possible, right?) Is it just routed within Google's internal network?

<comment><USER15> Search paths. The full address is go.corp.google.com (which is simply a URL shortener), IIRC; however, I think the resolvers are also configured to respond to a bare name in a lot of cases as an optimization. They talk a little bit about corp in their BeyondCorp paper[0], which is well worth a read, and I'm speaking to ancient memory so I might be wrong these days.

[0]: [http://static.googleusercontent.com/media/research.google.co...](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43231.pdf)

<comment><USER14> Thanks for the link! Figured it was a bit more complex than just a host file, being Google and all.

</comment></comment></comment><comment><USER16> I watched the wolf of wall street recently. I see some of the solutions to these code golf exercises as similar to the bankers who beat their chests and celebrate their masculinity in selling penny stocks to gullible investors.These code golf exercises seem like the software developer equivalent: "look at how brilliant and superior I am that I can obfusicate code into something no-one understands in only 2 lines".

My concern here is that this Code Golf mentality infects the normal day-to-day coding at Google. Just because an implementation can spawn a few lines it doesn't make it a good implementation. What about clean code, maintainability, automated testing, self documenting code...

I pity the codebase I would have to maintain from one of these code golfers.

<comment><USER17> Nice how many off-handed insults you've managed to pack into such small space, based on no data at all except extrapolating from your own prejudices. It's almost like some kind of HN comment golf.

A playful programming competition is really not at all comparable to cheating innocent people out of their money. Like, seriously. People are generally able to behave appropriately in situations with different expectations. There's no reason to think that it's not equally applicable to using the appropriate programming style for the project. It's like you're looking at somebody walking on the street in jeans and a T-shirt, and complaining that they're not properly dressed for the opera. And no code gets committed without a code review at Google anyway.

Finally, code golf is rarely about obfuscation; obfuscation just for its own sake isn't compatible with minimizing code length. Once you e.g. know the basic Perl golf tricks, the code can be surprisingly readable since it really just contains the core of the algorithm.

<comment><USER18> Insult golf sounds kinda fun. Try to come up with the most insulting thing possible in the least characters.

On a more serious note, I agree with you. There's some alarmist reactions to things like this, but in reality I don't think it's an issue at all. Sure, there might be bragging and such, but that's the point of something like this, isn't it? It's a game, not a serious discussion on optimization. Short code is more "fun" than superoptimized to my mind.</comment></comment></comment>


"A rocket will never be able to leave the Earth's atmosphere." - <AUTHOR> http://markbrenneman.com/post/48180689916/push-on

<comment><USER2> "I see little commercial potential for the internet for the next 10 years."

This is my favourite of the lot, for two reasons:

a) Gates said it on COMDEX in 1994, the same year when Amazon.com was founded.

b) I would dare say that he wasn't that much off -- he said _little_ (and not "none"), and one could argue that Internet's commercial potential is still to be fully realized. At the very least, Amazon.com itself reached its first profitable quarter in 2001, making Gates' forecast much more accurate.

<comment><AUTHOR> Yes, when I read that I made sure to note the year. It is true, he was not far off.

I would love to see what else he said around this sentence, maybe he did recognize the huge non-commercial potential but this is the only sentence that got attention.

</comment></comment><comment><USER3> The actual New York Times article is funny and sad: [http://web.archive.org/web/20080704103647/http://it.is.rice....](http://web.archive.org/web/20080704103647/http://it.is.rice.edu/~rickr/goddard.editorial.html)

Robert Goddard was ridiculed for most of his life for having such lofty ambitions, chiefly building a machine that had even the possibility of ascending to Mars. Yet we owe it to him (and Konstantin Tsiolkovsky) that we have now sent machines and human beings to many worlds. I can't think of a better example of "don't listen to the haters."

</comment><comment><USER4> All those comments have in common one thing: they are from people who claim that something can't be done, that others can't do/accomplish something.

Moral of the story: never claim that someone can't do something, no matter how unfeasible it might look. They might actually do it, and you will look silly.

<comment><AUTHOR> I agree that you should not immediately write off something, but there is definitely a need to lead/mentor people in the right way. When pg says, "I am worried..." he is doing the same thing as these quotes: expressing doubt.

That is what makes it so tough. As an entrepreneur you are hearing criticism often, sometimes it a super helpful and you need to change direction, other times it means you are onto something HUGE. It is difficult to decide which one it is.

</comment></comment><comment><USER5> "I think there is a world market for maybe five computers."

To be fair the computers he was referring to were behemoths with a small army of engineers maintaining them. How many of those are there today? Probably not that much more than five.</comment>


mailgo, a mifferent mailto - <AUTHOR> https://github.com/manzinello/mailgo <comment><AUTHOR> I'm working on a little open source project to overwrite the classic behaviour of mailto links. It's called mailgo ([https://mailgo.js.org](https://mailgo.js.org)). Instead the classic mailto, the idea is to show a modal to give more possibilities to the user, for example to copy the email address. It's WIP (I accept any suggestion!) on the website there is a working demo. If you like it, star the repo on GitHub! [https://github.com/manzinello/mailgo](https://github.com/manzinello/mailgo)</comment>


Show HN: I quit my job at Facebook to make personalized children's books - <AUTHOR> http://www.readyourstory.com <comment><USER2> I quit my job at facebook too, now i'm unemployed.</comment>


Fall of Voodoo - <AUTHOR> https://tedium.co/2018/02/14/3dfx-history-failure/ <comment><USER2> The 3dfx timeline gives you an idea of how much the computer field has slowed down and consolidated. Voodoo was released in 1996, into a market with half a dozen competitors. Voodoo 2 in 1998, the same year as the first viable NVIDIA card (Riva TNT). NVIDIA released the GeForce 256 in 1999, cementing its dominance. 3dfx released its last card in 2000, just four years after its first. NVIDIA is now still dominant, _18 years_ after establishing dominance with the GeForce.

Think back on how much consumer computing changed from 1996 to 2000. Four years back from the present, in contrast, is the Haswell-based Macbook Pro and iPhone 5s (a perfectly fine setup today).

<comment><USER3> Most of the other companies are still there though. PowerVR still makes 3D chips, but only for the embedded market (e.g. Android phones). Matrox gave up on 3D and now only makes specialized cards for 8 and 16+ monitor displays (airports, kiosks). IIRC, even Trident switched to embedded graphics.

The thing that bothers me is that if you want a PCI-E card on a consumer system, you only have nVidia/AMD. Intel only does embedded now with none of their offerings on a card (like the only i740). There is no Ryzen 7 with an APU, so if you're building a small developer box, you have to buy a discrete graphics card and can't rely on embedded (unless you want to drop to the Ryzen 5, which was just released with an APU).

There are rumors that Intel might be getting back into this space. If anyone could try to compete with the big two, it's probably them.

<comment><USER4> I'm not sure what rumors you've heard but what's not a rumor is that Intel is releasing CPUs with integrated AMD GPUs: [https://www.anandtech.com/show/12207/intel-with-radeon-rx- ve...](https://www.anandtech.com/show/12207/intel-with-radeon-rx-vega- graphics-core-i78809g-with-31-ghz-base-100w-target-tdp-overclockable)

That suggests Intel isn't going to be competitive in the graphics space in the near future

<comment><USER5> I believe you might be thinking Intel hiring Raja Koduri this past November. It seems Raja Koduri will be heading up new products in the graphics arena, but that is at least two or three years into the future. [https://www.pcper.com/reviews/Processors/Intel-Kaby-Lake- G-L...](https://www.pcper.com/reviews/Processors/Intel-Kaby-Lake-G- Launches-8th-Gen-CPUs-Radeon-Vega-M-Graphics)

</comment></comment></comment></comment><comment> pablo-massa I remember those days vividly.

I was just getting to know the world of computers, I think it was the year 97, I had 13 years old and my first PC, Pentium 200mhz with Windows 95, I thought the games were fabulous! Quake 1, Duke Nukem, Carmageddon, Moto Racer.

But one day I bought the Diamond Monster 2 with a Voodoo 2 chip and 12MB Ram (3DFX accelerator card), I put that thing on my PC and it was like traveling to the future, the games looked amazing and I had a performance boost.

I think the game that impressed me most at the time was Need For Speed 2 Special Edition, before the card I had it installed and played, but the "Special Edition" was for being compatible with 3DFX and adding additional features, in addition to the smoothed textures, in a track mosquitoes were sticking to the screen, I do not remember what other special features.

Moto Racer, Descent Freespace and Tomb Raider 2 come to my mind now as others that I feel huge visual gap between regular graphics and 3DFX.

Then came Quake 3 Arena in 1999 and it blew my mind, I think that in 2000/2001 I upgrade to a Pentium 4 and maintain the legendary Diamond Monster 2 because it was still kicking ass. Awesome card, it has a place in my heart.

<comment><USER6> > I think the game that impressed me most at the time was Need For Speed 2 > Special Edition, before the card I had it installed and played, but the > "Special Edition" was for being compatible with 3DFX and adding additional > features, in addition to the smoothed textures, in a track mosquitoes were > sticking to the screen, I do not remember what other special features.

I _think_ NFS2SE had transparent glass if you had a 3DFX card, or maybe that was NFS3, I remember wishing I had one either way!

<comment><USER7> I remember playing Need for Speed: High Stakes with a 4MB Permedia 2 card, and the game was clearly supposed to have alpha-transparent textures on some lights, but my card couldn't handle it and I got opaque textures with big black borders around all the streetlight lens flares etc.

The worst was the Dolphin Cove track where beautiful shafts of sunlight were meant to lazily filter through the tree canopy onto the road. On my screen, they appeared as fully opaque walls blocking any view of the track ahead.

</comment></comment></comment><comment><USER8> It feels weird that the article uses the term "GPU". This term wasn't widely used back then. IIRC, the Voodoo cards were called "3D accelerators".

<comment><USER9> Yes.

I even remember the need of two cards. A GPU and a 3D accelerator.

<comment><USER10> The classic combo of Matrox for 2D and 3Dfx for 3D. Surprisingly Matrox still exists.

<comment><USER3> Yep, but their cards aren't really consumer. They only do expensive specialized card for multi-monitor output (think serving up 8+ screens at a train station).

</comment></comment></comment></comment><comment><USER11> LGR on YouTube did a nice episode about this a while back:

 _LGR Tech Tales - 3Dfx & Voodoo's Self-Destruction_

 _This episode covers the founding, voodoo-powered rise, and ridiculously powerful fall of 3Dfx Interactive. Join me in LGR Tech Tales, looking at stories of technological inspiration, failure, and everything in-between!_

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

</comment><comment><USER12> You might also like watching Computer History Museums "3dfx Oral History Panel with Ross Smith, Scott Sellers, Gary Tarolli, and Gordon Campbell" [https://www.youtube.com/watch?v=3MghYhf- GhU](https://www.youtube.com/watch?v=3MghYhf-GhU)

Ross Smith, Scott Sellers and Gary Tarolli were 3dfx founders, they left Silicon Graphics to do this startup.

</comment><comment><USER13> Access to information (e.g. the Internet) has been a game changer for buying "3D acceleration" as it was called back then.

I remember fondly in the late 90s just walking into a Best Buy (maybe Circuit City) and buying a GPU off the shelf.

I had no benchmark data like today. I bought based on whether or not I liked the packaging and how much video RAM did it have. Because I really didn't have much more data to go off of.

I subsequently bout the Diamond Viper 770, linked below.

[https://www.anandtech.com/show/307](https://www.anandtech.com/show/307)

Times have really changed.

<comment><USER14> There were plenty of magazines doing those benchmarks back then, you certainly didn't need the Internet to make good buying decisions.

<comment><USER15> There was also the internet. Consider this article from Tom's Hardware circa 1998 [http://www.tomshardware.com/reviews/nvidia,87-8.html](http://www.tomshardware.com/reviews/nvidia,87-8.html)

</comment></comment></comment><comment><USER16> Few things worth pointing out that is missing from the article.

1\. Direct X, and arguably Microsoft, trying to dethrone Glide, made a huge impact. Although that was later in the time line when 3Dfx was going downhill anyway.

2\. Too late to the "Graphics" Card market. After Voodoo 2 it took them too long ( Long in that state of time, when everything was moving fast ) to release a 2D/3D Graphics Card. Voodoo Banshee wasn't good enough compared to RivaTNT.

3\. Prices, Voodoo was quite a bit more expensive then others.

God, reading this article makes me feel old. Lots of memories coming back. Reading about benchmarks between all these Graphics Card. Internet was still in its early days back then. Most of the information were from Monthly magazine I got from WH Smith, PC Gamers used to do these test. Lot of cool games coming from those CD Demo disk. There is S3 Savage 3D, ATI Rage, Matrox, 3D Labs which was the Semi Professional Graphics Card company back then, which is now under Creative, aka Sound Blaster's company. Even Intel has i740. And PowerVR. Nvidia went from the underdog, and Geforce changes everything. I remember the early days how every new product from different company would hype their spec, like S3 is going to change the world etc. Then we soon learn all the paper spec didn't matter, if the drivers wasn't giving it the full potential. One of the reason why PowerVR didn't do well on desktop. ( Actually this is still the case in Mobile Phones.... )

GPU today isn't exciting anymore, at least in terms of Grpahics, not compute. We are limited by Technology node, and lots of drivers optimization to get AAA games to work better.

Gaming at the time was very geeky. Who would have thought today we have something called E-Sport, and it seems everyone is a gamer. Somewhere along the line I ditched PC gaming and went to console. I miss PC gaming, mainly because I bought a Mac, and despite what Apple say, they really don't gave a crap about gaming on Mac. Sigh

I miss 3Dfx, I miss Voodoo.

Good Old Times.

P.S - And somehow this song pops up in my head

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

<comment><USER17> i740 I had it. Was a piece of crap that rendered with a lot of bugs. Also I have, after, a card with Trident 3d chip. Later I grabbed a Creative GeForce 2 MX DDR. I managed to ran Doom 3 over it at a barely playable 20 FPS using some paths to allow Doom 3 ran over Voodoo 2 (mainly resizing textures ...)

</comment></comment><comment><USER18> Still fondly remember my passively-cooled! Voodoo 3, their rendering stack was top quality. Nvidia was the feeble newcomer. Times change fast...

<comment><USER9> Hehe, all my friends had Voodoo GPUs back in the days.

A friend of mine even got a Voodoo 5500 and we tried to get Quake 3 Arena so tuned that we couldn't see any pixels anymore.

I was the first one with a GeForce 2MX, which worked quite well and long considering it was the budget version of the gf2.

If I look at the performance indexes, the Voodoo 5500 wasn't very much better than the GF2MX.

<comment><USER19> And there was simple resistor resolder hack to make GeForce 2MX think it is Quadro. It was very useless and very cool at the same time. Few people got into hardware hacking (read electronics engineering) thanks to this little and yet very positive soldering experience.

<comment><USER20> I remember in the same era, carefully shorting a blown fuse on the package of my Athlon using a graphite pencil, so that I could overclock it. I heated my apartment with that PC.

</comment></comment></comment></comment><comment><USER21> Still remember enjoying Descent. And how I argued with Commodore staff at conferences on why Amigas didn't move into hardware 3d as it was the clear future to see.

<comment><USER22> I love Amigas but seems like their fate was sealed by then. By the release of Doom in 1993 it was over for sure. Their whole shtick was that they had special hardware that let them do things PCs couldn't. Doom proved them wrong.

<comment><USER23> Pretty much on the money. The hardware guys tried though. Management delayed and delayed until they'd blown all the money.

In 90-91 ish they had a prototype AAA architecture and the specs were great. (3000+). PC's had caught up some way.

Instead management pushed a cheap, horrible, slower machine with none of the features, no SCSI II but CPU driven IDE and AGA in place of AAA. No DSP or voice recognition. No 16 bit Paula. That was A4000.

Then in 93(?) there was the planned 3D PowerPC reboot as PCs had finally caught up with AAA! Then they were no more.

Was really depressing going to DevCons and getting all the NDA info in this period.

<comment><USER21> It doesn't look like AAA [1] has any 3D?

From what I remember it was more like my Retina Z3 card but better. Had some discussions at conferences, it seemed Amiga hardware engineers didn't believe in 3D and were frozen in their graphics mindset of blitter and copper (huge when I wrote 68k demos in the mid-80s, but meaningless when 3D happened).

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

<comment><USER23> No it didn't, but it was started in 88 when keeping planar modes and adding 1280x1024 still made some sense keeping compatibility. Adding the DSP would have made a few new niches. In 93 it was all a bit too late - and they weren't even ready to ship then.

3D was in Hombre that was the PowerPC. Wildly different and no compatibility, so heaven knows how that would have played out. Only that was when we were all starting to play Doom at work :)

Edit: I searched and found this from Dave Haynie - who always seemed pretty straight talking. Weirdly some of the dates have 10 years added :D The 3D section and the following on Gould and Ali seems to sum up the train wreck pretty well. eg:

"When he got to Engineering, he hired a human bus error called Bill Sydnes to take over. Sydnes, a PC guy, didn't have the chops to run a computer, much less a computer design department. He was also an ex-IBMer, and spent much time trying to turn C= (a fairly slick, west-coast-style design operation), into the clunky mess that characterized the Dilbert Zones in most major east- coast-style companies"

[http://www.landley.net/history/mirror/commodore/haynie.html](http://www.landley.net/history/mirror/commodore/haynie.html)

<comment><USER21> "keeping compatibility."

This killed the Amiga.

</comment></comment></comment></comment></comment></comment><comment><USER24> I remember those gpu wars. Also had a Voodoo 3000 card which was relatively cheap but still very fast. It took quite some time to get those games running optimally though. Playing Quake on it was fantastic.

Specs and scores were all they could talk about. I also remember that very nice parody: [https://imgur.com/SLG6hp4](https://imgur.com/SLG6hp4)

</comment><comment><USER25> I remember my Voodoo3 quite fondly. There was quite a performance boost in games based on the Quake engine. I also recall their being poor Linux driver support until 2005 or so.

My Voodoo3 ran right up through CS v1.6 (albeit struggling at times). A new system I built in 2005 used 2x BFG 6800s in SLI (3dfx tech nvidia inherited). While impressive I seem to recall their being some variation in nvidia's SLI spec/implementation. Perhaps 3dfx SLI performance was seemingly better because of Glide support but my memory escapes me (obviously not an apples to apples comparison).

FWIW, there was also a huge aftermarket of Voodoo cards on eBay (1999-2004) and a decent community providing 3rd party driver support.

</comment><comment><USER26> The article blames management failure, but I'm not convinced. There's a general bias to blame management any time a company fails. Of course management is always responsible, but I don't think anyone could have saved say, Kodak.

In this case, Nvidia and ATI were already making 3D accelerators for the professional 3D rendering market. All they had to do was to make stripped down cards that wouldn't cannibalize their high margin business, and sell them in volume for a price gamers could bear.

Maybe 3Dfx could have made a moat out of GLide, but OpenGL already existed and Microsoft was working on Direct3D.

<comment><USER27> > but I don't think anyone could have saved say, Kodak

Why not? What if Kodak management had went hard on digital initially instead of clinging to film for so long?

<comment><USER26> Kodak was never an electronics company, or even a camera company. Nikon and Canon would have eaten their lunch.

<comment><USER28> Kodak literally invented the digital camera, and were significant in both consumer and professional digital photography in the early 00s.

They missed by not innovating fast enough compared to the competition, not by ignoring the market.

Unimaginative management was very definitely a problem - although to be fair, it's easy with hindsight to say they should have started developing digital much earlier, when in reality consumer digital photography only started to make commercial sense when computers and public networking became powerful enough to support it.

That didn't happen until the later 90s. Until then, most computers lacked the photo quality displays we take for granted now.

<comment><USER3> I can remember my oldest digital camera was a Kodak my parents bought me, with a CF card in it I believe.

</comment></comment></comment></comment></comment><comment><USER29> Wait, so what went wrong? They took too long to release new product? That's not surprising to anyone watching at the time. But… why? What went wrong internally?

<comment><USER3> I think it was the failed merger with STB. They should have kept with the nVidia route of making chips for other companies instead of trying to integrate the entire pipeline like ATI.

<comment><USER30> Yes, this. They tried to go from being a company that just licensed IP to OEMs (who would do the actual manufacturing and marketing of 3dfx-powered graphics cards) to being a company that did the manufacturing and marketing themselves, and in the end couldn't pull that off.

Acquiring one of the more prominent OEMs, STB, was supposed to get them the expertise they needed to do that rather than having to develop it in-house, but (as in many acquisitions) absorbing the new company turned out to be more complicated than originally expected. This resulted in the post-acquisition products (Voodoo 3/4/5) taking longer to get to market than planned and being somewhat underwhelming by the time they did arrive, which gave NVidia -- who kept on licensing their tech, now also to grumpy former 3dfx OEMs who had found themselves cut out by the STB acquisiton -- the opening they needed to eat 3dfx's lunch.

<comment><USER29> None of this was in the article, what a shame!

</comment></comment></comment></comment><comment><USER31> I had the Wicked3D H3D voodoo glasses, 3D on 20 inch monitor gave me > 100 FOV when I put my nose near the screen.

</comment><comment><USER32> My Voodoo 5 5500 was, at the time, and for years afterward, the best consumer level card I'd seen for OpenGL rendering. I still remember playing Diablo 2 on it and never lagging, even when insane numbers of mobs were on the screen. RIP

<comment> T-hawk Diablo 2 doesn't use OpenGL. It does use Glide, the native hardware API for Voodoo cards. And it looks amazing and silky smooth with Glide compared to the game's Direct3D mode.

</comment></comment><comment><USER33> I remember the day clearly when a case of Voodoo 2's showed up in our dorm room, 1998. Going from software rendered Quake 2, to accelerated was the beginning of the end for my grades that semester.

</comment><comment><USER34> This making me reminisce so hard. I remember fondly the days where I convinced my mom that the Voodoo card was for some school thing and was so excited to slap that baby into the ISA slot of my Pentium 2.

</comment><comment> cbm-vic-20 TDFX shareholders got screwed when they were "acquired" by nVidia. I suppose that was a good thing, it made be skeptical of crummy companies during the dot com days.

</comment><comment><USER35> I have many fond memories configuring my voodoo card on Linux, reveling in my high glxgears score and super smooth Tux racer rendering. A simpler time.

</comment><comment><USER36> Off-topic: the PS4's PSVR box is a bit reminiscent of the old Voodoo cards with their passthrough video.

</comment><comment><USER37> Voodoo 3dfx 5500 baby ...

</comment><comment><USER38> Could also be titled: when not to pivot</comment>


How To Sell Private Companies (A Guide) - <AUTHOR> https://www.timkeane.org/2018/08/preparation-key-to-successful-private-transactions-especially-in-hot-markets.html <comment><AUTHOR> Summary:

      - Use auction process
      - Clean up financial statements
      - Base offering on market comparables
      - Include data analytics about your customers
      - Plan for probable terms (taxes, witholding of proceeds, exclusivity)
      - Plan for capital requirements
      - Disclose in layers
      - Seller's Goals Are Important
      - Check out The Buyer
      - Use Process to Provide Time to Consider Requests
      - Check References and Style</comment>


Ask HN: Where is our Pixelmator/Acorn/Sketch for video? - <AUTHOR>

We have all of this great software for pixel/vector manipulation that's not made by Adobe. Where's our solution for video? <comment><USER2> iMovie? Windows Movie Maker? Corel VideoStudio? MAGIX Movie Edit Pro? Sony Movie Studio? Pinnacle Studio?</comment>


Learn Clojure - <AUTHOR> http://learn-clojure.com/

<comment><USER2> I'm actually getting fond of these single-point-of-entry for learning type of sites for a language. Along with the Prolog one that I saw here yesterday, I think they really make picking up a non-mainstream language a whole lot easier.

I remember when I was trying to start learning Common Lisp, I found it a little difficult for the lack of a resource similar to these. Eventually I stumbled upon PCL and LispBox and managed to take some baby steps. So kudos to the author.

<comment><USER3> Do you have a link to the Prolog one handy? I've just started re-learning it and could use a good guide. Cheers!

<comment><USER4> <http://news.ycombinator.com/item?id=1976127>

(via <http://searchyc.com/submissions/prolog?sort=by_date>)

<comment><USER2> Yup, that's the one I was talking about.

</comment></comment></comment></comment><comment><USER5> I recently started learning and it's quite a shock to the system coming from certain other main stream environments.

I found the best route for me was Emacs, the Emacs Starter Kit and Leiningen. Everything is evolving so quickly that I didn't find a decent set of instructions for setting up Emacs manually that worked for me.

The learning curve is bit steep but the tools really are great once you get the hang of it.

</comment><comment><USER6> This is a wonderful collection of resources. The screencast by Lau Jensen was a fantastic demonstration of how to setup emacs/slime/etc correctly. I would had never found this without your site, thank you. --Benjamin

</comment><comment><USER7> The site is very useful, thanks for sharing.

</comment><comment><USER8> Thanks for making this, it's great.</comment>


Ask HN: File Sync App Recommendations for 2020 - <AUTHOR> Like many people here on HN, lately I've become unhappy with Google and their attitude and actions. I've also become unhappy with Google Drive and the way its associated "Backup and Sync" tool works.
May I please have some recommendations for a replacement file sync tool? It should fill these requirements:

    Cross-platform: Linux, Windows 10, and Mac OS X.
    Stable and fast: No huge inefficient UI taking up memory.
    Multiple locations: i.e. "cloud" based.
    Pricing equivalent to my current $10/month for 2TB.
    "Good" corporate behaviour: open about security, no selling info, no bait and switch etc.
    Works OK with more than a million files.
 An open source solution using something like S3 would be OK, but I'm not up to date on the latest offerings in that space.
It would be great if this tool would also allow multiple accounts so my wife and I can share space and files.
My reason for moving is that Google's file sync/backup tool has multiple "containers" such that if you sync folders outside of your "GoogleDrive" folder, that folder goes into its own container which isn't accessible from any other computer. You can access the files through the web interface, but you can't sync them to multiple computers. (There's a feature to "include folder in drive" from these containers, but they don't allow top-level folders, so you have to jump through silly hoops to get it to work, plus Google may just decide to remove that feature one day) <comment><USER2> Part of the cost of Google Drive is subsidized by data mining, so it may be hard to find an equivalent service with "good" corporate behavior at the same price.

However, I've been looking at pCloud and it checks most of the boxes, though I haven't tested with a million files. 2 TB is $10/month and they have lifetime deals. For an additional fee you can get client-side encryption.

<comment><AUTHOR> Interesting! I will investigate pCloud some. Thank you!

</comment></comment><comment><USER3> Does SyncThing suit your purpose? [https://syncthing.net/](https://syncthing.net/)</comment>