Common Parts Library - <AUTHOR> http://octopart.com/common-parts-library?a=1

<comment><USER3> This is great. I am _so_ glad this is getting done! I've spent way too much time clicking around the horrible distributor search engines, trying to determine which parts are cheap, readily available and will remain so (these three things usually go in hand). It is incredibly difficult and time- consuming if you are looking for something like a 12MHz SMD crystal: good luck sifting through thousands of options.

The current selection is very limited, but still useful for many projects, I will certainly make use of it.

The logical next step would be a KiCAD (and possibly Eagle?) library containing all the footprints. Not just thrown in there, or auto-converted, but actually verified by a human.

<comment><AUTHOR> Thanks. Yes, footprints and symbols are on the roadmap. Since it's a limited number of parts, we'll be able to have well defined, reliable data there.

<comment><USER4> Please, please, PLEASE support KiCad with this! I use octopart pretty extensively and have loved it so far. I would be fanatical if you guys had KiCad footprints and symbols as it is the only decent EDA tool that is on all three major OSes.

<comment><USER5> I'll second the motion for KiCAD footprints and symbols!

There is not a good central repository for KiCAD parts, and on the client side the process for managing components or creating new ones is very convoluted. KiCAD is tremendously useful, but its creators need to take a serious look at usability. A cloud-based parts library would be a killer feature, along with drop-in public domain circuit "modules" (comprised of several to many connected components).

<comment><USER4> The development version of KiCad actually pulls the footprint library from github. It is significantly updated and quite a lot better than it used to be. Still has a long way to go, but it really is so much better than it was even a year ago.

</comment></comment></comment></comment></comment><comment><USER6> To start, this is a nice idea and I'm happy to contribute a bit to it, time depending and output depending. I'll be looking for an Altium library containing these parts and links in order to stay interested.

The 2N7002 has always been my standby signal NMOS. There are no power FETs or IGBT modules. Be nice to include some of the Ixys stuff.

A hinge-type micro SD card socket would be a nice variation, something that's harder to jar loose.

Hirose make some pretty nice board-to-board connectors. All you have on there so far are yucky 100 mil thruhole headers. Some finer pitch stuff would be nice. And pin pitch and number need to be a sortable/searchable field. Some SMB sockets would be awesome for test points, as would some test point headers (Vector makes nice ones like the K24 series, but my buddies like the little ones with the plastic colored bushing and a ring on top).

There are nowhere near enough microcontrollers. You could easily have 20 MSP430s. I've had good luck with the MSP430F2246 and F5438, I believe, but we've used a ton of different varieties.

How about a 232 driver like the MAX232 family? Or a 485/422 transceiver, or any kind of differential driver/receiver pair. Those Analog Devices ADUM isolated transceivers are great parts.

And no Zeners! The BZX84C series are a nice family to start with. I want to gag over the opamp selection.

I don't think the kinds of specs you offer are sufficient to describe the parts there. This could be said for just about everything on that list, which is probably the biggest issue with such a list. Most parts that designers select are chosen for one of two reasons - we don't care and they're in the library, or they are the key part that makes everything else worth doing. In the first instance, this list is great. In the second, I'm going to spend a day looking at all the vendor options to pick the best part I can find. But even for the parts I don't really care about, I have some concerns - the part has to work right for the application. Active parts are specified by many key parameters and in the case of opamps in particular these parameters are not indicated at all here, so I'll end up having to look up each part's details anyway. Consider input bias current, offset voltage, 0.1-10 hz noise, 10hz-1khz integrated noise, just as a start.

Rant off. Nice idea, here's my two cents worth.

<comment><USER7> \+ for 2n7002

and why LPC1830? LPC1768 seems to be far more popular

</comment></comment><comment><AUTHOR> More info about the Common Parts Library is available here, [http://octopart.com/common-parts-library/about](http://octopart.com/common- parts-library/about)

</comment><comment><USER8> This is great! A few things that might be nice to add are the ATmega32U4 (on the Arduino Leonardo and Micro, among other things), the ATtiny85, the ATtiny84, and these resonators: [http://www.digikey.com/product- detail/en/AWSCR-8.00CV-T/535-...](http://www.digikey.com/product- detail/en/AWSCR-8.00CV-T/535-10004-1-ND/2001627)

For hand-soldering, it might be nice to include 1206 packages in addition to 0603 ones, although I realize that would make the list much longer.

Another good reference for this kind of thing is the Fab Lab inventory: [http://fab.cba.mit.edu/about/fab/inv.html](http://fab.cba.mit.edu/about/fab/inv.html) and it might be worth looking that over to see if there's anything that seems worth adding.

<comment><AUTHOR> Thanks! Great suggestions. Stay tuned for updates to the list.

</comment></comment><comment><USER9> Ah, funny they mention the Open Parts Library-- we bought two for stock before figuring out that it's really a DFM kinda thing, which doesn't fit with the hobbyist customer segment at all. If anybody wants to buy one from a US-based distributor, you can certainly take them off our hands: [http://www.robotmesh.com/open-parts-library- basic-v2?___SID=...](http://www.robotmesh.com/open-parts-library- basic-v2?___SID=hn)

</comment><comment><USER10> Awesome. We also need a repository of things that can be built solely with parts from the library. (ie "The 10 watt CPL boost regulator" etc).

<comment><USER3> Boost regulator might be difficult — my first observation was that there are no power inductors. These would be my next step, but unfortunately there would have to be at least several of those for them to be of any use.

I'd go with shielded 2.2µH/4.7µH/10µH/47µH/68µH/100µH SMD inductors, and definitely more than 1A.

</comment></comment><comment><USER11> For some reason, I thought it was related to GitHub and its octocats :) Nice concept.

Minor visual bug: [http://octopart.com/#Resistors](http://octopart.com/#Resistors)

'Case / Package / Footprint' input-with-dropdown border looks a bit different from other string inputs on the same page (FF 32.0.3).

</comment><comment><USER12> Now you just need a prototyping service which has this standard library in stock, ready to be loaded into a pick and place machine.

It's amusing to see the world of transistors reduced to one general purpose transistor, and one FET, each in N and P polarity.

<comment><USER13> @Animate - Chris here from WAi (contributor)

That's our plan. We already have over most of them in our facility already. Where do you think a lot of the part numbers came from ;)

</comment></comment><comment><USER12> Now someone needs to write something like the Art of Electronics based on this component set.

</comment><comment><USER14> This is pretty amazing

<comment><USER13> @helhawary - Chris here from WAi (contributor)

I'm glad you like it. Anything you particularly like or are disappointed that you didn't see?

</comment></comment><comment><USER15> No thermoelectric elements :(

<comment><USER13> @owenversteeg - Chris from WAi here (contributor)

Any recommendations?

<comment><USER15> Since you're partnered with Adafruit, you may want to list the two that they stock.

It looks like Octopart has these two:

[http://octopart.com/tec1-12706-conrad-24165703](http://octopart.com/tec1-12706-conrad-24165703) [http://octopart.com/peltier1-velleman-12638546](http://octopart.com/peltier1-velleman-12638546)

The first is pretty standard, the second is overpriced and not sealed (which will cause it to break easier - not recommended. Don't list the second.)

I'd put in the "description" field the type (Thermoelectric Generator or Peltier Element) and then add a second field for the universal ID. You could also add a third field for voltage range or a fourth for the casing material type (commonly ceramic/silicone). Thermoelectric generators are more rare, so you may not find so many of those. (I can't find any of the partners selling them.) Using the universal ID allows you to easily find more of the same part, allows you to quickly identify a specific element, and allows you to quickly find the number of stages, number of thermocouples, amperage, size, and type. The vast majority of the time the universal ID will be printed on the Peltier element itself and will be the title of the product. For some weird reason _one_ of the Adafruit Peltier elements has a strange, proprietary labeling system. (The two Octopart links and the other Adafruit one use the standard system.)

So, the table would look like

Description | Universal ID | Voltage Range | Casing | Link

Peltier Element | TEC1-12701 | 5V-7V | Ceramic+Silicone | [http://www.adafruit.com/products/1331](http://www.adafruit.com/products/1331)

Peltier Element | TEC1-12706 | 12V-15.5V | Ceramic+Silicone | [http://www.adafruit.com/products/1330](http://www.adafruit.com/products/1330)

Peltier Element | TEC1-12706 | 14V-16V | Ceramic+Silicone | [http://octopart.com/tec1-12706-conrad-24165703](http://octopart.com/tec1-12706-conrad-24165703)

(I'm not listing the overpriced, unsealed one.)

Could you add a table like the one above? I'd love it. Peltier elements are very common, used in beverage coolers, lasers, computer coolers, watches - <USER2> name it, they're there. There are also just a few types of Peltier element that make up the market (three very common ones are listed above) so they are a perfect candidate for the library.

Universal ID diagram: [https://upload.wikimedia.org/wikipedia/commons/4/47/Peltier_...](https://upload.wikimedia.org/wikipedia/commons/4/47/Peltier_IDs_explained.svg)</comment></comment></comment>


The Crazy-Tiny Next Generation of Computers (2015) - <AUTHOR> https://medium.com/backchannel/the-crazy-tiny-next-generation-of-computers-17e89e472839 <comment><USER2> Like all new technologies, environmental and health hazards are usually learned in a hard and painful way. For example, I love the history of semiconductor development, but simultaneously, I also recognize that a large number of semiconductor fabs in the 1970s operated by Intel, AMD, Fairchild, HP, National, Commodore, etc, are now superfund sites. At many sites, cleanup works are still ongoing today. And usually it was not a result of malice, but inexperience - many operational and regulatory safeguards were simply not established - in fact, many leaks were only discovered decades later. I summarized some of these incidents in a HN commment at [0] if you are interested.

Following the same line of thought, I wonder how dangerous dust-scale computing is, biologically and environmentally. In general, there are a lot of ongoing research projects on the safety of nanomaterials, and have already showed the potential hazards cannot be ignored [1]. In the particular case, it appears to be just a relatively conventional MEMS chip that we are familiar with, not some radically new and different nanomaterials, so [1] doesn't apply here, but the question of "what will happen if these chips enter the environment (air, soil, water) and biosphere" remains, especially if these are going to be used at an industrial scale, and will be intentionally introduced to the environment for remote sensing. The worse case scenario - as bad as plastic in the 20th century?

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

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

<comment><USER3> That comment of yours is great. It's amazing how much damage can be caused by these leaks. A bit frustrating given that the tank's only job is to not leak.

<comment><USER2> A related article on the health effects of these TCE leaks in the Silicon Valley.

* In Search of the Cookie Dough Tree

[https://web.archive.org/web/20130523092702/https://www.aaron...](https://web.archive.org/web/20130523092702/https://www.aarongreenspan.com/writing/essay.html?id=88)

</comment></comment></comment><comment><USER4> I'd love to buy compute power by the millilitre.

What do you think are today's major roadblocks to dust-scale computing? e.g. Power harvesting and storage? Scaling down activators for motes to "get around" and "do things"? Tooling to coordinate thousands of nodes on a common task? Bugs (as in insects that might eat your node)?

<comment><USER5> > What do you think are today's major roadblocks to dust-scale computing?

Feather dusters and vacuum cleaners.

More seriously: this is the type of technology that likely has few applications on it's own, but will probably find its way into something bigger.

</comment></comment><comment><USER6> What do we do when every dust mote is sensing and giving off wifi signals in our houses?</comment>


The Social Network Bust: What I learned from my job interview with Facebook   - <AUTHOR> http://www.thebitsource.com/infrastructure-operations/the-social-network-bust-what-i-learned-from-my-job-interview-with-facebook/ <comment><USER2> It's good that the author prepared him or herself so thoroughly, but in my experience, someone like Tom Cook would not waste time asking a new candidate how to scale Facebook. That's like preparing for your interview with NASA by studying how they built the Space Shuttle. They _know_ you aren't going to have experience there.

What they want are people who understand the fundamentals of how the computer and the OS works, who can diagnose problems correctly, who know modern sysadmin tools. They can teach you the ins and outs of their macro-scale systems on the job.

<comment><USER3> To expand on your point, They aren't looking for people who know the current bleeding edge (in scaling, say). Instead they need people who can continue to define the future bleeding edge.

<comment><USER4> Who are usually the same people.

<comment><USER5> More likely a subset. Just because you can read up on what other people have done and implement their ideas, doesn't mean you can come up with your own, better, ideas.

<comment><USER4> I don't know. Taking in the context of this discussion, it would mean someone with vigor and no understanding of basic CS concepts can come up with breakthrough in distributed computing. This is in spite of tens of thousands smart people who actually know the stuff and been researching it for years standing where they are now.

Just does not sound very probable.

EIDT: OK it's not quite what you've been arguing about. Yes, not everyone familiar with the field is going to ever push the envelope. My point was that the chance of an outsider there is quite small.

<comment><USER5> I think that was my point. Understanding the cutting edge within the field is necessary, but in no ways sufficient, to have what it takes to push the envelope. And if you need to hire someone to push the envelope then you need to look beyond simply what they know when hiring.

</comment></comment></comment></comment></comment></comment><comment><USER6> > What I slowly understood while I was talking with Tom Cook was that this was > not a discussion on scalability on a macro scale, however it was it was > discussion of scalability on a micro-scale. I was not prepared for some of > these questions, since some of these questions were Computer Science > fundamental. It took me a short while to re-calibrate myself, and try not to > sound like I was bullshitting my way through an answer, and began some of my > retorts with , "From my experience from C programming…"

I wonder if he could've answered, "Oh my, I spent two weeks preparing like crazy for this, but I was working and reading nonstop on scalability, and focusing more on showing you hands on what I can do on collabedit." Maybe he did, but it sounds like he just tried to play it off when the interview went in another direction - if you research/prepare like a madman, my god, you've got to let the interviewer know how dedicated you are and how much you want it. If the interview goes in a different direction than you planned for, you could still possibly guide it back towards what you're strong in, or at least get a mention in of how dedicated and prepared you are for this, and how much you want it.

<comment><USER7> Unlikely to work. Companies will just invoke the "false negative better than false positive" heuristic.

<comment><USER8> Companies - even ones that use the "false negative is better than false positive" heuristic - would also rather that you ask enough questions and adapt them to the candidates background so that you can rule out "false" anything.

This can work if you really are an expert at something but just got a bad interviewer or bad interview question. The tricky part is that you have to _be an expert at something_. I wasn't really seeing this from the author's blog post - experts typically wouldn't go for a bunch of blog articles and YouTube videos to learn more than a cursory overview, they'd look for the source of existing open-source libraries and implement a couple projects on their own.

<comment><USER9> There's also something to be said for specifically targeting areas a candidate is not strong with to see how they handle their weakness. If you clam up, get defensive, or try to bullshit your way that's an automatic fail from my perspective. I don't want to spend 8 hrs/day working with any of those 3 personality types.

<comment><USER10> I've interviewed a lot of people, but I've never seen one that didn't BS just a little bit.

What annoys me is outright lying, like saying on your resume that you worked on some cool-sounding project, but your role was to get coffee for the people doing the actual work. What annoys me more is that when you do the same thing, but with something that doesn't even sound cool, like "converted a database to a CSV file". (I am not making this up. I saw this on someone's resume and thought, "hey, at least they're honest... maybe we can guide them towards being useful". Nope. The candidate had clearly never even typed code into a computer before.)

Interview questions I find relevant:

      * reverse a C string
      * what do you hate the most about your favorite language
      * if you could spend a week trying something new, what would it be
      * what projects are you working on in your own time right now

It is amazing how poorly people do at the middle two. Getting the first one wrong, I can understand -- you have to know how to program, and most companies will hire bad programmers if they can BS a little. The last one, fine, you have a three hour commute and eight kids, and you don't even like programming or making things.

But really... you can't think of anything you hate about your favorite language. Do you _ever_ write any code? Nothing? Not one single, solitary thing? Nothing annoys you in the slightest, tiniest bit? LIES.

And... you can't come up with some BS about what you want to learn? You have no ambition in your life? You care so little about your field that if we gave you money to learn something, you wouldn't do it? You're not curious about "Web stuff"? You have no interested in Scala? Really? _Really_?

Programmers, I've found, are very, very rare.

<comment><USER11> Out of curiosity, how long does it usually take people to answer the second question? I'm talking about good candidates, not people who don't code.

I'm asking because I've actually seen this question mentioned before, and each time, I spend some time thinking about it (as applied to Python). But it honestly takes me some time to think of problems with Python; not because it's perfect, just because I don't spend every day thinking "hey why can't it do _this_ ".

<comment><USER12> I always miss anonymous functions when coming back to python after a bit of perl or javascript.

If you use multiple languages regularly surely there are some things in each language which you think is better in the other ones?

<comment><USER13> Anonymous functions in Python are what immediately popped into my mind. I do embedded work and mostly use C, but a lot of the problems with C actually make since when you have less than 1 kB of RAM. I'd prefer to use Lua for building test applications and the like, but I keep going back to Python because the library support is tremendous in comparison.

In any event, I think the question of what problems you have with your favorite language is at least a good conversation starter. It would be nice to know that those kinds of conversations are easy and interesting to a candidate. Although, that isn't necessarily a requirement.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> The author/candidate may have ten years' experience, but he still sounds a little naive:

(1) He seems to have (twice) gone into intensive studying mode without first doing research on what questions facebook was likely to ask him at that stage. He seems to have instead guessed at what they were going to want to talk about.

(2) _For a computer geek, the Facebook site/system resembled the UNIX system. And I just love NIX. Wall == wall command on unix. Message == mail. Photo and video viewing permissions was dependent upon groups or individual USER_ID rights. The thousands of external sites using an API to connect to the Facebook internals, reminded me of service ports on a given system._

^ These analogies are not useful from the perspective of actually understanding how facebook works.

Admirably, he has learned from his experience, and is taking steps to correct what he was probably lacking with respect to the position he wanted.

<comment><USER15> Martial arts analogies too. Someone who uses "kung fu" metaphors has seen The Matrix one too many times; I never hear it from people who actually do do a martial art.

<comment><USER16> "Kung fu", translated literally from the Chinese means "hard work". So you may be misinterpreting the writer's intent. He didn't strike me as some pseudo- martial arts meathead.

Perhaps you've never heard someone use the word kung fu to describe their martial art, because their art wasn't of that particular Chinese tradition?

Personally I thought the writer's usage was apt, given that he had newly dedicated himself to a difficult path of work.

</comment></comment></comment><comment><USER17> Don't you just love it how often all of us practical programming types who are too cool for school, realise that getting a CS degree/education is pretty damn useful as soon as a real problem comes your way.

<comment><USER18> Well I have a CS degree, and I value it quite a bit, but honestly it's a second order concern in industry. The first thing is, can you write and debug code in a production environment? This is something that university just doesn't teach you; as long as you have the intelligence to understand the theory, the professors will prod you in the right direction on the assignments.

Now, once you can code your way out of a paper bag, then the question is do you have the CSCI fundamentals to apply the best known solutions to difficult problems. Facebook has their pick of the litter, so it makes sense that they might spend more time validating CSCI knowledge, but for most companies that are hiring this would be a very poor metric to go by.

<comment><USER17> While this is true, I have never needed to explain CS stuff in an interview, it is also true that very often when faced with a tough algorithmic problem even the little CS foundation my few years of formal education in the field have granted me helps quite a bit. If nothing more than the fact I know what to google for.

It's surprisingly easy to google for solutions once you know what you're looking for instead of searching descriptively :)

<comment><USER19> Ha, you said it man. Looking back I began to realize that this was the biggest benefit of my degree.

Technically, a homeless person could dig in at a terminal in the library and teach themselves anything they needed to learn about computers. However, first they'd need to know what to look for and by God that was difficult before I spent 4 years talking to people who worked with computers all day. I think my time on Reddit actually enriched me there a bit, too.

<comment><USER20> You figure out what you need to learn by doing something, which is why working on a project is so nice.

<comment><USER18> In today's day and age, it's true that Google will likely lead you in the right direction. However there really is no more efficient way to get a mental lay of the programming land than a quality CS program. Dynamic programming algorithms for example, are something that very few will ever stumble into on their own. You might get lucky when Googling, but it's not the same as having a mental model of the breadth of CS fundamentals.

<comment><USER20> Sure, but I still think it's more efficient to learn while you work on something real. When you do this there is less waste on certain topics you never encounter, and because you _need_ what you're learning it's better absorbed and understood. It's just this method is less practical for employers since they just want someone already equipped with what they need.

</comment></comment></comment></comment></comment></comment></comment><comment><USER21> From reading this post, it sounds like Facebook missed out on a hire it probably should have made. Commitment, motivation, intelligence, and learning skills are usually more important predictors of how someone will perform in a job than their pre-existing knowledge base. Of course, those things are very hard to measure through a standard application and interview process. At the same time, I am a bit surprised that questions about threads and interprocess communication were challenging for a senior systems engineer with ten years experience. Still, I think if I was in Facebook HR, after reading this blog post, I might decide to give the guy a call back and give him another chance, assuming it really was just his lack of knowledge about some technical issues that resulted in his rejection.

<comment><USER22> Yeah, I also got the impression that the author's technical background was slightly weak. Trying to cram on scalability questions using YouTube isn't going to give them the same background they'd get from hacking on real projects.

But having interviewed programmers, I'm deeply impressed by the author's work ethic. Probably less than 5% of people I've interviewed have spent even 30 minutes preparing. I'd love to have employees who approached problem solving with that kind of gonzo determination and resourcefulness.

<comment><USER23> If you're hacking on a real project where do you get solid scalability experience? Unless you hit gold and, say, create a social network that explodes like wildfire...

I got the impression the author had a strong practical sysadmin background, was interviewing for a sysadmin position (this wasn't totally clear), and had some technical chops. Interviewing him on CS101 seemed weak.

<comment><USER24> To be frank, the red flag for me was that his scripting had gotten rusty.

Perhaps I'm biased because I spend so much time in front of a computer, but I can't imagine ever getting rusty at scripting unless I'd left the industry totally and gotten rid of my computer. There's simply too many simple tasks that are made much easier with ad-hoc scripting. I don't think I could make it through a week without writing an ad-hoc script, be it something as simple as transcoding videos to MP4 for playing on devices, finding some files with specific criteria, renaming and classifying photos based on EXIF data, etc.

<comment><USER25> To be honest, I know exactly how it can get rusty. For a little background, I'm a sysadmin at a large healthcare company. I'm no slouch when it comes to scripting. I've written my own automation scripts that use Perl:DBI and a MySQL back-end to automate most of my daily functions. I know how to create a database schema from scratch, populate the tables, and generate CRUD apps from them.

Still, even getting that deep into it, there are 1 or 2 month stretches of time where I do no scripting at all. I might be deploying a 100TB SAN somewhere, building Oracle database clusters (using automation scripts I wrote months ago in cfengine), doing firmware updates, fixing network issues, helping VMware admins figure out their boxes, etc.

The problem with a sysadmin's life in general is that there is way too much stuff to do to focus on scripting or coding 8 hours a day. Some of us love that stuff, but when you've got a brand new SAN, blade chassis, or servers to deploy, they don't just deploy themselves. There are probably only a few shops that actually embrace the sysadmin coder, or devops as I've heard it called.

Your point about ad-hoc scripts is well taken. I use one-liners on a daily basis, even for general computing tasks like renaming files, or to manipulate data using awk or sed. This is not what I would call real scripting, but it does require a fundamental understanding of the tools.

</comment></comment></comment></comment></comment><comment><USER26> I hope people don't start referring to Facebook as "The Social Network". It's the name of a movie and there's really no reason to use it instead of just saying "Facebook".

<comment><USER27> Or if they insist on calling it that, at least shorten it to "Social Network." It's cleaner.

<comment><USER28> How does this get downvoted? I know we're all about good conversation but in bursts, stuff like this completes this forum. This comment was clever and I laughed out loud. If a lighthearted comment is good enough to do that, it's worthy - at very least - of not getting downvoted.

FYI this is a reference to the movie - if you haven't seen it, it won't be funny and is probably worthy in your mind of being downvoted. If you have seen it, you're hitting thumbs up.

<comment><USER29> Yes, I think it was not clear to everyone that izaidi was quoting, from the movie, Sean Parker's advice to Zuck about thefacebook. A comment that can pithily cast an ironic sidelight on a sober request for precision in the naming of a company by alluding obliquely to the movie whose title is being rejected is, as you say, clever and funny, and, as I think you imply by saying it "completes the forum," interesting to those with an intellectual curiosity that is not strictly one-dimensional. Your comment, I take it, is being downvoted because it's complaining about downvoting, however legitimately. And this one probably should be because its author takes the whole question seriously enough to compose this excessive reply.

<comment><USER28> Yeah I was subject to the "Curse of Knowledge" - believing everyone who read this thread was someone who had seen the movie. I added an edit likely after you started this and before you published regarding that very fact.

</comment></comment></comment></comment></comment><comment><USER30> I've been in a similar position as this guy, and really-- you never know what goes on behind the scenes when you don't get hired. His feelings about what he may have missed might or might not be accurate. We have no idea what the other candidates looked like. That 20k number doesn't really mean much once you've made contact.

</comment><comment><USER31> I interviewed at Facebook in the August of 2009. I believe that I'm precluded from discussing the technical details of the interview and any secret sauce I may have seen (N.B. Mark Zuckerberg's office is a fishbowl in the middle of the office.) In the end, they decided not to offer me a position and I believe I'm better off for it. Without any reservations I can say that Facebook employs a lot of extremely bright people -- it sometimes feels like a terrible waste of intellect.

A friend at FB suggested that I apply for a Software Engineer position. I sent in my CV and was granted an initial phone interview with a recruiter. Unlike the anonymous article writer, I went into my interviews cold. After as bit of a funny phone interview -- at one point I answered a question by saying "I have no idea how <thing> works. I'd read the manual" -- I was granted an on- site interview. (It probably didn't hurt that I was in Palo Alto in preparation for some climbing at Tuolumne Meadows).

My first technical interviewer was whip-sharp, having worked with a well known programming language designer. The questions he asked were designed to assess my basic knowledge and problem solving abilities. About an hour after this interview concluded, I was phoned by the HR person to schedule a more in depth battery of interviews the following day.

The next day I met with four interviewers, each from a different group. Two of them were fabulous; enthusiastic and engaged. One stuck me as bored by the whole interview process. I overheard the fourth interviewer outside the room complaining to a co-worker about how his time was being wasted interviewing me. (Gee, thanks.)

Parts one and two went swimmingly. With one of the awesome interviewers, I flubbed an easy algorithmic design question. I set out on the wrong angle of attack, and he did a great job of nudging me back. I made my best of my talk with the grumbly interviewer and worked through an open ended problem that required some domain specific knowledge. Some interview practice wouldn't have hurt, but I don't think that there would have been a benefit from technical preparation.

After a few days out in Yosemite Valley I chatted with my initial HR contact who informed me that FB would not be making an offer. So it goes.

Sorry to keep things vague, I did agree not to give out their interview questions or engage in industrial espionage. If anyone has specific questions, I'd be happy to try to answer them.

</comment><comment><USER32> _What is load exactly? What does it mean? Discussions on threads and processes. How can two processes communicate with one another?_ [...] _I was not prepared for some of these questions, since some of these questions were Computer Science fundamental._

I enjoyed this article, and I rooted for the author to get the job, but I was somewhat confused by this part of the article. Perhaps the questions he mentioned weren't what he considered to be "Computer Science fundamental", but were there just for flavor. The questions mentioned seem more like Unix fundamental -- the load one in particular I ask almost every time I interview a sysadmin.

<comment><USER19> Is that just about the load averages you'll see in top?

<comment><USER32> That's what I assume he was talking about -- the average number of processes/threads in the run queue or waiting on disk I/O for the sample period.

</comment></comment></comment><comment><USER33> A nice piece, indeed. From experience both as an interviewer and an interviewee, my favorite set of questions to be hit with (or bring up) are:

1) What have you done and what did you like/dislike about it? 2) What sort of an environment do you thrive in? 3) What is an area that has most challenged you and how did you deal with it?

Specific technical chops are one thing, but anyone who is smart enough will be able to/driven to pick up the areas where they may be lacking. For me, the real test is in what adversities/challenges have they run into/how they articulate it/and how did they get themselves out of it.

Someone who can't tell a story and can't convey how they dug themselves out of a whole will not meet my initial threshold. Specific solutions to specific problems (or brain teasers) that are likely to come up in an interviews provide a very minor insight into who the person is and what they can/can't do. For me, how they convey their experiences will tell much more.

</comment><comment><USER34> Nice piece. Of all of the take away's from this article, I think the author's outlook at the end is what is most important. Being able to learn and grow from an experience is so important, particularly in the tech field. Regardless of the outcome, no time was lost if it's spent increasing your knowledge base. Kudos.

</comment><comment><USER35> I find it odd that Facebook solicited an application from the OP and then proceeded to run him through the usual interview process. Maybe that was a result of some FB script seeking more qualified applicants.

Either way, it seems that FB missed out on an opportunity. Scientists don't already know all of the answers to novel problems. And, someone can make a Phd look like an idiot if you quiz them on topics not related to their specific field of study.

Why are established computer scientists forced to take a week to study up for trivia-like interviews? I would expect trivia-like interviews for young professionals straight out of college. But, for more established professionals, it would seem that a "tell me about your achievements" discussion would be more applicable.

Hiring decisions are best weighted on the person as a whole, and less on the testing scores.

Edit: typo fix

<comment><USER36> > Why are established computer scientists forced to take a week to study up > for trivia-like interviews?

I don't ask anything in an interview that my colleagues didn't automatically learn long ago, just from being good at their jobs. Cram studying for an interview is a waste of time—unless you're trying to get a job you aren't qualified for.

> But, for more established professionals, it would seem that a "tell me about > your achievements" discussion would be more applicable.

Once I had met an appalling number of candidates who are incapable of putting sensible pseudocode on a whiteboard, I stopped taking for granted that everyone actually can write what they claim to have written. I don't know where these people are coming from or why, but they're definitely out there, and over-represented in the candidate pool (because everyone is trying to avoid hiring them).

</comment></comment><comment><USER37> I don't think interviewing for highly technical positions at Facebook could be "prepared" for, not especially, by reading so many books about high-level subjects (ex: Visual Basic).

A better approach would be books involving POSIX standards, implementations of all (current) OSI layers, compsci algorithms, how compilers work, and how various runtimes work for various interpreted languages and how to debug them (PHP, Ruby, Python, Obj-C, Java). None of these have anything to do with unix system administration, user permissions, shell scripting, or web servers.

"What I slowly understood while I was talking with Tom Cook was that this was not a discussion on scalability on a macro scale, however it was it was discussion of scalability on a micro-scale."

You maybe misunderstanding macro and micro; scale is a function of both, not one or the other.

</comment><comment><USER38> Having read many similar accounts of interviewing at Google I can't help but believe the two companies share the same hiring sentiment: they'd rather leave more qualified engineers on the table than risk hiring a bad one. If I were the OP I wouldn't (and it doesn't seem like he does) feel bad about it but instead use it as a determinant in viewing one's granularly-acquired skillset in contrast to the skillset involved in working at one of these gigantic companies. Its a good perspective to have regardless of if you end up working for them or not.

</comment><comment><USER39> Nice piece. I don't think the writer can be faulted; (s)he prepared quite valiantly for the interviews.

</comment><comment><USER40> I'd say that someone with the experience and interest that the author had would be exactly the type of person I'd like to interview for the Hadoop opening at Mozilla. Finding someone who is always looking for new things to learn and ways to do so is unfortunately rare.</comment>


Have US Income and Wealth Inequality Actually Increased? - <AUTHOR> http://chawkins.org/post/75162580456/have-us-income-wealth-inequality-actually-declined

<comment><USER2> This is a side show. Whether or not the statistics show rising or falling income inequality is irrelevant.

There __is __massive income inequality. Its trajectory isn 't nearly as large of an issue as the status quo, which is pretty dismal.

Until that gini coefficient is much better, and we have no one living below the poverty line, we still have a ton of work to do.

This article seems to be making a shallow point only to encourage inaction on the core problem. The trajectory of income inequality is a red herring trying to distract us from the harsh reality of our present wealth, opportunity, and income inequality.

The right thing to do is to keep working to solve the core problem. Restore the US to a progressive tax system instead of regressive. Pass living wage laws. Improve the social safety net. Maybe even consider doing what Switzerland is considering, and give everyone (rich and poor) a reasonable guaranteed income as an alternative to expensive and sometimes ineffective welfare programs.

At the small scale, volunteer locally, especially anything having to do children and improving their education.

Unfortunately, along the way we will be fed a constant stream of garbage articles like this, held up with straight faces by a chorus of onlookers telling us there is no problem to fix. Look outside. There are poor and hard working people out there who aren't being rewarded for their hard work and are severely struggling. No amount of fancy statistics bending will justify inaction.

<comment><USER3> Institutionalized theft isn't an acceptable solution. Such class jealousy does not, historically, end well.

<comment><USER2> Calling progressive tax systems institutionalized theft is incredibly clever, and incredibly false.

No one who has wealth created it by themselves. You don't print your own money, you don't extract wealth from a vaccum. Wealth is built by extracting that wealth from a shared economy. Asking those who were able to extract the most wealth to help the most in paying to protect this shared system, and help those who were exploited by it, is not theft.

You are being intellectually dishonest. I would not be surprised if deliberately so.

<comment><USER4> > Asking those who were able to extract the most wealth to help the most in > paying to protect this shared system, and help those who were exploited by > it

That is already what happens. e.g. the top 10% by income already contribute >70% of the total federal income tax revenue.

<comment><USER5> > That is already what happens. e.g. the top 10% by income already contribute > >70% of the total federal income tax revenue.

Which would be meaningful, if "federal income tax" was the only federal tax, or even the only federal tax on income.

</comment></comment></comment></comment></comment><comment><USER6> Where is this guy getting his numbers? From wikipedia[1]: 2011 had a pre-tax Gini coefficient of 0.477 whereas 1967 had 0.397 (the first year the Gini was actually measured), demonstrating considerable increase in inequality.

There's an Economist article[2] that puts the US's pre-tax Gini at 0.57 for 2013.

So yeah, income inequality has increased astronomically, undeniably, conclusively. The author seems to write off income inequality as a metric because it "doesn't track societal progress" and "isn't helpful for policy making purposes" both of which I would strongly reject.

First, let's explicitly state the axiom that money is equal to political and social power. An increasing Gini means we're moving farther and farther away from an equitable society and closer to feudalism or a plutocracy where the richest control everything via their ability to manipulate the political process with money. I think that it's fairly clear that our current government has been repeatedly bought, sold, and manipulated by a few plutocrats with special interests for the sake of making them and their buddies even more money. If you're looking for an example to support this argument, consider the billionaire Koch brothers and their political empire.

Next, let's consider what a rising Gini means for policy making purposes. If you are a policymaker whose primary constituents are the rich, a rising Gini is a stat which you can bring out at your fundraisers (a bit ridiculous, sure) to show that you're on average channeling wealth into the right pockets with your policies. On the flip side (and more realistic side), if you're an Elizabeth Warren type, you can connect your constituent's cries for a stronger safety net to a statistic which proves they're not just perpetually hungry for more. If you bring a piece of information like a Gini to the public, it's possible to win over people who may have been skeptical about supporting stronger social programs because they're unwilling to support "deadbeats" or the like-- after all, this Gini thing says that even if they're productive members of society, they're still not as well off as before. Their piece of the pie has actually become smaller over time, and their complaints are not baseless.

That said, I like the author's plug for basic income. The sooner we chop up the concept of capitalism and move on to a more just system, the sooner we'll unlock the underclass from the survival grind and free them to pursue more socially useful ends.

[1]: [http://en.wikipedia.org/wiki/Gini_coefficient](http://en.wikipedia.org/wiki/Gini_coefficient) [2]: [http://www.economist.com/blogs/democracyinamerica/2013/11/in...](http://www.economist.com/blogs/democracyinamerica/2013/11/inequality- america)

<comment><AUTHOR> Thanks for digging into the numbers with me. Actually there are 1947 Gini numbers floating around, and the multiple sources including government census data, and world bank numbers are all slightly different, which in itself is a problem.

I understand the concern about political power, and agree that this is the best reason to be concerned about inequality. I think I have a long term solution to that problem that I will announce later this year.

</comment></comment><comment><USER7> [edit: the author has since corrected the Gini definition in the article]

I've never encountered the Gini coefficient before, but reading up on it on Wikipedia, the author appears to have the measure flat backward.

"A score of "0" on the Gini coefficient represents complete equality, i.e., every person has the same income. A score of 1 would represent complete inequality, i.e., where one person has all the income and others have none."

Source: [http://en.wikipedia.org/wiki/List_of_U.S._states_by_Gini_coe...](http://en.wikipedia.org/wiki/List_of_U.S._states_by_Gini_coefficient)

Also see the chart here, with the US rising toward inequality ever since the 60's. Again, the caption says "where 0 is perfect equality, and 100 is perfect inequality." [http://en.wikipedia.org/wiki/Gini_coefficient#Gini_coefficie...](http://en.wikipedia.org/wiki/Gini_coefficient#Gini_coefficient_of_income_distributions)

<comment><USER8> Glad someone else caught that. Another glaring issue with the Gini coefficient is that it tracks income inequality and not wealth inequality. It's well known that the rich don't make their money via income but rather through ownership.

TL;DR: The Gini coefficient is a shitty metric to make any conclusions, especially when taken in a vacuum.

<comment><USER5> > Another glaring issue with the Gini coefficient is that it tracks income > inequality and not wealth inequality.

Well, people more frequently cite the Gini coefficient of income, but you can take a Gini coefficient of any measure, including wealth [1].

> It's well known that the rich don't make their money via income but rather > through ownership.

The money made through ownership _is_ income -- making money is equivalent to income. Its true that source of that income is different for the richest than most other people (most of the richest derive most of their income through capital, while most of the rest derive most of their income through labor), but its still income.

[1] Gini coefficients of wealth are, e.g., presented here: [http://en.wikipedia.org/wiki/List_of_countries_by_distributi...](http://en.wikipedia.org/wiki/List_of_countries_by_distribution_of_wealth)

</comment></comment></comment><comment><USER9> Lots of things are wrong with this article, not least of which is that the writing is so unclear that it's hard to make enough sense of his argument to point out what's wrong.

That said, the main takeaway here is that the author doesn't consider growing income disparity to be a problem. Perhaps a better way to look at it is this: growing income disparity is a symptom of the real problem, which is that the economy hasn't really done all that well since the end of the 90s.

A strong economy that's serving all individual participants well would result in shrinking income disparity over time. The fact that we don't see this is indicative of some major problems.

<comment><AUTHOR> Author here: I write for mostly my own thinking and hadn't actually put something out in a week so wanted to get it out the door. Sorry to the extent it was unclear.

I think psychologically you are correct in that most people would probably be less upset with income disparity if the economy was doing better overall. We are in a long, slow recovery.

I do disagree with your main premise. I think in the technology economy we would see increasing income disparity over time. My only real solution to this problem is basic income.

</comment></comment><comment><USER10> A new blog post [1] from Ross Douthat addresses this in an interesting way.

Part of the inequality picture is that demographic changes in recent decades, with women becoming a significant part of the workforce, and the rise of single-parent households, has skewed _family_ -based inequality significantly. In the referenced article, Douthat considers the underlying causes of that. Essentially, are the changing rules in society (taboos about sex, marriage, divorce, etc.) dooming those who already don't have a strong societal backdrop to guide them?

[1] [http://douthat.blogs.nytimes.com/?module=BlogMain&action=Cli...](http://douthat.blogs.nytimes.com/?module=BlogMain&action=Click&region=Header&pgtype=Blogs&version=Blog%20Post&contentCollection=Opinion)

</comment><comment><USER11> I have yet to see a solid discussion of wealth inequality that removes the outliers. Given that 85 people have half the worlds wealth, it would appear to me that a study which looks at the numbers without those people would be more interesting in helping us understand how our systems and markets are moving wealth for 99.999% of us.

Even still, the goal should not be balanced wealth but continual upward mobility for all people - or more aptly distance from poverty. There will always be rich and poor but the standard of living and equity of opportunity for the poor is what we should focus on. It is more important that a poor kid have good education, healthcare and living standards than it is to rebuke the rich guy for having a yacht. It seems we are in this stage where we recognize something isn't right but we are immaturely blaming the rich guy and saying he should give his money to the poor kid rather than finding real solutions to the plight of the poor kid.

<comment><USER12> The problem is that poverty is continually redefined as standard of living and opportunities increase.

Poverty used to be living in a shanty town during the dust bowl where you could possibly die of dehydration any day. Poverty now is living in a house where you only get basic cable and don't have the money to buy a nice steak dinner.

<comment><USER3> Some 87% of world population lives below the "poverty line" as defined in the USA.

Without everyone sharing a sensible consistent definition of the word, the discussion will come to nothing but blows.

<comment><USER13> Different places in the world should have different poverty lines related to the purchasing power needed to acquire at least the basic living needs: food, shelter, and clothing. (and healthcare)

Comparing the numerical figure of the poverty line around to world is nonsensical.

<comment><USER14> Absolutely agree, having a single worldwide standard would put ALL US residents in the 'wealthy' category when compared to places like Haiti.

<comment><USER3> I'll agree there. Haitians, on the whole, are indeed objectively poor: given the limited land to work with, the large & growing population, and the high cost of import/export infrastructure, there just isn't enough resources to support residents. This vs the USA, where there _is_ enough resources, and the best answer to poverty in most cases is MOVE to where there are sufficient opportunity & resources (like the Dakotas, where even mundane jobs pay very well because they can't get enough people to do the work needed to facilitate extracting wealth from natural resources).

</comment></comment></comment></comment></comment></comment><comment><USER15> Income inequality is not a bad thing. People are very different in what they are capable of producing.

If you want to produce paper napkins by hand 10 hours a week and someone else chooses to make them by machine 40 hours a week and its the same product, why should you both take home an equal income?

"Oh" they say "we just want to make it less unequal than it is, not equal." Isn't that why we pay all these taxes and have all these government programs?

It literally never ends.

<comment><USER16> Why should you take home a different income? I don't feel that the fact that I'm a computer scientist, which at the moment happens to pay well, ethically entitles me to more resources than other people. If anything I feel a bit guilty taking home several times the income of the guy who's been showing up at 7am every morning to replace my roof; my job is a lot more pleasant and enjoyable, and yet that in itself isn't reward enough, but I get paid more too!

One plausible answer could be, "because there's no workable way of making it otherwise". I could buy that, although then we're arguing pragmatics, not ethics.

<comment><USER17> For better or for worse, the guy working hard to replace your roof is easier to replace than you are - this is because you have a skill set he doesn't that takes a lot of time and resources to develop. In addition, your work (likely) brings in more money to a company than his. As such, you get paid more.

As an aside, have you ever noticed that (certified) plumbers and electricians make a lot of money? Same reasoning.

I don't have a problem making more money now that I made myself valuable. I started off in retail, where you literally are one step away from being replaced by an automated kiosk.

<comment><USER16> > I don't have a problem making more money now that I made myself valuable.

That could be part of our differences in outlook. I don't feel I've really "made myself" valuable, I just have skills and interests that happened to be valuable. I've liked computers since I was a kid, and am reasonably adept with them. When I grew up, somewhat to my surprise, I found out people paid quite a bit of money for that kind of thing. It feels sort of like playing careers on easy-mode; even if I were to totally wash out into a low-end programming position, I could still easily make high 5 figures slinging web templates or Ruby or PHP or something.

Other people who're harder-working and more talented than me make less, because they happened to be adept in the wrong thing (art or carpentry instead of coding, say). Were the era different, it could be the other way around, so I have a bit of a "there but for the grace of god go I" outlook: there are times when engineering was a poorly paid blue-collar occupation and skilled painters were highly rewarded. In that economy, I'd be poorer and some of my friends would be richer, through no change in our own skills...

<comment><USER17> That difference in early career opportunities could easily be a part of it (the difference in outlook). I'm just saying there is no need to feel guilty - the world and the economy are fairly malleable, and it doesn't value hard work as much as it values hard work at something that is in demand, so 'following your passion' may not be the best way to make money. As you have said, it has never really been much different, it's just what people demand has changed.

</comment></comment></comment></comment></comment><comment><USER18> Wouldn't any capitalistic economy simulation end up with a great inequality, once it's run for N amount of time?

You can't just do a 'reset' and re-allocate everything. And even if you did, the people who are smarter (sneakier?), work harder/more, and are luckier are going to end up winning out again.

</comment><comment><USER19> > (2) Policy should look at what the post-redistribution (in the form of > taxes, credits, subsidies, etc) income and wealth disparities are. It seems > as though that is lost in the conversation.

It's pretty hard to have a conversation about a problem and how to fix it, when the data being flung around doesn't measure the problem, and doesn't measure the fix either.

As an example, looks like any data on poverty (often the basis economic inequality conversations) from US govt prior to 2011 is useless to measure the "war on poverty", because it doesn't measure most of the financial efforts to fight poverty. [http://www.nytimes.com/2011/11/04/us/experts-say-bleak- accou...](http://www.nytimes.com/2011/11/04/us/experts-say-bleak-account-of- poverty-missed-the-mark.html)

</comment><comment><USER20> Stopped reading after his absolutely incorrect Gini definition.

<comment><USER21> Yeah, his Gini definition is backward.

</comment></comment><comment><USER22> I do think income inequality is an issue. In part because people above a certain threshold have no pain when they get towed, get a traffic citation or go to the doctor. The people below suffer greatly and enter economic ruin even if they get a parking ticket. Hell, skipping jury duty isn't even an issue, $1000 fine is nothing for some.

On the other hand people aren't really starving, and I don't see things like the Haymarket Affair yet. Maybe it won't be an issue this time around because factory farming has fed the world for cheap enough that people don't starve.

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

</comment><comment><USER23> For those caught up in what I think is a cause-de-jour, income inequality, I'll pose these two questions:

1\. Is anyone worse off because Mark Zuckerberg is very rich? 2\. If policies to reduce income inequality made the poor worse off, would you be in favor of them?

<comment><USER22> Yes, if he brings in hoards of H1Bs lowering the salaries of software engineers across the board.

[http://www.fwd.us/](http://www.fwd.us/)

</comment></comment><comment><USER24> This isn't very convincing one way or the other. As the title suggests there are two components to the issue, 'income' and 'wealth'. This argument only looks at the income half and in the process conflates the two terms. Income can't tell the whole story by itself.

For example if you own your home outright, your living costs will be substantially lower than someone who has to rent or has a mortgage. In other words having wealth allows you to substantially lower the income you need for the same standard of living. This argument doesn't account for wealth at all as I'm reading it.

</comment><comment><USER25> > It is unclear if there actually has been a enormous shift in incomes in the > way it is being presented in the media.

It's pretty clear: [http://www.youtube.com/watch?v=akVL7QY0S8A&t=6m30s](http://www.youtube.com/watch?v=akVL7QY0S8A&t=6m30s)

</comment><comment><USER26> Using 2009 is very problematic. It's when the SP 500 bottomed out.

He picked the worse possible moment to measure rich people wealth in the past 40 years.

I don't know his deal, but it's obvious that income inequality has been on the rise around the world the past 40 years.

</comment><comment><USER27> > _There has been a lot of press recently about income inequality diverging > recently. There are two issues with this. First, it isn't a metric that > should matter._

Sure, let's just leave it at that then...

</comment><comment><USER28> Beyond having it backwards, gini over persons looking at timescales going to the 40s is probably distorted by women entering the workforce massively increasing the baseline equality.

</comment><comment><USER29> Are welfare payments included in income of an individual or not?

<comment><USER30> If the US gave all the money to people below the poverty line (46.5 million; 15% of the population) $175 Billion we would have zero poor in US. That is a 1% of our GDP. Military budget = $700 billion in comparison.

If we just gave $3,000 to each person below poverty we would have 23 million people above the poverty line.

Please tell me that this can't even be a question on inequality of the super rich and the poor? Next thing Global Warming is a fraud?

<comment><USER3> Problem is, those who's own wealth/power depends on a large population in "poverty" will just redefine "poor" up - as they've done many times already. The value of money would reduce because recipients thereof trade nothing for it, thus raising the cost of goods accordingly, pushing some things back out of reach of the "poor".

We already give an enormous amount to the "poor". If you make less than a given amount, various welfare programs will fill the gap (some pushing you WAY above the line). It's enough that another problem is arising: many on welfare receive so much that they can't afford to work, lest they lose all those benefits and reap less net income as a consequence.

Again, I come back to the issue of defining the word "poor". As is, it's not objective relative to the recipient's survival.

</comment></comment></comment><comment><USER31> Every chart and data set I can find says the US has returned to 1920's levels of income inequality since things started getting worse in the mid/late 1980's.

So, yeah, income and wealth inequality have gotten worse, and are at a level that was considered very bad for social stability.

</comment><comment><USER32> I'm not all that impressed with graphs over several decades of certain government-published statistical indices, because they have a nasty habit of redefining them, and those fractures are almost never indicated on the charts.

So when you show me the Gini coefficient over time, the first thing I wonder is if either the methods of calculating it or the methods of collecting the data have changed during that time.

Anecdotally, it is readily apparent to me that inequality is increasing, and not just in wealth or income. It is also increasing with respect to health care, legal processes, job satisfaction, consumer confidence, and trust in institutions.

It feels a lot like the guy trying to figure out what is stuck to the seat of his pants in the instant before the bartender gives him the bum's rush out the door. And the bartender himself doesn't realize that the guy is the only one left in the bar that actually intends to pay for his drinks. So really, just cruel and sad all the way around--America since 1970.

The only people who now have the ability to change the system see absolutely no benefit to themselves in doing so.

</comment><comment><USER33> This type of statistics is useless, it does not include army of unemployed people.

<comment><USER34> Fine, I'll bite.

How do you figure "it does not include army of unemployed people"? Census data should reflect members of the population regardless of employment status.

<comment><USER35> From a quick read of the census website linked, it appears that what unemployment data there is comes from the 2000 Census, whereas income data is much more current and numerous. That's rather concerning. It's also the case that unemployment numbers are always underreported, something which gets worse during periods of extended unemployment. The government bases its estimates primarily on unemployment benefits filings. People who are unemployed beyond the period of available benefits don't get counted. So, the unemployed are somewhat factored into the study, but it doesn't seem like a very clear picture of the situation. That's my prima facie judgement at least.</comment></comment></comment>


Wolfram's New Theory of Everything Unites Quantum Mechanics, Relativity and More - <AUTHOR> https://www.discovermagazine.com/the-sciences/new-theory-of-everything-unites-quantum-mechanics-with-relativity-and-much <comment><USER2> No it absolutely doesn't.

Steve Wolfram is awfully full of himself.</comment>


Defects in Products from China: Ignorance, Incompetence, and Fraud - <AUTHOR> https://assembly.com/blog/ignorance-and-incompetence-why-china-low-quality/ <comment><AUTHOR> Some thoughts from the field on the causes of contract manufacturing defects. Not trying to be narcissistic, just hoping to contribute to the community in some way.</comment>


Ask HN: What do you use for SaaS billing in Rails app? - <AUTHOR> What services or gems are you using and how? <comment><USER2> Cheddar's billing API has an open-source Ruby wrapper that might be helpful for integrating billing into your product.

Cheddar: [https://gtchdr.com/2BvZQuF](https://gtchdr.com/2BvZQuF)

Ruby wrapper: [https://gtchdr.com/2Bw0k3X](https://gtchdr.com/2Bw0k3X)

</comment><comment><USER3> I did a Stripe integration for a SaaS product. It took about a month to set Stripe up and figure out our licensing structure. Overall, it was pretty painless (their docs are good) and it has run without major intervention since I set it up roughly a year ago.

</comment><comment><USER4> I used braintree and rolled up a monthly subscription and the ability for customer's to buy digital products</comment>


Academia.edu looking to hire rockstar Flash developer - <AUTHOR>

Academia.edu, currently in beta, is a San Francisco-based social networking site for academics. The founders are from Oxford and Stanford. Academia.edu has raised venture funding from some of the leading investors in Europe:

 - Saul Klein (the 'Ron Conway' of Europe)
 - Brent Hoberman (founder of Lastminute.com which was acquired for $1bn)
 - Oxford University
 - NewMedia Spark (UK VC firm)
 - Hugo Burge and David Soskin (founders of Cheapflights.com)

 We're planning a really cool Flash application for Academia.edu. Version 1 of the app should take approximately a month. We're looking to hire a Flash developer to code the app. Initially we are looking to hire on a contract basis, but if things go well (we hope they will), we'd want to make an offer for a permanent position.
Candidates must:

 - Have CS background or equivalent experience
 - Have 1 year+ Flash experience
 - Be passionate about developing great products
 Academia.edu is in Rails - you'll need to be able to handle the interactions between Rails and Flash. We'd prefer it if you were in San Francisco, as we can then discuss the app in person, but we'll definitely consider candidates outside of San Francisco. We want to work with the best people, wherever they are.
If you could be interested in building a cool Flash application, send Richard an email at richard -at- academia.edu <comment><USER2> how did you manage to bend the .edu registration rules?

per <http://www.educause.edu/edudomain/eligibility.asp> : "Only postsecondary institutions that are institutionally accredited by an agency on the U.S. Department of Education's list of Nationally Recognized Accrediting Agencies (see recognized accrediting bodies) may obtain an Internet name in the .edu domain."

I am aware that "[a]ll institutions holding names as of October 29, 2001 in the .edu domain will be allowed to keep them without regard to institutional eligibility requirements at this time." but am sure that this would not cover the sale of an .edu domain to a startup company not engaged in education per se.

Care to clarify?

<comment><AUTHOR> Sure - our company registered the domain before 2001 (in 1999).

<comment><USER2> This cannot be true since your company Academia Inc. was not incorporated until 11/14/2006.

<comment><AUTHOR> Our organization registered the domain in '99 and incorporated in '06.

<comment><USER2> _cough_

The history of whois and nameserver records indicates otherwise...

Anyway, good luck basing your business on what seems like an illegally acquired domain name.

<comment><USER3> The only comments being made by curmudgeon appear to be today and about this post. This seems like a troll account.

<comment><USER2> Exposing an obvious lie is now considered trolling?

</comment></comment></comment></comment></comment></comment></comment><comment><USER2> For those interested, compensation seems rather generous:

"We are offering a salary of $80,000, and options of between 4-5%." (cf. [http://www.kdnuggets.com/jobs/2007-09-11_academia_7_senior.h...](http://www.kdnuggets.com/jobs/2007-09-11_academia_7_senior.html) )

<comment><USER4> Re: generous....

It depends on what the options are priced at and what the vesting period is.

</comment></comment><comment><USER5> I knew I shouldn't have given up the Guitar :(

</comment><comment><USER6> What is a "Rockstar Developer"?

<comment><USER7> I dunno, but half the Flash/Flex/Actionscript ads I see say that.

"We need an Actionscript Rockstar! You must be comfortable with AS2, AS3, scissor-kicks, and fending off web standards groupies."

<comment><USER8> Among the titles I've seen;

Ruby on Rails Ninja.... Actionscript Rockstar... Java Guru... C++ Genius... C# Jedi... PHP junkie...

and finally

HTML Whiz</comment></comment></comment>


Things Bosses Wish They Could Tell Employees - <AUTHOR> http://www.linkedin.com/today/post/article/20121205140005-20017018-10-things-bosses-wish-they-could-tell-employees <comment><USER3> Here are some things that I wish I could have shared with some of my people in the past:

1\. I really cannot explain why there seems to be no long-term direction, and I'm leading you and the rest of the team on completely unrelated initiatives every single quarter. But I suspect it's related to the earnings calls.

2\. I'm not thrilled either that there is no money this year for any office's annual Christmas party, despite the fact that the executive team just received huge bonuses.

3\. Yes, it makes no sense that a company this small actually owns a private jet.

4\. There's a very strong likelihood that in two weeks the company will announce an across-the-board 50% paycut for all employees for a period of four weeks, just so the company can meet some kind of payroll. And you and many, many others will of course resign. I, on the other hand, like a moron, will not resign.

5\. You're absolutely correct. The CEO is quite possibly insane.

<comment><USER4> #4 ... what. I take it that goes hand in hand with #5.

</comment></comment><comment><USER5> Best thing I ever saw a boss actually tell their employees was the budget breakdown for the coming year (CEO speaking to all 30 staff, so obviously not a publicly listed company).

Staff saw themselves charging out $100/hour and being paid $40/hour, and felt they were being ripped off by the owners. First item on the budget was a rent bill of almost a million dollars, secured personally by the owners.

Changed the whole money dynamic in the business, as suddenly everyone understood that the cost of running a business was more than salaries and the occasional photocopier repair.

<comment><USER6> What? $1m for 30 workers?

180sq ft per worker (average) * 30 = 5400sq ft. so $185.19/sq ft

Please tell me that either: it was used for more than just office space (so it was like 50,000sqft), or that it was plated in gold. Because if this was normal 5400sqft office space, then I'm pretty sure he lied.

For comparison, I'm in Denver. Office space averages $20/sqft[0].

Edit: found this article: 17 most expensive places to rent office space[1]. For $185/sqft, you would have to be in the most expensive place in nearly the most expensive building in the US.

[0] [http://www.metrodenver.org/metro-denver-economy/monthly- summ...](http://www.metrodenver.org/metro-denver-economy/monthly-summary/2012)

[1] [http://www.businessinsider.com/most-expensive-places-for- off...](http://www.businessinsider.com/most-expensive-places-for-office-space- america-2011-9?op=1)

<comment><USER5> I rounded some of the figures, so for the sake of accuracy:

[1] They had 32 staff, and were planning to add 5-6 more and have the ability to add 10-12 more if they wanted

[2] It was a fairly nice office - not gold plated, just really spacious (multiple meeting spaces, kitchen, showers, library etc)

[3] The rent was closer to $850Kpa than $1M - again, rounding

[4] They signed their lease in the middle of a commercial property drought

Factor those in with your average sq ft per worker and I think it gets closer to $100/sq ft. I couldn't tell you the actual square footage - you may be right that they were paying above the odds; she (CEO was a woman) would argue that it was worth it for the location, the cultural elements of spacious working conditions, and the capacity for future growth.

[Edit: I also changed the charge out rates and salaries, to de-identify the client and because they were beside the point of the story.]

</comment></comment></comment><comment><USER7> The micromanaging comment near the end demonstrates that he is, for all he thinks otherwise, at best a mediocre boss. Why? Well average bosses try to bring their worst performers up to par. Great bosses try to improve their best performers to be even better.

It turns out that, for effort put into someone, you can get about the same percentage improvement. But 10% more of a star results in a superstar. 10% more of crap is still not good.

<comment><USER8> Hm. For sales anyway. For the assembly line, the weakest link is absolutely the critical point to address. Etc.

<comment><USER7> Absolutely true, it depends on your circumstances.

However take something that sounds like a step in an assembly line. Data entry. One of the examples in _First, Break All The Rules_ was a data entry group that took the woman who had the highest data entry speed (and also significantly lower error rates) and worked with her to see if they could do anything to improve her work, or to replicate her abilities.

In the end she sped up considerably to what they would have thought previously to be an utterly impossible speed, with even lower error rates, and several other people on her unit wound up with data entry rates that exceeded her initial already stellar levels.

The fact that a job is simple and boring does not mean that it can't be improved. And the people who both have the most potential to be improved, or to improve it are generally the people who already are best at it.

<comment><USER8> True, but still not an assembly line. That example was piecework, which has its own pattern.

</comment></comment></comment></comment><comment><USER9> I wish there was an opposite post entitled "Things Employees Wish They Could Tell Bosses," but it would probably just be misconstrued as whining.

Sometimes, whining is a good thing. It brings real, honest feelings to the surface. Of course, as an employee, if you don't feel like you're being listened to, you tend to stop volunteering ideas.

<comment><USER10> to be fair, a lot of this post came across as whining too.

<comment><USER11> People who accuse others of "whining" are usually doing the same. They're expressing indignation at the possibility that the other side might have standing in some kind of negotiation.

The technique is to divert attention away from _what_ is being said by complaining about _how_ it is being said.

</comment></comment></comment><comment><USER12> Should be retitled "Things Bosses wish their employees believed about them".

I'm glad to work at a place where these issues are moot, but the typical company seems to operate under the mantra: "The floggings will continue until morale improves". Oddly, morale never improves.

I have a feeling that if bosses acted in a way that made them like them that the rest of the issues would go away.

Government had to instill the productivity benefits of 40 hour work weeks in law before companies would believe it. Most their businesses are failing because of their own policies and refusal to adopt new methods that would solve their problems, instead they keep doing the same thing, and getting the same result. (And then blame their employees for that result)

<comment><USER13> No, the government didn't have to force the 40 hour work week, as business, in particular, Henry Ford, found the benefits through studies he conducted at his factories. He found that productivity dropped after 40 hours of work per week, 8 hour per day.

Henry Ford also found that his labor expenses dropped (specifically, training costs) when he raised the typical wages to twice the industry average (to a whole $5/day!). He paid his employees twice the going rate, and worked them half as hard in order to make more profit. The greedy bastard!

(<http://www.worklessparty.org/timework/ford.htm>)

<comment><USER14> A single instance doesn't demonstrate an industry trend. At the time the US made those labor laws what was the trend in the industry?

If anything, this demonstrates the stubbornness of many businesses. Despite seeing ample evidence of success by a peer they tend to ignore it and continue the old ways.

<comment><USER15> True that a single instance doesn't demonstrate an industry trend, much less a trend in general. However, Henry Ford did have thousands of employees, and does provide some indication to human motivation. However, that was in the early 1900s in the US. Human motivational factors in the early 2000s may be quite that different.

</comment></comment></comment></comment><comment> M8R-fhlcjm The article missed:

I found an eager soul in a foreign country with similar skills for less than half your salary.

<comment><USER16> And: when I walk down the aisle and hear browsers clicking as I approach, I DO know you were on Facebook.

<comment><USER9> What if I was on GitHub, looking at the kind of software the boss doesn't see the importance in using/writing?

Sometimes, "goofing off" is actually your employee preparing for a future job at a different company. Maybe even his/her own.

</comment></comment></comment><comment><USER17> I've worked at several companies that went under; each because of internal mis-management. Even in the current economy, its been clearly poor decision- making.

At every company, the company culture came from, and reflected, the top. If you don't like the company, look in the mirror. Actually, that's what the company is for the execs, a mirror.

</comment><comment><USER18> > You don't have to lower your voice and pretend to be working really hard > when I walk by.

Not quite. There is a second order effect here and that is letting others know that the boss knows that goofing off is ok sometimes.

That's a very important point. The boss might personally agree and not care (as long as work is being done), but they might not want to show or make that explicit to others that they allow that. So if you goof off in an obvious way in front of others and the boss is present he will be forced act to tell you to stop it or worse he'll make a new company policy about goofing so as not to seem like he is a bad boss how lets others waste time.

Always be very careful about putting the management on the spot and forcing them to act. That is how really thick rule and guide books end up creating.

</comment><comment><USER19> I feel like in many companies that I've worked for that I'm sure these are the cases but the sentiments never trickle down to me and therefore I take them as myths. I know it would be awesome to receive market pay, a great work environment, and be respected but I understand that there's a business to be run and that it's difficult to juggle all of those balls at the same time.

This leads me to another question regarding market pay: if an employer wants to pay you market pay and it's currently lagging is it bad practice to be proactive about compensation increases? Or is it a smarter business decision to milk the arbitrage for all it's worth? I understand that this is potentially a bad idea--once the increase is in effect then it's generally permanent. Pay rarely is elastic in the opposite direction.

<comment><USER20> The important thing to keep in mind is that you're not there to do you boss a favour and he's not giving you a job to do you a favour (that doesn't mean you can't, or shouldn't, be nice to each other, and do each other favours - <USER2> it's more of a long-term view of the situation).

Market pay is whatever you can make someone pay you. If your current employer can't pay you more, either you're not producing enough value, or the value you're producing is being inequitably shared with others in the organisation. Very often in engineer-driven, but non-engineer-led business, this could mean a too big or over-paid sales force. Both is a sign of inefficiency.

Chances are if you are on good terms with your boss, you can explain this to them. If they still can't give you a raise, explain that the situation compels you to dip your feet in the water (ideally, you've already done this as the conversation has the potential to sour the relationship with your boss).

As always, pull a patio11 and make sure you can articulate the value you're adding in terms of the money you bring in - this always comes easy to sales people (because, well, it is easy - they physically bring the cheques into the building). You've never just refactored component X. You've refactored component X which allowed your team to deliver high-value feature Y to the client, which you believe was brought up as a deciding factor in the contract renegotiations.

<comment><USER21> DON'T EVER tell your boss you're compelled to dip your feet in the water.

1\. If you ask us for a payrise, we have to weigh the cost of the payrise vs the risk you WILL leave to get one somewhere else. We KNOW that if we turn you down, there's a chance you're going to be looking elsewhere.

2\. By telling us you're dipping your foot, you've essentially given your notice. You just haven't told us when you're leaving. As of right now, you're not going to get the same level of attention and I'm looking for your replacement.

2b. If you don't tell us you're dipping your foot in the water, but we can't give you a pay rise, you'll get more attention and you'll get anything else we can possibly give you. We might give you a nicer desk, or replace your PC before anyone else's, or take you out for coffee more often.

<comment><USER22> Buying a new desk/computer or increasing amenities is a short-term solution. He will still be looking for the better salary.

<comment><USER23> Depending on the situation that is probably ok with some people. I think a lot of it would come down to quite a few variables.

I can't think of any clear examples but I'm sure there are cases to be made.

</comment></comment></comment></comment></comment><comment><USER24> Why would a boss wish they could tell employees this stuff instead of just _actually telling_ them?

<comment><USER11> Managerial mystique, or the art of making decisions without explaining them, because the lack of explanation projects authority.

Good boss: "I need you to be in at 9:00 because, even though there's no need for you to work specific hours, this office environment is ridiculous and gossipy and people will think less of our team if people come in later, and that means we have less autonomy in hiring. I'd be happy to let you work on whatever you want from 9 to 11, but I really need you to be in the door at 9:00, and if you can't do that, then we'll have to discuss moving you to another team."

Typical management theory says that this is bad because you're making what you have the authority to demand a negotiation instead, so more common is this...

Asshole manager: walks over to your desk. "I need you to be in at 9." Walks away.

<comment><USER25> I have had to be in by 4:30 am literally because the ship was sailing. I worked for a Marine colonel who told me to come in whenever I wanted so long as I got to meetings and did the work. 10 years later I still run into people who ask me if I hated working for him as much as they did. I have had mandatory work hours that I had to log (no more than 80 hours a week). I have had a job that was embarrassingly easy and all I had to do was but my meetings on a group calendar (Outlook ruined the experience).

This things don't matter. What you are doing with your life matters. Are you still trying to change the world?

</comment></comment></comment><comment><USER26> Looks like LinkedIn is down at the moment.

</comment><comment><USER27> Maybe I'm a really bad boss, or just stupid... But why _can't_ he tell this to his employees?

</comment><comment><USER28> Ah, some propaganda to start the morning.

</comment><comment><USER29> "Don't click on linkbait."</comment>


Ask HN: What is your 2020 resolution? - <AUTHOR> <comment><USER2> Do fewer things.

      - learn fewer programming languages/frameworks (winner F#)
      - work on fewer side-projects (limit 2?)
      - consume less HN

      [Non-top priorities = avoid at all costs list -- Warren Buffett]

Do a few new things.

      - invest money (not just time) in side-projects (get serious)
      - be more social
      - more physical activity
      - (already started) minimal animal protein diet for health
      - (already started) practice playing bass

</comment><comment><USER3> To not have any "new years resolutions" and prepare for 2030 instead.

</comment><comment><USER4> Lose weight, and actually keep it off this time. I lost about 70lbs a couple years ago, but then I went and gained 30lbs back. Going to try to remove that, then not gain any back.

On the tech side, maybe go deeper into python.

<comment><USER5> Here's a tip. Reduce the size of you service plates and never eat out of the food container. If you want more just serve yourself more. Don't fall into the fallacy that you'll save some effort by serving yourself more. We tend to eat what we see even if we are not hungry. Good luck.

</comment></comment><comment><USER6> \- PRK eye surgery

\- move to a new house that I have been working for the past 3 years

\- finish a trail running marathon in less then 7 hours

\- start learning and maybe find a job on Elixir (Phoenix)

</comment><comment><USER7> 200 hours of yoga practice.

Maintain a consistent weekly running mileage. (>15)

Various Crossfit skills (handstand pushups, double unders)

Learn to swim again.

Pursue another degree.

</comment><comment><USER8> Stop drinking. Specifically binge drinking. Everything else will fall into place after that I think.

<comment><USER5> Here's a tip. Don't drink alone. And get out of a situation where you might start to binge drink. Don't trust yourself into controlling yourself.

<comment><USER8> Thanks. And nope, I almost never drank alone. Only when it's a "big night out" with a few friends is when it happens. And a few turns into a lot. So I think I will just not even start when I go out now.

</comment></comment></comment><comment><USER9> Stop taking my phone with me when I get up to get some water or go to the bathroom.

</comment><comment><USER10> To not have one.

</comment><comment><USER11> To complete my 2017 resolutions.

</comment><comment><USER12> Learn Machine Learning.</comment>


FenOS to support all binary formats and hardware - <AUTHOR> http://www.myfenos.com/

<comment><USER2> This is very suspicious and if I had to make a bet, I'd say it is a scam.

First "Exo Core Intelligent Operating System" is marketing BS. Which would be fine except they claim to be architecture agnostic which if true requires expensive cpu emulation. This is a warning flag, a real OS would warn about the massive downsides.

The big flag is they are taking "pre-orders" and are taking money only through Skrill. Skrill is the new name for moneybrokers, one of the only methods for unreversable money transfers. The only thing more suspicious would be BTC only payments.

</comment><comment><USER3> The term "Exo Core Intelligent Operating System" sounds like meaningless marketing babble. I would have liked to believe otherwise, but there is no substantial technical information that I can find on that website. If anyone can explain what the author means, I'd appreciate it.

In terms of OS security, an integrated anti-virus package and a claim that no "external protection software" is needed to make the OS secure don't exactly inspire confidence.

</comment><comment><USER4> Know nothing about this but among other concerns this feels really vaporwarey.

Did I miss something?

</comment><comment><USER5> Apparently this is a YouTube video demonstrating FenOS and the author(?) is replying to comments.

[http://www.youtube.com/watch?v=ookZ59I9EyY](http://www.youtube.com/watch?v=ookZ59I9EyY)

<comment><USER6> The Windows application have orange borders, very similar to VMWare Unity mode.

</comment></comment><comment><USER7> Well, cross-platform compatibility is one thing - but cross- _hardware_ compatibility?

> Technically, FenOS is an Exo Core Intelligent Operating System that runs on > any common Hardware architecture such as "x86", "x86-64", "POWER-PC" and > "ARM

dafuq? x86/-64 are common enough, but how will they run 64-bit apps on a 32-bit system without a shitload of translation? Same for PPC (who uses this arch anymore) and ARM (x64)?

I'm really interested in how they're planning to solve this challenge. Just look at ReactOS and how incomplete it is after years and years of development...

</comment><comment><USER8> "all binary formats out there" is a bit of a sensationalist title and doesn't seem to be referenced anywhere on the site.

</comment><comment><USER9> Even if it is real, I can't imagine them implementing that many APIs correctly. They also don't mention anything about OS versions, and I don't know why anyone would bother reimplementing some of those ancient APIs.

</comment><comment><USER10> There only seems to be one person working on the OS.

</comment><comment><USER11> The binaries are kind of the easy part. Will it work with my laptop's #$^@ wifi card? That's the hard part.

</comment><comment><USER12> I love that Solaris is such an essential target... Oh, how I miss you, Sun...

<comment><USER9> My school still has an old SPARC machine running Solaris 5.x that all of the CS students have accounts on. They even have gnome installed and X11 forwarding enabled, but I'm not sure why...

</comment></comment><comment><USER13> I REALLY want to believe this isn't vaporware.

<comment><USER13> Expanding on this. If target release is September 2014. I can't see how there is not functional prototypes that could be released for people paying. Considering the target market, why not release it. I'd be willing to pay for the early access. Not so sure I'd pay for a pre-order.

</comment></comment><comment><USER14> Interesting. Wine and ... Darling?

</comment><comment><USER15> Android not covered?</comment>


Ostinato – A Network Traffic Generator and Analyzer - <AUTHOR> http://ostinato.org/ <comment><USER2> Ostinato has been there for a while. I think it is the best you can get as opensource traffic generator, if you don't have access to commercial hardware (Ixia, Spirent, etc.).

Also, there's this project based on the VPP dataplane technology, which could help you achieve higher bitrates. Personally I haven't managed to play with it yet: [https://trex-tgn.cisco.com/](https://trex-tgn.cisco.com/)

<comment><USER3> > Also, there's this project based on the VPP dataplane technology...

vpp is primarily based on dpdk, specifically, it utilizes their pmd etc. implementation for fast packet-io in userland. ostinato too has this feature i.e. line-rate packet generation using dpdk.

<comment><USER4> Do you have good links you can share in regards to vpp and leveraging of dpdk?

<comment><USER3> > Do you have good links you can share in regards to vpp and leveraging of > dpdk?

sorry for the late reply. here are a few presentations:

1\. [https://dpdksummit.com/Archive/pdf/2016USA/Day02-Session04-T...](https://dpdksummit.com/Archive/pdf/2016USA/Day02-Session04-ThomasHerbert- DPDKUSASummit2016.pdf)

2\. [https://www.ietf.org/proceedings/96/slides/slides-96-bmwg-10...](https://www.ietf.org/proceedings/96/slides/slides-96-bmwg-10.pdf)

you might be able to find videos on youtube as well. lemme know if you need some more info, and i can dig some more.

</comment></comment></comment></comment><comment><USER5> Kind of off-topic, but I learned the musical term "ostinato" just a few days ago, here: [https://www.youtube.com/watch?v=8IX1jSVmaAs](https://www.youtube.com/watch?v=8IX1jSVmaAs)

I just discovered that guy's (Rick Beato's) channel the other day. I normally find music theory very dry, but even my kids found that video interesting.

<comment><USER6> Etimologically "ostinato" is Italian and literally means stubborn.

As the other musical terms it's pristinely copied.

</comment></comment><comment><USER7> Linux kernel has a built-in traffic generator, can rarely find documents on how to use them, but I heard Spirent etc is using that to test their generators in the making

<comment><USER8> pktgen [0, PDF]? This was the first I'd heard of it. Sounds interesting.

[0] [https://www.kernel.org/doc/ols/2005/ols2005v2-pages-19-32.pd...](https://www.kernel.org/doc/ols/2005/ols2005v2-pages-19-32.pdf)

<comment><USER7> yes it's the one

</comment></comment></comment><comment><USER9> Can someone recommend good lectures/book for full stack network programming focused on concepts but with enough detail? Something similar to The Elements of Computing Systems by Nisan & Schocken, but for networks?

<comment><USER10> [https://www.amazon.com/Foundations-Modern-Networking-SDN- Clo...](https://www.amazon.com/Foundations-Modern-Networking-SDN- Cloud/dp/0134175395) [https://www.amazon.com/Cloud-Networking-Understanding- Cloud-...](https://www.amazon.com/Cloud-Networking-Understanding-Cloud-based- Networks/dp/0128007281/) [https://www.amazon.com/Interconnections-Bridges- Switches-Int...](https://www.amazon.com/Interconnections-Bridges-Switches- Internetworking-Protocols/dp/0201634481/) [https://www.amazon.com/TCP-Guide- Comprehensive-Illustrated-P...](https://www.amazon.com/TCP-Guide- Comprehensive-Illustrated-Protocols/dp/159327047X/)

After spending a lot of time trying to find resources to get up to speed on this networks domain for work, those are the best resources I've found.

<comment><USER11> I have the TCP/IP Guide you mention and I'd recommend it, also. I'd also suggest if the asker buys the Interconnections book, that they also go ahead and buy the TCP/IP Illustrated (volumes I-III) as well. They are textbooks, to be sure, but if you find this stuff interesting, you'll be happy to have them. Very high knowledge density, though a bit outdated. And while we're talking about some of those old textbooks, I'd recommend the newest editions of the Unix Network Programming books [0], the earlier editions of which were really helpful to me when I was learning this stuff way back in the day. I'm a huge fan of textbooks, so maybe I'm going a bit overboard, but I did really enjoy them.

[0] [https://www.amazon.com/gp/product/013490012X/](https://www.amazon.com/gp/product/013490012X/)

</comment></comment></comment><comment><USER12> Its got a pretty quirky UI but it works. I've used it when load testing some packet processing apps.

Why was this posted, It's a generic packet generator?

</comment><comment><USER13> Ostinato == stubborn in Italian but I wonder if it is named after the ostinato music pattern [1], also of Italian origin but different context.

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

<comment><USER14> Yes, it is based after the musical term! I explained a bit about the naming in the Packet Pushers Podcast[1] (around the 6:40 mark)

Disclosure: I'm the creator of Ostinato

[1] [http://packetpushers.net/podcast/podcasts/pq- show-52-using-o...](http://packetpushers.net/podcast/podcasts/pq- show-52-using-ostinato-to-craft-your-own-packets/)

</comment></comment><comment><USER15> There is also Scapy [0], fully operable from the Python shell. [0] [http://www.secdev.org/projects/scapy/](http://www.secdev.org/projects/scapy/)

</comment><comment><USER16> A few years back I was debugging a strange issue with an ethernet controller and Ostinato was absolutely crucial. Even with access to Ixia hardware I can't recommend it enough for packet generation work!

</comment><comment><USER17> How is the packet checking on this? What exactly does it check?

</comment><comment><USER18> I've usually used hping3 but ostinato is good

<comment><USER4> Those have slightly different use cases packet crafting vs load testing.

</comment></comment><comment><USER19> So there is people still using Windows XP. I like it better than the newer versions.</comment>