Hacker News Classics (2018) - <AUTHOR> http://jsomers.net/hn <comment><USER2> 'The PhD Octopus' is incredible. Can't believe the PhD was already a bankrupt concept in 1903.

[https://www.uky.edu/~eushe2/Pajares/octopus.html](https://www.uky.edu/~eushe2/Pajares/octopus.html)

<comment><USER3> What a great speech. Can anyone tell me what the "Mandarin disease" referred to by the speaker is?

<comment><USER4> I'll bet it's a reference to the Imperial Civil Service Exam[0], which in its later years became notorious in the same ways mentioned in the link. Government officials, who had all passed the exam, were known as Mandarins (at least to the West).

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

</comment></comment></comment><comment><USER5> I enjoy that it's a long list that is loaded in its entirety instead of using infinite paging or some sort of virtualization. It's simple and ctrl-f just works, unlike on say, twitter.

<comment><USER6> Infinite scrolling is the worst. It's such a pain to be forced to open all links inside new tabs as most implementations in the wild are breaking the "previous page" functionality of browsers.

It's such a joy to have to scroll down _n_ times to try to go where you were. It's even better when on some websites, the "infinite scrolling" is not sequential but somewhat randomized.

I understand it's way easier to scale pagination that way, but please, just stop.

<comment><USER7> Infinite scrolling, in its current form, needs to die. Please stop using it!

<comment><USER8> infinite scrolling is very bad! especially on mobile because on mobile you can accidentally tap on a link or whatever while swipping. happens to me all the time with the youtube app!! infinite scroll needs to go away!

</comment></comment></comment></comment><comment><USER9> coincidentally, HN has his own "Classic" page too[1] But it is focused on classic users. The idea is that users who have been around for a while will post quality articles. I just don't know how the threshold works.

[1] [https://news.ycombinator.com/classic](https://news.ycombinator.com/classic)

<comment><USER10> Ranking (and thus visibility) is dominated by the majority of accounts, so even if classic users submitted and voted on articles which reflected the early character of the site, they wouldn't get to see each much of each other's articles. Such a "classic" view can only work meaningfully (i.e. generating content that reflected the classic userbase) if classic users use it exclusively.

<comment><USER11> Any link to read up on this? Like what is "classic view", how exactly it's different from the main page, what are "classic users", what was the "early character of the site" like etc?

<comment><USER10> I write from memory when PG was doing these experiments, if you do a HN search over PG & classic should be able to dig it out.

</comment></comment></comment></comment><comment><USER12> The word I would use to describe this is, beautiful. Being able to place in order, casual or niche ideas that would become relevant up to 100 years later - as the effect of hundreds or even thousands of people reading them and discussing them in a modern context - is really striking.

Many of these ideas (alexander, feynman, NASA typography) are the kinds of insights that were only available to a rarefied audience at the time of their publication, but would go on to be the foundation ideas for really significant cultural changes. I'd say this has relevance well beyond this forum.

</comment><comment><USER13> I thought this was going to be a collection of classic HN Posts/Comments, like cperciva's Putnam comment[0] or the pessimistic dropbox comments (and the retrospective by the commenters).

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

</comment><comment><USER14> Of these, I'm just reading [https://www.wanttoknow.info/warisaracket](https://www.wanttoknow.info/warisaracket) again, and can't stop wondering how pertinent it is.

<comment><USER15> Very

</comment></comment><comment><USER16> >How I Turned Down $300,000 from Microsoft to go Full-Time on GitHub (2008) (preston-werner.com)

... Welp.

<comment><USER17> Nice read: [http://tom.preston-werner.com/2008/10/18/how-i-turned- down-3...](http://tom.preston-werner.com/2008/10/18/how-i-turned- down-300k.html)

<comment><USER18> And the comments: [https://news.ycombinator.com/item?id=5768408](https://news.ycombinator.com/item?id=5768408)

</comment></comment></comment><comment><USER19> wow there are some real gems there. Maybe to avoid the many duplicate url's run the whole list through something like a

                         |
                         v
      cat output |sort|unique

otherwise it'll be a lot of links repeated. (example _" Bertrand Russell: In Praise of Idleness"_ but many others)

</comment><comment><USER20> If you were confused like I was: the list is in chronological order.

</comment><comment><USER21> This list is awesome, but if it wants to function as a long lived archive or library, it should maybe point to the Internet Archive version? Many of the links are currently broken :\

</comment><comment><USER22> I clicked the first 4 links, 2 dead 2 alive. Linkrot is a shame

<comment><USER23> Arhives for those 2

[https://web.archive.org/web/20170910220313/http://www.lhup.e...](https://web.archive.org/web/20170910220313/http://www.lhup.edu/~dsimanek/hollow/tamarack.htm)

[https://web.archive.org/web/20121216101917/http://www.yorkto...](https://web.archive.org/web/20121216101917/http://www.yorktownhistory.org:80/homepages/1900_predictions.htm)

</comment></comment><comment><USER24> Any way to sort by points?

Edit - [https://hn.algolia.com/?query=&sort=byPopularity&prefix&page...](https://hn.algolia.com/?query=&sort=byPopularity&prefix&page=0&dateRange=all&type=story)

</comment><comment><USER25> Thank you for making this. I have opened a few links and all happened to be outstanding. Saved for the weekend reading.

</comment><comment><USER26> If your subs appear on the list three or more times, you might have a problem living in the present. (Spoiler: I do.)

</comment><comment><USER27> 107 comments from Feb 23, 2018: [https://news.ycombinator.com/item?id=16442888](https://news.ycombinator.com/item?id=16442888)

</comment><comment><USER28> Prior discussion: [https://news.ycombinator.com/item?id=16442888](https://news.ycombinator.com/item?id=16442888)

</comment><comment><USER29> I was freaked out by the fact that it has a green topbar - and thought that it had somehow sucked in my HN settings, which also specify a green topbar.

Turns out that it's just a coincidence. Yikes.

<comment><USER30> I wish the HN settings would also change the background of the Y icon to match the rest of the topbar.

</comment></comment><comment><USER31> This is wonderful.

</comment><comment><USER14> From [https://www.newstatesman.com/politics/2014/04/h-g-wells- it-s...](https://www.newstatesman.com/politics/2014/04/h-g-wells-it-seems-me- i-am-more-left-you-mr-stalin)

Stalin (to HG Wells): Planned economy tries to abolish unemployment. Let us suppose it is possible, while preserving the capitalist system, to reduce unemployment to a certain minimum. But surely, no capitalist would ever agree to the complete abolition of unemployment, to the abolition of the reserve army of unemployed, the purpose of which is to bring pressure on the labour market, to ensure a supply of cheap labour.

<comment><USER32> Surprisingly orthodox piece of economics there. The normal mechanism of controlling (wage/price) inflation through interest rates works by that mechanism indirectly.

</comment></comment><comment><USER33> Methinks sir has misplaced their regex given that everything starts from 1900.

<comment><USER34> FWIW, it's sorted by the year. There are submissions with articles from as late as 2010 at the bottom.</comment></comment>


What's the status on the Yo app? - <AUTHOR> Is it making money? Still able to raise money?<p>I'm very curious because the founder wrote some articles on growth hacking, but I can only see Yo as a fad and not a real business that will survive. <comment><USER2> Yo!

</comment><comment><USER3> money laundering yo!</comment>


Why Brandon Eich should step down - <AUTHOR> http://runtimeintrospection.tumblr.com/post/80909019367/brandon-eich-should-step-down <comment><USER2> The story just made international mainstream news (Channel 4, UK): [http://www.channel4.com/news/mozilla-chief-executive- twitter...](http://www.channel4.com/news/mozilla-chief-executive-twitter-gay- marriage-resign)

I'm strictly an amateur at nonprofit PR (press volunteer for Wikimedia), and I could shit better damage control than Mozilla's managed so far.

Seriously, you people. You had TWO YEARS' RUNUP! What _couldn 't_ you have done with TWO YEARS' RUNUP?

As a friend put it: 'I'm envisioning the board standing around with glassy stares, "I have no idea how this could have happened. We totally vetted his geek cred."'

</comment><comment><USER3> I read this and the linked articles several times, but didn't see any answer to the question posed in the headline.

I get that Eich donated to support Prop 8 in 2008; it caught my attentions traight away sinc I was on the opposite sid eof that debate. On the other hand, he says he committed to inclusiveness in both word and deed, and Mozilla makes no distinction between employees' living arrangements for the urposes of pension benefits etc. as is.

I get that various LGBT people who work there can't get with him as CEO, but I'm not clear on why this is. For all I know he may have changed his mind since prop 8 was passed over 5 years ago - lots of other Californians have, if opinion polls are to be believed. He wrote a blog post in 2012 defending his right to keep personal opinions and professional life separate, so chances are that he was still against gay marriage then and now, but I really don't know what his specific views are just from the fact of his having made a donation. Even if he has not, it seems to me that he's still entitled to hold a personal opinion that gay marriage is a bad idea as long as he doesn't promote or promulgate that belief in the workplace or in the Mozilla foundation's policies.

I did read Hampton Catlin's call for a boycott, but while trying to learn more about the issue I also read blogs from LGBT people at Mozilla who already work with Eich and say they're fine with him as CEO. Of course, people who are not fine with it should absolutely act on their convictions, as with any political issue, whether that means discontinuing working with someone whose views they can't abide, or calling for a boycott, or whatever. I'm less convinced that other people should be expected to act to suit those views, though.</comment>


Ask HN: Learning a new language - Is it appropriate at your current job? - <AUTHOR>

I work at a branding company doing web development and use PHP for all development because it's what I know and what I'm fastest with.
If I want to learn a new language to use at my job, is it appropriate to start a new client project with the new language or is it something I should learn on my free time until I become familiar with it?
The reason I ask is because I'd be using (or wasting) client/company time to learn something I can already do in another language. <comment><USER2> I've always gone this route in terms of learning new technologies. If I think a tool is essential or will make the project better in the long run, I use time on the job to learn it. An example would be backbone.js. I recently had to build a complicated UI, and didn't want jQuery soupe (even well tasting soupe), so I went about reading the backbone source and engraining all the details of backbone over a couple of days, then I built the UI and the client and our company benefited from having well-organized, clean code, that is easily maintainable, and also I think it would have been much more difficult in the long run to even build the interface without backbone. As far as languages go, I've never had the "need" to learn a new one for a project (usually Bash,C,C++,PHP,Javascript fit the bill for most anything), and so I've always learned new languages in my free time. Without knowing any specifics, I would caution against using a new language for a client project, since the goal is to build the best app that best fits the clients needs, and using a completely new language is probably going to give you unneeded headaches and not be the best code.

Just out of curiosity, what's the language your thinking about learning?

<comment><AUTHOR> Wanting to move more into ruby (and then rails). Not really a reason, just want to try something other than PHP and I have a bit of knowledge in ruby.

</comment></comment><comment><USER3> Why worry about it? It will only help your company in the long-run because you will be using your new set of skills on client projects.

</comment><comment><USER4> It's largely a question of internal standards and maintenance. If everyone else is writing PHP and you decide to build a site in Rails, you're creating a maintenance problem for everybody else.</comment>


An interactive tool for drawing UML diagrams based on syntax - <AUTHOR> http://www.nomnoml.com/ <comment><USER2> Looks nice! Compare plantuml.com and its tools.</comment>


Ask HN: Best API management solution - <AUTHOR> Considering features such as:

  * throttling
  * rate limiting
  * authentication and authorization
  * API usage analytics
 What are the experience of the collective HN crowd regarding the plethora of paid and open source tools out there? What are the pitfalls to look out for, and with which one(s) were the best experiences had? <comment><USER2> I am curious as to what tools your team has considered so far, where they partially met the requirements, where they fell short because context will provide relevant answers.

To put it another way, for Google the answer to the tooling question is form an inhouse team, include one of the fellows who wrote C to develop a performant garbage collected language, and then throw some of those quarter million dollar a year plus engineers at writing whatever tools you want. At the other end, some entrepreneurial idea person tells the contract PHP programmer to make it happen next week. In the middle is someone who hires a consultant and another person who combines Legos on AWS themselves.

Which is a round-about way of getting to the critical idea: the good solutions for your company must fall into a very narrow range of technical _and_ business criteria.

Good luck.

<comment><AUTHOR> Good question! I didn't include too much context in the top-level question to keep the discussion as broad as possible, and hopefully have advice applicable to others as well, but am more than happy to expand a bit here.

It concerns a large multinational in the transport sector. While we have built up a strong digital department, there's a lot of catching up to do, so the more 'batteries included' any given solution has the better.

On the other hand, it's crucial that we can extend any given tool as there will undoubtedly be unforeseen or non-default scenarios. For example: we'd love to perform some analytics on not just what customers are calling the APIs, but perform more detailed queries based on e.q. request parameters, geoIP, or perhaps even User Agent headers. It is absultely no problem to have to do this ourselves by performing raw queries on the database, and perhaps built our own dashboard around it, but again; if there's something that already covers a lot of these cases that'd be ideal.

The minimum required functionality is that the tool can operate as an authenticating proxy, only passing on requests when the e.g. OAuth2 headers are verified. Other security aspects, such as throttling and rate limiting are a requirement as we're dealing with systems that must be protected from unforeseen load.

Nice to haves are features such as autogenerated documentation pages, where clients can test the APIs from within their browser. On the other hand: rolling this ourselves using Swagger wouldn't be a problem either.

Research so far has included looking at some open source tools, e.g. Kong[1] from Mashable, apigee[2], reading up on Gartner's magic quadrant re. API management, and demos from IBM and CA. Costs of these vendor tools aren't a major concern, lack of modifiability absolutely is. I'm currently leaning towards Kong, but am wondering if others have interesting experiences to share.

[1]: [https://getkong.org/](https://getkong.org/) [2]: [https://apigee.com/](https://apigee.com/) [3]: [https://www.gartner.com/doc/reprints?id=1-2DC669J&ct=150409&...](https://www.gartner.com/doc/reprints?id=1-2DC669J&ct=150409&st=sb)

<comment><USER3> [https://www.3scale.net/](https://www.3scale.net/) comes with a lot of batteries includes: user login, user dashboard, email handling, if you wish even payment. It's ideal if on the engineering side you just want a simple API call (to 3scale) that returns 'yes/no' for a given API key and everything else can be configured and designed by a non-engineer. We got something running in two days. It's easy to outgrow 3scale though. We're moving away from them because we handle millions of requests/day (saving money).

You might want to check out [http://apiaxle.com/](http://apiaxle.com/). The folks at [https://mapzen.com/blog/apiaxle/](https://mapzen.com/blog/apiaxle/) seem happy. Near the end of the blog post they point to [https://aws.amazon.com/api-gateway/](https://aws.amazon.com/api-gateway/) as well.

<comment><AUTHOR> Thanks! Definitely going to look at these. Can't believe I wasn't aware AWS came with an API gateway service as well.

</comment></comment></comment></comment><comment><AUTHOR> Previous discussion related to Kong [open source product from Mashape]: [https://news.ycombinator.com/item?id=9451947](https://news.ycombinator.com/item?id=9451947)

</comment><comment><USER4> I'm not aware of a solution that does all this, but for analytics , I have tried Keen.IO [0] which was nice.

[0] : [https://keen.io/](https://keen.io/)

</comment><comment> thomas-b Been playing with [https://tyk.io](https://tyk.io) (Open source and SaaS), quite happy about it.</comment>


The What and Why of ZEnterprise Millicode - <AUTHOR> http://archive.ibmsystemsmag.com/mainframe/administrator/performance/millicode_rogers/ <comment><USER2> Excerpt:

"Microcode can be used to enable an inexpensive low-end machine to look at software just like an expensive high-end computer. An example of this from the S/360 era was the Model 30. Physically, the Model 30 was an _8-bit machine with 8-bit registers and 8-bit data paths_. The architected general-purpose registers were not hardware registers at all, but actually resided in core memory. Yet, _by using microcode in a read-only store (ROS), the Model 30 presented the full basic S /360 architecture—in which the registers and operations are defined—as if it were a 32-bit machine_."

8-bit to 32-bit, just like magic...

Probably a lot slower though, but magical nonetheless...

Great article!</comment>


Startup Conversations With Myself: What Should I Work On? - <AUTHOR> http://onstartups.com/home/tabid/3339/bid/8853//Startup-Conversations-With-Myself-What-Should-I-Work-On.aspx

<comment><USER2> imo the only thing you should work on is THAT thing that keep you up all nights and that you cant get it out of your head: your passion

<comment><USER3> Indeed, passion (at a macro-level) is important. But even within your passion lies a long list of tactical things that need to be selected from.

The challenge is limited resources. You can't do everything (regardless of level of passion), so you have to find some way to pick where you allocate your time and energy.</comment></comment>


What Test Engineers Do at Google: Building Test Infrastructure - <AUTHOR> https://testing.googleblog.com/2016/11/what-test-engineers-do-at-google.html <comment><USER2> Summary of the article: At google-scale, integration tests take too long because it triggers so many service calls. So the solution is to use static hard-coded mock data. But also create tests to verify the mock data with real service calls. So previously, if you had N tests calling a rest service A, it would result in N calls to service A. But now, those N tests go to a hardcoded mock data, and there is a single test verifying the mock data by calling A. So N tests can run fast and there will be only a single call to A to verify the mock.

However, that would be the best case, which is the mock data is sufficient for all N tests. That is not likely to be true, but probably a M number of mocks can still cover all N tests. And M < N in most cases so there's still savings in number of service calls. In the worst case, N tests will need N mocks and it will be the same as before.

<comment><USER3> In a large graph you would re-test the same part of the code over and over, because many top level inputs is going to do trigger the same code-path deep down in the graph, which is wasteful. In a sense they memoize service call answers, so any tested code-path only needs to run once.

If they actually do this across their code they will never have to run "real service calls", because those services are also tested the same way. It's mocking all the way down.

<comment><USER2> Paraphrasing the famous quote: There are only two hard problems in CS: naming things and cache expiration.

An issue I see with this is that there's a potential window when tests pass with bad data. For example, tests using a mock and the mock is periodically verified with a service call. The mock could become bad data, but won't be marked as bad until the next service call verification. Until that happens, the tests using the mock will all pass. It's not clear from the article how they address this.

<comment><USER4> ... and off-by-one errors.

</comment></comment></comment></comment><comment><USER5> I am writing a book on software development (current title "The Software Mind") and I am more and more concluding that the vast majority of modern software development is scaffolding around the actual thing you want to do.

Writing tests is not something you knock up during coding, it needs infrastructure - a test suite, some test data, a Jenkins server and then whoops we need better test data and ...

This touches that feeling - I guess I need to write it down a few more times ...

<comment><USER6> This is absolutely true. It's an observation many of us have had. There are people that are trying to develop startups to make it easier, but the combination is hard.

I think the next successful framework will focus on the entire lifecycle and aim to solve the scaffolding problem.

<comment><USER7> Maybe the language/framework/GUI could generate or require unit/integration/system tests (with just a few clicks to confirm or correct an assumption), and visualize in broad strokes which scenarios or input ranges are "green" yet.

That would mean a lot more infrastructure (sorry if that wasn't what you meant), but automatically provided or accepted by everyone involved.

</comment></comment></comment><comment><USER8> In my experience end to end tests are often difficult to write tests for. It's been difficult to maintain frameworks that model arbitrary asynchronous end to end tests, the test frameworks often tightly mirror the use cases. I haven't really seen any good tools that allow non-technical testers to write complex end-to-end tests. This is a shameless plug for a project that is hardly more than an idea, but to address this, I am trying to create a flexible end to end test framework that deftly handles asynchronous state transitions and allows non technical people to write tests in a declarative way. It has not even reached functional proof of concept state yet :(

[https://github.com/dm03514/async-states-task- engine](https://github.com/dm03514/async-states-task-engine)

The goal is to model end to end tests as state machines and define conditions to trigger transitions. There should be a code based interface allowing for arbitrary transitions using any go library, and a higher level interface, allowing a handful of operations to allow non-technical testers to model end to end tests.

<comment><USER9> I wonder if such a process could be done without a "non-technical friendly" DSL. Teaching people to speak to computers through declarative languages is programming in one shape or form no matter what (IMO).

I wonder if you could record a user action, and add variance to the recording as a test? Break a recording into ~5 actions and then perform those actions at various speeds and points of repetition.

A recording of

1) Move mouse from A to B

2) Click button

Produces a range of tests including

1) Move mouse from A to B

2) Click button 3 times

<comment><USER10> This is basically what I did with [http://hitchtest.com/](http://hitchtest.com/)

The declarative language is a readable YAML, which translates each named step into a python function call with arguments (e.g. - click: submit button).

The asynchronous part is 'under the hood' where it runs services which log lines of JSON. Those are watched using epoll triggers and parsed into objects which can be verified by one of the steps (e.g. check email containing name of user is sent).

I wouldn't say that it's necessarily possible nor desirable for a non- programmer to write the stories using YAML, however. Even with a perfect declarative language you need a mindset that requires precise thinking in order to write executable stories and that usually means programming ability. Stories also need refactoring as much as code does, alongside engine code.

However, the YAML _ought_ to be useful as a way programmers can collaboratively write and refine stories with product owners/managers and should serve as a useful way to communicate back changes to the product that a non-programmer can understand.

</comment></comment></comment><comment><USER11> End-to-end testing is super important, but still hard for a lot of people/companies/startups.

Using stubbed or mocking based approach can only go so far, despite it being less "brittle" than end-to-end tests. That is why our team built PANIC, which is a distributed testing framework for the every-programmer ( [https://github.com/gundb/panic-server](https://github.com/gundb/panic-server) ). Everybody should be able to do tests like this, not just the Googles.

<comment><USER12> end-to-end tests are only brittle if your end-to-end-system is brittle. That's not a problem with the tests.

<comment><USER13> It's the natural thing for services to be brittle. We're all human after all: a mistake in recruitment, hiring, training, scoping, managing, documenting, or etc. can cause an engineer to make the mistakes needed to make a brittle service you might rely on and that's something I think we can all agree is something you just need to accept as "going to happen."

In that case it's worth dealing with it as it is not how it should be.

</comment></comment></comment><comment><USER14> At our company developers rarely write tests. They rely on the QA for testing. Obviously it doesn't work, like, at all. I think a key aspect of this post is to highlight the fact that testing is in fine the developers' responsibility. Test engineers are here to make it easier for them to write tests.

<comment><USER15> There are levels and levels at which companies engage in Q.A.

1\. There is none, and it's awful, once there are more than two developers.

2\. There are dedicated QA people, who click on things in a more or less formalized fashion depending on the company, and sign off on releases. This is "pretty bad" at most places once you have a product that can't be easily verified by a couple of people in a few hours

3\. You have dedicated Test Engineers, who are just software developers who write test automation. This can be good, but usually ends up with mid-low quality engineers filling this role for a variety of reasons.

4\. Test Engineers are just Software Engineers who specialize in test- automation work. They write automation in high bug areas, and keep a larger overview of the product (set) to identify problematic areas and work with the product developers to solve those problems.

5\. The article. Test Engineers write infrastructure for testing and reporting, (and possibly proof-of-concepts). Product developers are responsible for their own quality. Test Engineers may also act as consultants for product teams.

It's probably worth pointing out that 2-5 are all reasonable places to be for different sized companies, at different stages. We shouldn't assume that everyone should be at a company that is 'like Google', since things that make sense at Google scale may not make sense for your 20 developer startup.

edited for formatting only

<comment><USER16> #5 is all very well, but I don't think helping devs write test is a substitute for actually having QA people. Testers should have a mentality of "I want to break this", and like it or not, the developers just won't think like good testers.

Do Test Engineers at Google do this kind of work as well?

<comment><USER17> To add another question from an sre (swe), tools and infrastructure is a subset of my daily responsibilities (60%). Reading the couple comments it's hard to see where the line falls between these two roles. I'm on a smaller team so perhaps I just find myself handling both roles or.. ?

</comment></comment></comment></comment><comment><USER18> Is Test Engineer different from SETI (Tools and Infrastructure)? What does SETI do?

<comment><USER19> Search for great tools and engineers on far away, exotic planets :-)

<comment><USER20> The begs the question: can we SETI at home?

</comment></comment></comment><comment><USER5> While it took a day to build a proof-of-concept for this approach, it took me and another engineer a year to implement a finished tool developers could use

This!

<comment><USER21> I believe you are missing a link to "This!"

</comment></comment><comment><USER22> I gave a presentation called Testable Software Architecture [1] a week ago with very similar recommendations to this article.

Decoupling is essential in order to have fast, maintainable tests that give you confidence to deploy continuously.

My two favourite techniques for this is a ports&adapters architecture where we plug in fake adapters for the majority of the tests. We then use contract tests to be confident that the fakes behave the same as the real services.

[1] [https://skillsmatter.com/skillscasts/8567-testable- software-...](https://skillsmatter.com/skillscasts/8567-testable-software- architecture)

</comment><comment><USER23> Funny this should appear because I just started at a company today where a big part of my job will be to help the team work with big messy monolith of code that is difficult to test.

Can anyone here recommend further reading on this particular problem?

<comment><USER24> The book "Working Effectively with Legacy Code" by Michael Feathers.

<comment><USER25> Seconded. Some of it feels a bit dated, and it doesn't cover tools you can use like PowerMock if your codebase is Java and you really just need to get a piece of hairy code under coverage as quick as you can without having to refactor it all to be testable the 'normal' or 'clean' way. Nor does it cover refactoring for a functional and immutable approach (its approach is much more OO). Still a great resource to have on hand and be inspired by.

The most important thing is to follow its advice and just start doing it little by little, even small refactors of other people's code. A friend's company had a Book Club and some testing book got on the list at one point, and as they were discussing it they kept having arguments over how effective various things were, so they resolved the arguments by starting a Testing Club where every week everyone would put in at least an hour into getting some part of the system under test, or trying out a testing technique, and discussing it. Over time they got most of the product under test and fixed a lot of previously unknown bugs.

<comment><USER26> This might not exist, but could you recommend a text that _does_ cover refactoring for a functional and immutable approach? I would be interested in reading something like that.

</comment></comment></comment></comment><comment><USER27> Some feedback for the OP:

1\. The tester and another team member spent a year developing something that would intercept calls and relay them. Two problems with that: (1) two person years spent, (2) and that sounds like serious NIH (not invented here) syndrome. The problem that should have been solved was everyone spending the time to write better tests and changing code as needed. Instead, they spent a year on a workaround, invented in-house. Was there not anything else out there that did this?

2\. The word is "focused", not "focussed".

3\. Lack of detail: how exactly does it work beyond that basic diagram?

4\. Where's the code for the project? Would it be useful to others?

However, I admire that the OP posted their experience, and it is useful information.

<comment><USER28> I believe "focussed" is acceptable, although "focused" is preferred in the US.[1][2]

Can you explain why this sounds like serious NIH syndrome? It looks like they built a system to cache service requests on top of an existing test framework. It seems specific enough that there might not be an existing method that fit well enough. The article is a bit light on details though, so I suppose it's hard to tell.

[1] [https://en.wiktionary.org/wiki/focussed](https://en.wiktionary.org/wiki/focussed) [2] [http://dictionary.cambridge.org/dictionary/english/focused](http://dictionary.cambridge.org/dictionary/english/focused)

</comment></comment><comment><USER29> Could this be one of the most meaningless and trite jobs whilst still maximizing prestige? How many people will work this job in despair? How many intelligent people will spend years coding the obscurity that is test infra?

<comment><USER30> Please stop posting unsubstantive comments to HN.

<comment><USER31> He/she did address an interesting and touchy subject of software development. It could have been more diplomatic, but then also, I'd say, needlessly watered down.

A challenge in software development has long been the division between test and development.

You could do as Microsoft recently did (more or less abolished "test").. the jury is still out on whether that is what has caused the recent Windows 10 quality issues.

Or you could keep a tester/developer separation. Good luck trying to recruit top (e.g. your testers should on average be as smart as your developers) people for the tester positions unless you are Google/Facebook.

Either way, I think this is a really interesting issue.

It should be noted: some pieces of software are a lot easier to test by its developer (say, a compiler) than others (say a GUI).

<comment><USER32> MS abolished manual testing (STE) positions prior to Windows Vista being released, somewhere around beta 2 or rc1. Vista probably suffered from this but Windows 7 didn't.

<comment><USER33> No they didn't. Source: I joined MS after Vista was released and worked with manual testers.

<comment><USER32> Did they have the STE title or SDET? When this happened it wasnt like there was 100% automation in place so developers, architects, SDETs, had to pick up the slack. I personally got stuck verifying bug fixes for our components (kernel stuff and supporting user mode services) in various languages I don't speak (particularly fun for left to right languages) just to get the bug count down. That team had something like 20 STEs that got the axe post beta 2.

<comment><USER33> No idea what their titles were but they worked entirely running manual tests. I ran some manual tests myself as an SDET but this was different.</comment></comment></comment></comment></comment></comment></comment>


Why You Should Adopt HTML5 Now - <AUTHOR> http://searchengineland.com/why-you-should-adopt-html5now-43879?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+searchengineland+%28Search+Engine+Land%29

<comment><USER2> I've been working on HTML5 video features on a website for several days now. I'm finding that an 800x450 (16:9) video at good quality plays smoothly (perfectly, in fact) when using a Flash player, but is choppy and slow in Safari using the HTML5 video tag. I've tried various bitrate, buffer, and quality settings, without any improvement.

As a result, I'm now working on using Flash to play the video in all cases except when Flash does not exist, because this is just not working out for me. Maybe I'm just not doing it right, but it beats me what the issue is.

<comment><USER3> Are you resizing the video at all in the browser? When messing around with it, I found that I could play 720p video with the video tag smoothly without any formatting in Chrome and Firefox, but that setting it's size attributes to something other than the actual file size made it slow to the point of being unwatchable.

</comment></comment><comment><USER4> Well maybe the author should start to adopt HTML5, before asking others to do so...

I get a nice "Missing Plug-in" in the middle of the page !

</comment><comment><USER5> Can anyone point me in the right direction as to the current thinking on how to create backwards compatible HTML 5 pages? I'd like to take advantage where possible, but not leave older browsers in the dark...

<comment><USER6> Feature detection is the way to go as far as I understand.

See the relevant chapter from Mark Pilgrim's Dive into HMTL5, for a start. He uses Modernizr to do the detecting: <http://www.modernizr.com/>.

<http://diveintohtml5.org/detect.html>

</comment></comment><comment><USER7> Should be titled "Why You Should Adopt HTML5 _Video_ Now." HTML5 includes a lot more than <video>.

</comment><comment><USER8> He didn't explain HOW "HTML5 videos are more searchable and indexable."

Is there an attribute or property that search engines pick up that isn't available when you embed flash?

A lot of the best additions in HTML5 are in the DOM. Search engines don't run JavaScripts so it doesn't seem like HTML5 adds much in the way of on-page optimization. Maybe the new section tags will have a benefit but this article wasn't about those tags.

</comment><comment><USER9> And most of all, it's easy when you are starting a project from scratch. Then again, Douglas Crockford describes HTML5 as a "giant step in the wrong direction".

<comment><USER10> he's just complaining about XSS.

</comment></comment><comment><USER10> The guy in the video said the content would "literally pull me in." I quickly closed the tab because I didn't want to get stuck inside my computer.

</comment><comment><USER11> This is _horrific_ SEO-targeting spam. That HN fell for it honestly surprises me.

Seriously the first paragraph was enough to know it was garbage, and each word following pounded that home.</comment>


What I learned about women & business today - <AUTHOR> Friday afternoon is Women & Entrepreneurship, a speaker series with sixty girls... and me.
Today we had a panel of five women, all at roughly the vice president level of their respective organizations. Three were from Wall Street, one from NBC, and the last from Campbell Soup.
As I walked to class in the rain, the questions raised by today's thread were still fresh in my mind. So I was pleasantly surprised that some of the discussion was useful for understanding why there aren't more female entrepreneurs.
Today I discovered something. That is, if you take the time to ask women about their impressions of the business world you can learn some interesting stuff.
What follows are some of the more insightful points that were made. I'm not making any claims about "the nature of women." Rather, I'm just echoing what was said. (I'll try to separate my commentary from the actual points.) So, in no particular order:
1) All of the panelists believed that women were just as ambitious as men, but that ambition for women was different than ambition for men. I didn't get a clear explanation of this, but it seemed to involve family and work-life balance.
What surprised me most was that every single panelist had turned down various promotions over the years. Partly this was due to wanting more time with family. But several of the panelists also stressed the importance of lifestyle, so getting a job they liked less which required more work was seen as a lose/lose, even if the pay was substantially better.
2) All of the panelists talked about how women needed to promote themselves more. They told stories about how all the younger men they mentored would send them daily emails about what they'd been up to and the progress they'd been making. The women were "nowhere to be found", even if they were working just as hard or harder than their male counterparts. The panelists expressed that women tend to believe that if they just work really hard then others will magically notice and reward them. Maybe this makes me a bad person, but I couldn't help but thinking that the average woman's faith in meritocracy is most common in males who are perceived as spectrum autistic.
3) The panelists all expressed profound faith in the ideals of professionalism. There was much talk of what clothing a professional should wear and how a professional should speak and act. Many of them told stories about being asked to order lunch for the group and expressing shock because "that's not how a professional should be treated." This contrasts sharply with the average entrepreneur, where part of the appeal is escaping professionalism. Whereas entrepreneurial orientated males often find corporate culture to be constrictive and stifling, these women viewed it as a protection mechanism of sorts, offering safety and predictability.
If the typical women, fresh out of college, doesn't particularly value maximizing her incoming and prefers corporate culture, then it would make sense why she would prefer joining an established company. This is especially true if she has full faith in the corporate hierarchy to promote her based on merit, a rather dubious assumption.
4) The women expressed frustration that white men typically don't give women and minorities as harsh feedback as they give other white men. The view was that when men are afraid to criticize women then what ends up happening is that women don't improve and get passed over for promotions without knowing why. The emphasized the need for women to constantly ask for feedback from their bosses and mentors, as well as for men to be more honest with women.
5) There was a lot of frustration that men didn't really understand the concept of having kids. The view was that once you have a baby you are seen as being on "the baby track" and no longer on the rising professional track. It's a little awkward being the only guy in the class and having to listen to middle-age women talking about how their children were conceived and the implications for their career, so I'll avoid going into too much detail. That being said, a lot of smaller businesses have never had a woman go on maternity leave and don't really know what to make of it. This goes back into the theme of the corporate environment offering certain safety mechanisms.
They also expressed that the hardest part of having kids wasn't necessarily when they were infants, but when they got older. One panelist told a story about her kid who was having certain problems around kindergarten, so she had to take a couple months off from work to take him to see various specialists.
6) The panelists talked about how successful women are typically perceived as being very cold, and how they have to work to combat that.
This is something I've been thinking about a lot lately. It seems like the stereotypical successful male tends to have more or less have the same basic personality they had in college, only with better looks and judgment and social skills. Whereas the personalities of the really successful women I've seen tend to be completely different than that of any girl I've ever met in school. I'm not sure if business just has more of a transformative effect on women's personalities or if the women bound for Wall Street success are just so rare that I rarely see them.
I've also noticed that there aren't really many charismatic female leaders. When will we see a female version of Steve Jobs or Warren Buffet or even Seth Godin? Or maybe there are women who come off as really charismatic to other women and being a guy I just can't see it. Perhaps it's unfair to ask these questions, but I think it's important. There's definitely a charisma bonus for men in business, and it's not additive, it's multiplicative if not exponential.
7) The panelists stressed the importance of learning negotiate, since negotiation isn't a skill that many women pick up on their own. Many also stressed that it was easier to negotiate coming into a firm than once you were already an employee, since internally you never know who you're going to piss off or what bridges you're going to burn.
8) Four out of the five women played sports in college. This really impressed me, especially since these women went to school around the time nineteen Yale rowers stripped in the dean's office with Title IX written across their chests: http://www.aherofordaisy.com/
----
If you search Amazon for books about women and business, there are hundreds of books targeted toward women looking to succeed. However, there is not a single book written for men about understanding their female co-workers. Not in the sense of how to talk to them, but in the sense of creating a systemic environment that's tolerant of varying perceptions and aspirations. Perhaps this is why most discussions about women and business eventually devolve into random speculation about "the nature of women" and whatnot. It seems like there is real research into this though and there is something useful to be said on the topic, even if most companies currently build their policies and culture through trial and error.
Anyway, I apologize for the length and any spelling/grammar mistakes, but hopefully this has been useful, or at the very least interesting. In any event, after listening to today's speakers I got the impression that getting more women to hit the submit button on the YC app is really the last step in a long process as opposed to the beginning.
<comment><USER2> Thank you, Alex, for posting this. I learned some surprising facts about women in business. Your ruminations were also original and thought provoking. I am a business woman who will be hitting the submit button on YC very soon. Wish me luck :-)

The comments you brought back from your class were a surprise. My own experience would contradict most of the points on your list. But then again, other women in business are a mystery to me too. I had very limited experience working with women in a professional setting. I am usually the only woman, or there are only 2 or 3 others in a room full of people. I feel awkward and don't know how to behave during those few occasions when I have to work closely with a woman. I have many women friends, with whom I have warm, close relationships. But I can't think of any close women business contacts. On the other hand, I fell totally comfortable in most working situations where I am surrounded by men. I have many, close business contacts who are men. :)

I would like to thank GreenDestiny for his comment as well. The parallel between the faithful-black-servant image and the [bitchy, ice-queen] power- woman image hit home. It reminds me of writings by Oliver Wendell Holmes Jr. (supreme court justice, fighter of discrimination towards blacks). His central thesis in life was that the dissident-minority group needs to be heard. Privately, he felt the majority-power group should rightfully enjoy all the fruits of their power while it lasts. But he fought for the minority because he strongly believed that the majority (and the society as a whole) is made richer by the effort expanded to refute (keep down) the minority. The majority is forced to introduce new ideas into their thoughts and hone the rhetoric that justifies their privilege.

<comment><AUTHOR> Good luck with your app!

That said, how do you reconcile Holmes' beliefs about minorities with his role as the father of the American eugenics movement?

<comment><USER3> Holmes' beliefs were consistent: some people will have awful lives because of the circumstances of their birth, so he wanted ot 1) mitigate the awful, and 2) reduce the number of people born into such circumstances.

</comment></comment></comment><comment><USER4> I am not a woman, just someone who has been around enough gender studies conversations to comment. :) "Many of them told stories about being asked to order lunch for the group and expressing shock because "that's not how a professional should be treated." This contrasts sharply with the average entrepreneur, where part of the appeal is escaping professionalism."

There's a subtle point you missed here. Many of these women were asked to order lunch because the male thought it was the woman -- of lesser position -- who should take lunch orders. There's a difference between doing something because everyone is sharing mundane tasks in a startup and being singled out for those positions.

Those women were absolutely right to assert their status there in a corporate environment -- and in a startup environment as well if a woman partner is subconsciously being relegated the mundane tasks for no other reason than that she's a woman.

</comment><comment><USER5> Thank you for taking the time to share what you learned and your observations. As a woman in business, I can understand how many of these comments hold true for women in general, but I think there is something to be said about the kind of work environment a woman chooses. Having worked in both startup and corporate environments, my personal experience in a corporate position mirrored what was discussed among the women in the lecture. The women I worked among opted for the security, professionalism, and "ladder" that a larger corporation provides.

On the other hand, my experience with startups has been different. Startups foster empowerment and allow the flexibility to effect change almost immediately. Sure there may have been slight differences in approaches among the different genders, but ultimately everyone works to achieve the same goal. My experience in this kind of environment contradicts most of the points made. There is risk, criticism and recognition despite gender. I tend to gravitate towards startup opportunities and have actually submitted a YC application. (fingers crossed!)

Keep in mind, that I am just one woman so my observations may not reflect what women generally experience in the working world. Thanks again for sharing, I found your post incredibly interesting.

<comment><AUTHOR> It actually makes sense that the points expressed don't really resonate with the female readers on this site. After all, the average man's view of work probably doesn't mesh with that of the average male news.YC reader.

</comment></comment><comment><USER6> Great post. I know my attitude comes from a severe case of having a hammer and seeing all problems as nails - but I really think you're wrong on the YC app as the last step in a long process. I mean, I think it will be the last step, I just don't think it should be.

Most big business were built by men, and people tend to encourage and hire traits that they see in themselves. So trying to make these male businesses be more women friendly is just going to be so much window dressing - you really can't force people to respect others. So the only real solution I have any faith in, is to sidestep these established businesses and startup new ones. I think it goes for any group who feel on the outer of the business world.

Why tell people women can be just as good - people don't listen. They never listen. Only after female dominated startups rub their nose in it will there be meaningful change. The power woman stereotype, to me anyway, is a lot like the faithful black servant stereotype - it enables women to function in the white male dominated environment, but is ultimately constructed by others to be natural barrier to them gaining too much power.

<comment><AUTHOR> When I said it was the last step, I meant from the individual's point of view. From a societal point of view it may well be the first step.

</comment></comment><comment><USER7> Thank you. I appreciated that. I can only imagine how awkward it must have been to be the only male in the room absorbing all of this. And equally as so to be able to submit your notes here, but I think you did a nice job of separating your observations from your comments and thoughts in a very candid and honest way.

</comment><comment><USER8> There are hundred of business books for women, but zero business books for men. I also never heard of a panel for "men in business".

Another thing to think about...

<comment><USER9> There is no reason to have books or panels for men in business just like there is no reason to have white pride parades.

<comment><USER8> There are billions of men stuck in shitty jobs, yet I doubt they attribute that condition to being men. Often when I read business advice for women, it sounds as if all men would automatically become leaders because of their male traits. Not the case...

</comment></comment></comment><comment><USER10> "When will we see a female version of Steve Jobs or Warren Buffet or even Seth Godin? "

Oprah comes to mind. Sure, her industry is not tech or finance or whatever seth godin can be pigeonholed into, but she's there and a leader in her field.

<comment><USER11> And Martha Stewart.

But both of those woman are dominant via charisma in fields that are socially "lady-like," being talking and home-making. I think the question's still relevant for male-centric areas like tech.

</comment></comment><comment><USER12> Tough Choices by Carly Fiorina

A good read concerning many of the topics mentioned in this post - Alex, cool post; Interesting topic that is not brought up nearly enough.

</comment><comment><USER13> Linguistics professor and writer Suzette Haden Elgin has a few theories about this. She emphasizes the importance of how ideas are conveyed and understood via body language, tone of voice, and operating metaphors.

Her books were written a few years ago, but she points out that a woman will more typically understand a given scenario with a "classic schoolroom" metaphor, where men are more likely to use a sports metaphor (especially football, but also basketball or baseball). This explains both the "faith in meritocracy" and the fact that many of the successful panelists played sports in college. This also explains another phenomenon that wasn't mentioned, where a person using a classroom metaphor and has failed at something has a tendancy to take it much harder than someone failing at a sports metaphor. Failing a test is failure, period, failing to score a touchdown means you have to get an interception or something and then try again. Ability to deal with failure effectively is important for entrepreneurs. This actually may also explain why men may be more afraid to criticize female employees. It's not just because they're patronizing (though in some cases that may be true) it's because they're afraid that it won't help anything and will in fact make matters worse.

Metaphors are a terrific way to explain how people view the world. Joel Spolsky talks about the "Command and Control" management method, and what's really happening there is the boss is modeling the environment on a military team. Understanding what's going on there goes a long way towards dealing with the situation, even if your ultimate decision, as an employee, is to go somewhere else, though in fact Elgin describes a technique called "semantic modulation" where you slowly change the metaphor that people are using to communicate.

Another thing she emphasizes is body language and tone of voice. In English, a tone of adult authority is deep, resonant, relaxed, and comforting all at the same time. Women aren't traditionally expected to speak that way, and their voices tend to be naturally higher pitched. I'm curious to know what the voice quality was of those women on the panel. I suspect their voices had traits much more common in men, which may have a lot to do with the perception that they are "not like girls you knew in college."

 _If you search Amazon for books about women and business, there are hundreds of books targeted toward women looking to succeed. However, there is not a single book written for men about understanding their female co-workers. Not in the sense of how to talk to them, but in the sense of creating a systemic environment that's tolerant of varying perceptions and aspirations. Perhaps this is why most discussions about women and business eventually devolve into random speculation about "the nature of women" and whatnot._

I'd say "how to talk to them" is far and away the most important subject, I just wouldn't describe it that way. I haven't read them all, but I highly recommend the Haden Elgin "Gentle Art" series. She gives concrete, practical advice and insighlful explanations. It's often not targeted specifically at women or men, it just describes the problem and explains ways that it can be solved. She tends to focus more on verbal conflict and tension than on day to day behavior, but it's still very useful.

 _The Gentle Art of Verbal Self-Defense at Work_ , [http://www.amazon.com/Gentle-Art-Verbal-Self-Defense- Work/dp...](http://www.amazon.com/Gentle-Art-Verbal-Self-Defense- Work/dp/0735200890)

 _Genderspeak: Men, Women, and the Gentle Art of Verbal Self-Defense_ , [http://www.amazon.com/Genderspeak-Women-Gentle-Verbal- Self-D...](http://www.amazon.com/Genderspeak-Women-Gentle-Verbal-Self- Defense/dp/0471305065/ref=pd_bbs_sr_2/103-6892741-1586267?ie=UTF8&s=books&qid=1191074637&sr=1-2) (I have not read this one)

<comment><AUTHOR> "I suspect their voices had traits much more common in men, which may have a lot to do with the perception that they are 'not like girls you knew in college.'"

Actually you are probably correct there. So would this be the result of voice training, or more just a side-effect of being surrounded by only men at work for twenty years?

I think it's more than just tone of voice and body language though. For example, while I have no doubt there are many college women who subscribe to the WSJ, I have yet to actually meet one.

<comment><USER13> I have no idea where it comes from, I suspect it might have a lot to do with how they were raised, but that's a pure guess.

And I definitely agree that it doesn't entirely boil down to body language. There are biological differences, we are raised differently, and we care about different things. Voice and body language are most important with regards to standing up for yourself, being taken seriously, and appearing confident, smart, and reliable rather than cold, insistent, or calculating. (I'm not saying there aren't prejudices involved as well)

I didn't know any guys that subscribed to the WSJ in college either, incidentally.</comment></comment></comment>


Show HN: Building computer labs in schools in Africa - <AUTHOR> https://techlitafrica.org/ My name is Nelly Cheboi. I am the co-founder of https://techlitafrica.org, an organization that fosters a more technologically literate Africa by building computer labs in African schools.
I was raised in Mogotio, Kenya, in abject poverty. At nine years old, I collected wild vegetables on my way from school to cook for my younger sister.  The only way I knew out was by studying. So I studied. I studied hard. And I ended with a full-ride scholarship to Augustana College, IL.
I was majoring in Chemistry before I discovered computer science my junior year of college. I loved it. With only three semesters left, I decided to get a degree in it. I also built a school with the aim of fostering digital literacy. I doubled down on my work-study program, got some donations from friends and four months later I launched Zawadi Preparatory (www.zawadiprep.tech). We admitted 30 kids at its launch in January 2016. Barely 3 years later, we are at 150 kids.
In summer 2018, we built a computer lab at Zawadi Prep. We collected computer donations, bundled it with elementary OS along with open source education software. There is no broadband internet, so we downloaded terabytes of content for our local server including Wikipedia and Stack Overflow. We showed the villagers how to make a Rails app at our free after school program.
I cannot think of a better success story than the one of my seven-year-old niece, Michelle. My friend came over to the lab. Michelle asked, "do you want to see our content?" They were like, "sure." She then opened up a computer, navigated to `192.168.0.2` and said, "look, we have all these."  I teared up a little bit. I did not teach any of that.
Our goal for 2019 is to build 10 more computer labs in 10 different Kenyan schools. I always wanted to end poverty. To me, teaching digital literacy is the best way I know how. We now have over one hundred donated workstations. To meet our goal, we need a few hundred more. <comment><AUTHOR> Hi HN! My name is Nelly Cheboi. I am the co-founder of TechLit Africa, an organization that fosters a more technologically literate Africa by building computer labs in African schools.

I was raised in Mogotio, Kenya, in abject poverty. At nine years old, I collected wild vegetables on my way from school to cook for my younger sister. The only way I knew out was by studying. So I studied. I studied hard. And I ended with a full-ride scholarship to Augustana College, IL.

I was majoring in Chemistry before I discovered computer science my junior year of college. I loved it. With only three semesters left, I decided to get a degree in it. I also built a school with the aim of fostering digital literacy. I doubled down on my work-study program, got some donations from friends and four months later I launched Zawadi Preparatory ([https://www.zawadiprep.tech](https://www.zawadiprep.tech)). We admitted 30 kids at its launch in January 2016. Barely 3 years later, we are at 150 kids.

In summer 2018, we built a computer lab at Zawadi Prep. We collected computer donations, bundled it with elementary OS along with open source education software. There is no broadband internet, so we downloaded terabytes of content for our local server including Wikipedia and Stack Overflow. We showed the villagers how to make a Rails app at our free after school program.

I cannot think of a better success story than the one of my seven-year-old niece, Michelle. My friend came over to the lab. Michelle asked, "do you want to see our content?" They were like, "sure." She then opened up a computer, navigated to `192.168.0.2` and said, "look, we have all these." I teared up a little bit. I did not teach any of that.

Our goal for 2019 is to build 10 more computer labs in 10 different Kenyan schools. I always wanted to end poverty. To me, teaching digital literacy is the best way I know how. We now have over one hundred donated workstations. To meet our goal, we need a few hundred more.

</comment><comment><USER2> If ever you want to go beyond Kenya, let me know. I am fully invested in Africa. I am from there myself. Born and raised until the day i started college. I live between SF and NYC now.

More than happy to lobby for such initiatives with my employer and philanthropic network.

I contributed, in part, to the establishment of things like NairaLabs and Usahidi amongst many others.

Unfortunately, I am not taking on projects in Kenya anymore. Everyone else is doing Kenya and Kenya is, sad to say, saturated with these kind of projects that they end up conflicting.

I am happy to work with you guys on a more devolution focused effort. I'm more interested in other countries rather than Kenya. I spent a number of years there and outside to know that there are other places that need more help than Kenya.

I know it doesn't sit well with people, but I really am not for creating a Goliath of tech in Africa (i.e Kenya). I prefer decentralized development where the whole continent grows together. Also, Kenya is one of the most impressive countries i know. The amount of talent and ambition there is breathtaking and I have no doubt that those folks will take it places. I am not from Kenya, and would like to see development in Africa rather than Kenya only. There are, so far, very few to negligible, trickle down stories of "Africa Rising" beyond the usual suspects Kenya, SA, Nigeria etc.

But yeah, I am ranting now, if ever you do expand to other countries, keep me in mind. Especially smaller hubs like Zambia, Zimbabwe, Ivory Coast, Senegal, where the interest and talent pool are just as great. The project looks great (though the site could use more information) and I wish you all the best regardless!

<comment><AUTHOR> Chirau, our goal is to build more computer labs in more than just Kenya. Kenya was easiest for me because I already had a school there to do the pilot program. As you know with Africa, every country is a whole new market place with its own set of challenges. I will let you when we expand to more countries, it will probably be Ethiopia or Tanzania next. In the meanwhile, if you are looking at a similar projects in other countries, here are a few [https://www.iamthecode.org](https://www.iamthecode.org), [http://www.gebeya.com/](http://www.gebeya.com/): Ethiopian, [https://andela.com/](https://andela.com/), [https://worldcomputerexchange.org/](https://worldcomputerexchange.org/), [https://thisisafrica.me/born-to-code-rwanda-launches- first-c...](https://thisisafrica.me/born-to-code-rwanda-launches-first-coding- academy).

<comment><AUTHOR> Chirau, what is the best way to reach you?

<comment><USER2> mayortendi[at]gmail.com

</comment></comment></comment></comment><comment><USER3> The website could use some more information about what types of laptops you're looking for. I clicked donate but it was just a form with no information.

Do they have to be 100% in working condition? What about condition, age, OS, Mac, etc? How do we ship it and where? How does African parcel shipping work?

Also, you could probably collaborate with some tech companies who cycle their laptops for devs after upgrades come out. Then it could be something they'd like to advertise like a banner of social good work on their company website about pages (which would drive more traffic to your site).

Finally, you could have a progress bar of how many laptops you need to reach goals. Saying you only need 50/100 more or something will make individuals feel they are making a significant contribution and that other people are donating. So it's not going into a black hole but to a clear need. The updates and progress on Kickstarter and gofundme are a big part of the UX.

<comment><AUTHOR> Thank you for the feedback dmix. We are working on inventory management. We are considering assigning each donation a tracking number so the donor can see where their computer went and the address of the school. As for the progress bar, I can quickly put that together. We are not that picky, so any computer, any condition works. We are based of Chicago but we will be opening a warehouse in Mombasa, Kenya soon. Do you mind emailing us at firstname.lastname@example.com to discuss further? I really appreciate the feedback. With regards

<comment><AUTHOR> We added a google form that gives a little more insight to what we are looking for [https://docs.google.com/forms/d/e/1FAIpQLSdWZRtZsxk4ahwGMYKx...](https://docs.google.com/forms/d/e/1FAIpQLSdWZRtZsxk4ahwGMYKxXaEuHKHboXb3jq5yfzhKG5TXxBEX_Q/viewform)

</comment></comment></comment><comment><USER4> Hi, my name is Fifi Baiden. I'm the founder of Fifi Soccer Foundation, an organization that empowers underprivileged children of Ghana with valuable tools through education and sports (www.fifisoccer.com).

I'm from Ghana,from a poor family. I sold kerosene to support my family at the age of 7. I worked very hard until I was scouted by a soccer academy in Ghana called Right to Dream Academy. I then got a full scholarship to attend High School at Dunn School and then earned my college degree at UCSB. I played professional soccer college in Major league soccer for Columbus Crew and I'm currently a grad student at Pepperdine University getting my masters in Nonprofit Management. My goal is to give back to underprivileged children and I'm hoping to partner with you guys. I hope to hear from you.

<comment><AUTHOR> For sure FBaiden, you can reach us at firstname.lastname@example.com

</comment></comment><comment><USER5> It is great to see such initiative.

I have a very similar experience as your and can clearly relate . Somehow, I am also working on something similar with other folks, with a specific focus on Guinea ([https://www.guineapromise.org/programs/mobile- lab](https://www.guineapromise.org/programs/mobile-lab)).

One thing that we are realizing is that the scale of the work to be done is such that we have decided to shift our objective to be an inspirational one. We advocate, lobby and inspire schools, local governments to build science labs.

Is your focus mainly with computer labs, or are you interested in general purpose science labs?

<comment><AUTHOR> gumbo, have you heard of [https://www.iamthecode.org](https://www.iamthecode.org). I agree it is a lot of work, but it needs to be done. I first used a keyboard when I was 18 and now I am a software engineer. In just one computer lab I have already reached 200 people and counting. I love the odds, soon it will catch on. I hope we change our education policy to focus on more relevant skills as a result. We are currently only focusing on computer labs, I am the board member of a different non-profit called [http://www.joulefoundation.org/](http://www.joulefoundation.org/) that focus more on stem. Wanna chat more. Reach out to me at email@example.com

</comment></comment><comment><USER6> This is accurate. I was there. My name is Tyler, and I help install Linux and content on the machines. If you have content, routers or ethernet cable, please reach out! <mailto: email@example.com >

</comment><comment><USER7> I have a few old laptops lying around, still in fine condition but pretty out of date. Can I give them to your organization? How would I get them to you?

<comment><AUTHOR> Those will be great. You can email us at firstname.lastname@example.com

</comment></comment><comment><USER8> Consider seeking connections with the US Peace Corps. I spent theee years teaching basic computer literacy to high schoolers in Burkina Faso as a volunteer. I also helped to set up two school computer labs using donated hardware from sister schools in France. Sadly PC is no longer in BF but I may be able to help you find other connections if you are interested. Email available via website in my profile.

<comment><AUTHOR> cdubzzz, Awesome stuff. I will be emailing you soon.

</comment></comment><comment><USER9> Do you have a gofundme or similar for your non profit's current goal? I would love to donate to what you're doing as I'm sure many others here would.

<comment><AUTHOR> Here is the go fund me link [https://www.gofundme.com/building-computer-labs- in-african-s...](https://www.gofundme.com/building-computer-labs-in-african- schools)

<comment><USER10> (hi nelly please edit your comment and remove the '/manage/' part of the url, make it just [https://www.gofundme.com/building-computer-labs-in- african-s...](https://www.gofundme.com/building-computer-labs-in-african- schools) ... and best of luck!)

<comment><AUTHOR> Done! Thank you LeonB

</comment></comment></comment></comment><comment><AUTHOR> here is the website for more info [https://techlitafrica.org](https://techlitafrica.org)

</comment><comment><USER11> Fantastic! Is there a reason you are not using Raspberry Pi's though?

I've got a pop-up computer lab with 10 stations and the whole setup only cost a few hundred bucks.

[https://photos.app.goo.gl/RfECe5S9eU2HZx627](https://photos.app.goo.gl/RfECe5S9eU2HZx627) [https://photos.app.goo.gl/j9DnoPewVBrBuVcs5](https://photos.app.goo.gl/j9DnoPewVBrBuVcs5)

<comment><USER12> Probably a but underpowered for development.

Used laptops are not that more expensive, but they are beefier, the UX is better.

<comment><AUTHOR> This is awesome. We are not set in stone on the laptops. For a scalable business model, it is safer to rely on donations. Rasberry pi will also require a bit more peripheral devices i.e keyboard, mouse, monitor. But if we start getting Rasperry pi donations, totally. The kids will learn the in and outs of a computer with that kind of set.

</comment></comment></comment><comment><USER13> Wonder if there'd be an efficient way to organise/collect hardware by state or country and ship in bulk?

<comment><AUTHOR> Prawn, it probably would be. We will be opening up a warehouse in Mombasa, Kenya in May. We are currently collecting all donations here at Chicago, as we organize for warehouse launch. In the future, it would be nice to organize a shipment straight to Kenya.

</comment></comment><comment><USER14> Please put up a donation link somewhere visible.

<comment><AUTHOR> I will add it on the website. For computer donation, you can email us at email@example.com. Here is a go fund me for monetary donations [https://www.gofundme.com/building-computer-labs-in- african-s...](https://www.gofundme.com/building-computer-labs-in-african- schools)

</comment></comment><comment><USER15> Is there a website you can link to or a way for people to find out more?

<comment><AUTHOR> yes, [https://techlitafrica.org](https://techlitafrica.org)

<comment><USER15> Ah yes, I see it in your text now. I'm going to change the formatting so the link is clickable (I'm a moderator here) and put "Show HN" in the title, which will put your post also on [https://news.ycombinator.com/show](https://news.ycombinator.com/show). Hopefully that will help you get some good feedback. Good luck!

<comment><AUTHOR> thank you

<comment><USER15> I just emailed you another suggestion that might help. Will check email again in about an hour.

<comment><AUTHOR> I got it. Thank you dang</comment></comment></comment></comment></comment></comment>


Show HN: Farmavore: Never wonder what you want to eat again; lunch delivered - <AUTHOR> http://www.farmavore.com

<comment><USER2> How do I not "wonder" what to eat? Not sure it's super obvious to me immediately from the site.

<comment><AUTHOR> Sorry about that! Once you sign up for a plan we survey your preferences and then our chef/ dietitian will prepare something for you everyday, so there's no menu. Think of it like having a personal chef who unveils a new masterpiece for you everyday =)</comment></comment>


Ask HN: Will Apple iPad pro wipe out Microsoft surface? - anand-s

As Apple announced iPad pro which is more identical to MS surface with more powerful hardware what are the chances it wipe out Microsoft surface? <comment><AUTHOR> It certainly doesn't impact the reasons I use a Surface. The Surface Pro is a direct laptop replacement for me and runs any Windows application I throw at it, including that I do development on it from time to time in Visual Studio.

Dell just announced a partnership with Microsoft to sell and support the Surface to enterprises, and that's probably going to be a big and growing market for the Surface. Again, largely because even the 3 Non-Pro now is a full Windows laptop replacement of a sort that can run an enterprise's full suite of Windows applications.

I don't think it has a chance to "wipe out" the Surface, but I also don't see it as a direct competitor to the Surface. Particularly because of how different iOS and Windows are, it seems like comparing apples to oranges and last I checked apples have still yet to wipe out oranges and we're all a little better off for having a choice in our fruits.

</comment><comment><USER2> i would run buy one if it had a mouse and ran windows apps. otherwise, i'm not getting rid of my windows tablet.</comment>


Start-ups hindered by ridiculous software patents - <AUTHOR> http://www.stormdriver.com/blog/start-ups-in-the-maze-of-software-patents/

<comment><USER2> In effort to spur some discussion please answer few questions in your mind:

When Microsoft took their first patent who was inventors and what it was for...

Great lets check answers 1986 (10+ years after founding), S.Balmer at al., ant they patented a book holder! <http://www.google.com/patents?vid=USPAT4588074>

Next question how much does it cost to proceed with a patent litigation?

($3M to $10M)

And a multiply choice one: Patent give you a) protection b) ability to attack someone

And the answer is... you know.

So patents are excuse to NOT do something rather then any help. When you will grow to really big company there will be other rules of the game. Check on Apple Nokia recent patent war and how Apple "did not infringe any of Nokia patents" and not paid royalty to most of the players in the field.

So if you want to start something that might infringe something-something go ahead and, on the way, get some patents on what you are doing if you have time to bother...</comment>