The Agile Fluency Model - <AUTHOR> https://martinfowler.com/articles/agileFluency.html <comment><USER3> I love this.

"Is [Huge pile of recently promoted buzzwords] not the silver bullet you expected? We've got the answer: [A new pile of buzzwords]!"

"Here are some charts and graphs and vague paragraphs to confuse you and intimidate you into hiring us as expert consultants!"

It's sort of like the Nigerian email scam, in that they don't even try to hide the big piles of B.S. Anyone who makes it through this without rolling their eyes out of their sockets self-selects as likely to fall for the whole thing.

<comment><USER4> _" Is [Huge pile of recently promoted buzzwords] not the silver bullet you expected? We've got the answer: [A new pile of buzzwords]!"_

Does your team produce products on-schedule 100% of the time, receive positive reviews from customers, and consistently generate more and more revenue for the company? In my experience, a big part of what a team works on is making these things happen consistently, and then maintaining that consistency as you add members.

Your reaction suggests to me you haven't spent a lot of time thinking about how engineering teams work and scale.

Sure, software engineering is easy given a couple constraints:

\- Everyone on your team is on the same skill level, and everyone communicates well naturally

\- The problems you're solving are small, the system you're building is not complicated, and in general there isn't tons of work to do

But if those things aren't true, it's harder to scale a team, and the type of stuff in this article is really useful.

There are teammates who are weak in certain skills and stronger in others. Bottlenecks arise. There are people in the company who want to take control of the product and drive it in an unproductive direction. There are departments who provide a constant flow of small/medium requests, and departments who once-per-quarter request a large feature. There are valuable customers who don't quite fit into the model your product supports.

Agility helps you react to all of these things and fix them quickly.

I think this article stands apart from the rest in that it emphasizes _team learning_. There is only one diagram, and it's about _things you can get good at_ , not steps you should follow.

Nobody is blindly reading this and following the steps (because there aren't really steps, if you read it). It exists to help build a common language and encourage thinking about how you can learn and get better. What's wrong with that?

<comment><USER3> Well, I've been developing software for more decades that I'd like to admit, so I've engaged all the issues you mention (and many more).

However, the fact that these problems exist doesn't mean this agile fluency model has anything to do with solving them.

Generally, my problem with this model is that it's arbitrary, vague and subjective. You, your team, and other stakeholders will need to take the time to learn the model, restate your issues in terms of the model and then... what? Even then, what steps or anything else actionable could result?

In fact, the agile fluency model itself is pretty daunting, what with all the new terminology (all based on terms that are already massively overload, of course).

We'd probably need an Agile Fluency Model Fluency Model, so we can label and discuss the stages of learning and applying the agile fluency model itself.

</comment></comment></comment><comment><USER5> The problem with Agile is that it's a thing that only works with adult (of any age) programmers that have enough experience to be let loose and prosper.

If you're going to pour Agile over chain gang junior sweatshops you're just doing cargo cult Agile. I think it's important that somebody starts thinking about what the best methodology for mediocre product managers for managing mediocre programmers is - and I say this without sarcasm.

A lot of developers _need_ some kind of schedule, hand holding and so on to grow into better developers while delivering value. Instead of wondering for 1.5 hours "why is this called a stand up while everybody is sitting down?".

<comment><USER6> There was a nice approach described in the Pragmatic Programmer book if I'm not mistaken.

The idea was to construct development teams in a way similar to the surgery teams - one lead developer, one assistant developer (these two "adult" and very good), and a 3-4 other people who 's job is to make the life easier for the main devs - someone to manage documentation, someone else to do detailed testing, one average dev to do the simple and boring stuff, and so on.

That way, in a company of a 100 devs, you'd need 15-30 super-smart developers (who don't need methodologies and scaffoldings), and the remaining 75 just junior/average specialists doing specific tasks and fitting into the structures provided by seniors.

<comment><USER7> Chapter 3 of "The Mythical Man Month" is titled "The Surgical Team" and describes just this. If you enjoyed the Pragmatic Programmer, I recommend The Mythical Man Month as well.

</comment></comment></comment><comment><USER8> The consultants have taken over "Agile" and turned it into a process-heavy set of practices. Over the course of a 2 week sprint I spend more than 8 scheduled hours in various meetings (grooming, planning, scrums,etc.)

[http://programming-motherfucker.com/](http://programming-motherfucker.com/)

<comment><USER9> To play devil's advocate... that is 10% of your time in meetings that are defined by scrum to have specific goals that should be accomplished in each. It is possible (every case varies) that that 10% of time spent has a multiplying increase on product quality.

It is equally if not more probable it is a waste of time too though. Especially if the scrum master can't stay focused. I've been able to get 20 person scrum / standup meetings on schedule for 15 minutes every day from scheduled start to end. You could set your clock by it. But I've seen other teams take a half hour for less people. That is ridiculous.

As a fun anecdote, once I gave a project estimate and my client paid us to do detailed project planning because he didn't believe the estimate. We spent 3 days (with 5 people in the room) in requirements gathering, specing, and estimating stories. The end result... 5% more than my "wild guess" that I gave the client originally (that they already thought was too high) only now the client had to also pay for the additional 120 hours we spent in planning.

They asked incredulous how my "wild guess" could have been so close and my only answer was... experience.

But in the absence of experience those meetings could have provided a valuable service.

<comment><USER10> > The end result... 5% more than my "wild guess"

How long did the project actually take?

<comment><USER9> We missed target but it was because the client changed a major requirement half way through after they saw it working the way they originally requested. I believe that if that didn't happen we would have hit target.

Another argument against up-front estimating and fixed cost projects. It doesn't take into consideration things like that.

But to that point, really target + what it took to do the estimation. So an extra week + the money..

</comment></comment></comment></comment><comment><USER11> I see the comments are trending negatively, so I wanted to share a different perspective.

Having worked on and along side companies doing "agile transformations" and every version under the sun of the doing-agile-but-still-not-performing process, I do think the article is valuable.

My biggest takeaway is a good framing for how I can describe the situation where teams skip the basics in order to jump to the practices that seem most exciting.

Having a DevOps group spin up a scalable build pipeline using the latest and great container cluster will not fix a team that has glossed over the basics of the "Focusing" team. You'll have individuals that haven't bought into team success or delivering business value who want to do advanced practices because they read a blog about how it worked at Etsy or GitHub or Netflix. When the team still cannot deliver or work together effectively, no one will look at the root cause but instead layer on more flavor of the month processes, burn the bridge with anyone non-technical in the organization, or lose people because the company is just "dysfunctional".

</comment><comment><USER12> Ultimately, agile was successful[1]. Most companies took up many of the good practices. It didn't cure all our problems because coding is hard.

[1] [https://8thlight.com/blog/uncle-bob/2013/12/10/Thankyou- Kent...](https://8thlight.com/blog/uncle-bob/2013/12/10/Thankyou-Kent.html)

</comment><comment><USER13> Development methodologies have been turned into weapons against the employees.

That's how the average manager sees it, plain and simple. Everything else is just fluff and cake decoration sprinkled on top.

It's a hip brand that justifies things that would otherwise be hard sells.

Want to drag people into daily meetings where they take turn in telling everyone what they did yesterday and what they are going to do today? ... "Agile! shiny ... daily standup" now it's acceptable.

Perverse incentives mean businesses devour and bastardise any given methodology into a leverage for themselves and a stick to beat others with.

Methodologies were partially meant to empower the employees but that didn't last long.

Consultants may ponder about nuances and details.

The businesses and managers who never see beyond the next quarter just see it as a socially acceptable brand to exert power.

<comment><USER14> You present a negative outlook that isn't necessarily the endgame of agile, but it's pertinent to frame it this way! Of course those are some very likely risks if the team doesn't claim its leverage and demand its stakeholders engage the development process responsibly, but that's the point of demos and signoffs.

<comment><USER15> "Sounds like you're a bad culture fit and it's time for a PIP."

That's the usual response I see from managers to employees who try to leverage anything. The only option I see for employees has been to get another job, companies are willing to sacrifice all the costs of hiring and onboarding an employee to make sure they don't have any non compliant ones

</comment></comment></comment><comment><USER16> It seems to me this is James Shore and Diana Larsen writing about "Agile Fluency" on Martin Fowler's blog.

<comment><USER17> Neither of them is an actual engineer, did you notice?

<comment><USER18> james shore is

[http://www.jamesshore.com/Blog/Lets- Play](http://www.jamesshore.com/Blog/Lets-Play)

</comment></comment></comment><comment> pi-squared Agile is an adjective; The values of the manifesto for agile software development are lost, this is the original idea of The Manifesto: [https://youtu.be/a-BOSpxYJ9M?t=406](https://youtu.be/a-BOSpxYJ9M?t=406)

<comment><USER19> Do you think we could draw a parallel between agile software development and the communist movement ?

<comment><USER17> Absolutely. Both claim to be about empowering the Workers but in fact disenfranchise them.

<comment><USER20> All roles are equal, but some are more equal than others.

</comment></comment></comment></comment><comment><USER21> Your software should be agile, not your process. Your process should be "disturb as little as possible".

Either you code or you get out of the way and take responsibility for the people that code by slowing them down just enough to trust them.

<comment><USER22> I agree with this 100%.

In order to benefit from agile, your codebase and pipelines absolutely NEED to be built in such a way that they can easily accept and ship lots of small changes, and ideally should maximise the efficiency of your code. You should spend most of your time writing business logic, rather than code to facilitate the code that contains your business logic.

</comment></comment><comment><USER23> > Delivering teams deliver on the market cadence.

"delivering teams deliver" \-- got that. "... on the market cadence" \-- err... market. cadence?

<comment><USER11> I think it captures a subtle nuance pretty well.

If you're building a SaaS app, you can release several times a day and users will not notice and be fine.

If you're building a mobile app, you can release maybe 1-2 times a month and users will be fine. If you push out 3 app store updates every day, that is going against the market cadence.

If you're building software for automated machinery, you can release maybe 1-2 times a year. The market will not accept running updates every night.

Without considering the context of your market, saying things like "we need to be doing more CI/CD" or "we need to be working in 2 weeks sprints" or "we'll be ready to release the new version in 18 months" might not make much sense at all.

<comment><USER24> I disagree. I got the opportunity to hear a talk from Jez Humble, and one of his examples was HP and printer drivers. So this is likely in your last scenario there. They still reaped a lot of benefits from fixing their development processes and advancing continuous integration and automated testing. It looks like it might be mentioned in this podcast, though I haven't listened yet:

[http://www.se-radio.net/2015/02/episode-221-jez-humble-on- co...](http://www.se-radio.net/2015/02/episode-221-jez-humble-on-continuous- delivery/)

EDIT: HP is covered roughly minutes 8-10.

Also found this, though I'm having trouble getting the video to load to vet it:

[https://www.safaribooksonline.com/library/view/continuous- de...](https://www.safaribooksonline.com/library/view/continuous- delivery/9780134389363/CONT_01_05.html)

<comment><USER11> I don't think we are in disagreement. Certainly there are benefits from these things. The crux is that practices will reach diminishing returns at different times depending on context -- one such piece of context being market cadence.

Is continuous integration and automated testing helpful? Yes. Is the cost/effort to move from a process that can deploy monthly to one than deploy hourly worth it? Well, it depends -- if our customers want software updates once per year, then no, it doesn't particularly matter if "master is ALWAYS deployable" or "no builds are failing" on a given day.

<comment><USER24> Except what happens is that business want to release a completed feature. But you're half-way through your monthly deploy cycle and thereby have to either push the date or force your process faster.

TheCoelacanth made a sibling comment to yours which I think addresses the idea very well:

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

</comment></comment></comment></comment></comment><comment><USER10> I give credit that each section actually calls out a "Core Metric". I'd wager that most organizations get through "Focusing" and "Delivering" only to fall apart at "Optimizing".

They call out exactly why the "Optimizing" step fails, "One of the biggest challenges in enabling Optimizing fluency is giving the team true control over its product direction. The distinction between an Optimizing team and a Delivering team is that, within the constraints of its charter, the Optimizing team makes its own decisions about what to fund and where to focus their efforts. Managers need to delegate this power to teams, which is often a difficult change for organizations."

A CEO, VP, or high level employee in a product management capacity will not want to give up this control. After all, from their perspective they're in their position because they've steered the product to it's current success. Yet, there's never an actual track record, metrics, or decision record to determine how well these "decision making" individuals have actually performed in steering the product. And attempting to implement any sort of framework to track successes and failures at this level will be met with extreme prejudice. After all, nobody wants to find out that they're actually bad at a $200,000 \+ a year job.

</comment><comment><USER25> Quoting something agreeable I read on Twitter a few days ago

"If your code is crap, stickies on the wall won't help." \- @HenrikKniberg

</comment><comment><USER26> When management says sprint, you say, "How fast?"

I find the language plain disempowering to developers.

<comment><USER27> In agile are you permanently in a sprint? When one sprint ends you start a new one, right? That's insane - you can't sprint all your life.

<comment><USER28> Which is precisely why there is a break between sprints, for planning and downtime...

<comment><USER29> That's funny, in all of the places I have worked the sprint ends on a Friday and the next one starts on Monday. I want one of these sprint breaks.

</comment></comment></comment></comment><comment><USER30> Very odd coincidence. A professor I have just have this whole lecture with the same graphics on Wednesday.

<comment><USER31> I hope he credited us!

<comment><USER30> I actually just checked the class slack channel and he posted the article in there right after class :)

<comment><USER31> Which university and class was it, if you don't mind me asking? I'd like to keep track of where the model is being taught. Feel free to email me at the email in my profile if you'd rather not respond publicly.

</comment></comment></comment></comment><comment><USER32> > "Organizational leaders are complaining that they're not getting the > benefits they expected."

Aah, the good 'ol consultant proverb: If agile isn't working then it's your own damn fault.

</comment><comment><USER33> I've had a downer on Scrum for a long time - and yes I'm a Scrum Master - <USER2> this article has crystalised my thinking. Also the site someone posted below with a profame name - awesome. Enough already jeez.

</comment><comment><USER31> Hi everyone, James Shore here, co-author of the article. I'm happy to answer any questions that you might have, or debate the value of the model.

</comment><comment><USER34> I thought this might have something genuinely valuable to say until I saw the 'TM' after 'Agile Fluency'.

<comment><USER11> From the footnote:

> Agile Fluency is a trademark of James Shore and Diana Larsen. (We've had > problems with other people using the term "Agile Fluency" while > misrepresenting our model, so we felt we needed to trademark the term to > prevent that from happening.)

I can see how that would be frustrating, as this model is a response to the warping of Agile. Have to fight fire with fire, I suppose.

</comment></comment><comment><USER12> It seems a bit weird when a methodology requires fluency to be effective at all.

<comment><USER35> IIRC it's named after similar levels of language fluency. So the idea is that you start by:

\- being able to ask for things you want (ordering in restaurants or getting a team to deliver something),

\- then offering things to other people (waiter in a restaurant, or saying, hey, would this feature be useful to you in the state it's in right now?)

\- then being able to negotiate and talk about advanced themes (running a business, or saying, so, we couldn't do quite what you designed, but here's something that meets your intent; how's that?)

\- then by being totally fluent and disruptive (writing poetry and literature, or moving into a new market).

The idea is that there's value at each stage, and some people won't actually need to move to subsequent stages if they're getting what they want in earlier ones.

(I am not an expert in the AFM and stand ready to be corrected.)

</comment></comment><comment><USER36> The title for this HN item is misleading. The article was written by James Shore and Diana Larsen, and they should be credited for that. It is published on my site, because we felt that would help it gain more visibility. I find their model very helpful in understanding how teams take on agile thinking and practices.

<comment><AUTHOR> I'm very sorry about that, I was referring to the "Martin Fowler" brand/website, not you as the person. Can't change it anymore...

<comment><USER37> We've reverted the title to that of the article. Thanks!

<comment><AUTHOR> Thanks

</comment></comment></comment></comment><comment><USER38> Can we now talk about Lean as brain and Agile as BS?

</comment><comment><USER39> _Agile methods are solidly in the mainstream, but that popularity hasn 't been without its problems. Organizational leaders are complaining that they're not getting the benefits they expected. This article presents a fluency model that will help you get the most out of agile ideas._

Perhaps, rather than a fluency model and the associated billable consulting hours, there are simpler and less expensive explanations of the failure of Agile Inc.'s advice to software developers.</comment>


The Top Tech Companies by Revenue per Employee - <AUTHOR> http://www.visualcapitalist.com/top-20-tech-companies-revenue-per-employee/ <comment><USER2> That Apple is on the list and Amazon is not is a bit irking to me. Since they're clearly counting Amazon's fulfillment employees, but I doubt they're counting for example apple store employees, or the half of Foxconn which is basically Apple.

That is to say, this data can be massaged.

<comment><USER3> They do include Apple retail employees.

Updated: 116k employees, 215.6 billion USD in revenue.

<comment><USER2> Ah, my mistake. Even still I think the bigger issue is that Amazon includes fulfillment employees, whereas Apple (a hardware company, by most accounts) does not employ anyone in hardware production, instead contracting that work out.

Of course that leads to a bit of a slippery slope ("why not only count the AWS team"), but I still think its an important note.

</comment></comment></comment><comment><USER4> I'm not sure why infographics like this usually focus on revenue instead of profit. Revenue is not a meaningful measure of which companies are "stronger." It's like comparing weighlifters without taking their size into account. (I'm much more impressed with someone smaller who can lift 300 lbs than someone huge who can lift 350 lbs.)

Other things being equal, would you rather have a 10,000-employee company that sells $10b worth of widgets at a 1% profit margin, or $2b of widgets at a 40% profit margin?

<comment><USER5> I respectfully disagree. From a short term investment perspective, then yes, perhaps I would be interested in profit/employee ratio. However, from an holistic economical health and long term investment perspective, I want to see the top revenue/employee generators.

Why is that? Because revenue is a pure measure of productivity, whereas profit is a measure of income after a number of filters (deductions are applied - some of which are subjective) have been applied. Using revenue, I can see how much horsepower a company is contributing to society.

It all boils down to what your looking at the data for.

If I'm looking to hire one person to lift kegs of beer into my truck everyday (this is me dreaming) I'm more interested in the big lady doing more absolute work (e.g. lifting 350 vice 300 lb).

<comment><USER4> I get what you're saying, although my view is a little different. Where we agree is that it's key to measure the horsepower a company is contributing to society. However, my perspective is that profit is a better approximation of that than revenue.[0] Revenue is often more reflective of input costs than value generated. For example, if you buy $900k of steel, spend $25k doing something to it, and then sell the resulting product for $1m, then how much value did you create? I'd argue that it's the profit ($75k) and not the revenue ($1m).

[0] That said, profit isn't a perfect metric either. By that measure, Amazon contributes almost nothing to society. Some combination of R&D reinvestment and contribution margins is probably a better metric.

</comment></comment></comment><comment><USER6> The Top 20 _Public_ Tech Companies by Revenue per Employee.

There are some private ones with far higher revenue per head than any of these.

<comment><USER7> Specifically, the top 20 of the 69 members of the S&P 500 information technology sector index.

</comment></comment><comment><USER8> I believe Netflix is missing (should be #1 here with $2.5M per employee).

Apple is notable for its large retail staff. Its profit per engineer may even exceed that of Netflix, despite being a much larger company.

<comment><USER9> Are you including the actors and production crews for Netflix's exclusive content?

<comment><USER10> Smaller companies can quickly fare better than bigger ones, see Nintendo: [http://quotes.wsj.com/NTDOY/financials](http://quotes.wsj.com/NTDOY/financials)

</comment></comment></comment><comment><USER11> All this infographic tells me is that these companies probably outsource their support jobs to other companies.

That is, instead of hiring their own full-time janitor to clean up at headquarters, they hire CleanCo sanitation service company, who hires the full-time janitor to clean up at headquarters. Instead of hiring a cook to work the company cafeteria, they hire CaterCo corporate catering company, who hires the cook to serve the cafeteria line.

No idea what's going on with Apple. It seems implausible they could bring in that much per employee if you include all the staff at their retail stores.

</comment><comment><USER12> Does that data include contractors? As we know well, companies often use contractors as large parts of their labor forces and to fill important roles.

In the article's data, the differences between the companies could depend to a great degree on the variation in employment relationships (i.e., contractor or employee) and not in the productivity of labor.

</comment><comment><USER13> Remarkable how capital intensive hardware is: AMD is on the list but often operates at a loss!

<comment><USER14> Also wondering why Nvidia didn't make it to this list.

</comment></comment><comment><USER15> This would be a much more interesting list to look at if it included all public tech companies, not just Fortune 500 companies.

</comment><comment><USER16> Now I can brag and add my (small) business in the top 5!! ;) I am guessing there would be quite a few others in that position.

</comment><comment><USER17> Credit Card companies are Tech Companies now?

<comment><USER18> Credit Card companies are the ones who manage the transaction between the point of sale and banks that issue credit cards. There is a sophisticated network of technologies to process transactions and manage and mitigate fraud. They may not sell tech, but many of the companies in the list don't, either: tech is a means to their end.

<comment><USER19> > tech is a means to their end.

Wouldnt this be all companies on the planet then

<comment><USER18> No, not remotely. Some companies use tech as a tool of convenience but have no need of being involved in its development. For example anyone who operates a small-time retail business who sells via Amazon or their own e-commerce site. Companies like the ones I refer to depend on having and developing sophisticated technology as a part of their core competencies and business model.

For example, there isn't a (sane) bank on the planet that would use, say, Visa as their payment processor without the various indemnities against fraud in the contracts they sign. And those indemnities are only possible if Visa has a sophisticated payment processing network with fraud detection.

</comment></comment></comment></comment><comment><USER3> Imagine interviewing at Apple. "Can you bring us an extra $2 million/year in revenue? No? Then go away."

<comment><USER20> At $700 per iPhone, that's only 3000 more iPhone to sell in a year.

Could you improve the sales of the iPhone by 3000 somehow? probably.

</comment></comment><comment><USER21> And at these companies, the employees are paid many times higher than market average rates, right? Free market dictates this? The appropriate value of any product or service is quickly determined by the market and compensated accordingly?

</comment><comment><USER22> Do lists like these make anyone feel bad when comparing their pay?

I don't know how to measure my contributions in terms of dollars but these lists make me feel a bit down.

<comment><USER21> Measuring your contributions in terms of dollars IS tough. Someone at the company likely had a number for you somewhere, or at least your 'position' (since they like to think of you as being a superfluous factor, able to be switched out for any similar cog), but you won't ever see it. This is why sales people are usually the best paid people at any company next to the executives (and sometimes above them for non-public companies). When the company says 'we don't know if we can give you a raise this year' or similar, the sales person can say 'I brought you $15 million in business last year - you can afford to give me a raise that matches cost of living increases.' Hardly anyone else in a company can ever do that.

</comment></comment><comment><USER23> How come there are no tech companies from SF there?

<comment><USER24> Most of them make very little, or negative money.

<comment><USER25> This is revenue, not income. If you spend $2 to make $1 in revenue that's still revenue.

<comment><USER24> What I said still applies.

<comment><USER25> You were speaking specifically of profit.</comment></comment></comment></comment></comment>


Why IBM Doesn't Agree with Google's Open Usage Commons - <AUTHOR> https://developer.ibm.com/blogs/istio-google-open-usage-commons/ <comment><USER2> I'd love to read about IBM's opinion on this (and generally had always hold their in-depth developerwork's articles in high regard) but the site is beeing GDPR'd in EU (bringing up cookie setting dialogs that "make me think" and stop reading and even soft-blacklist developerworks) when I think it really doesn't have to. I just can't imagine IBM is after analytics and ad pennies, and think they should especially reconsider publishing justifications and opinion pieces behind GDPR walls when they want to reach the largest audience. Or best, stop tracking altogether; we know IBM isn't into doing evil things with user data, so why make developerworks look like a cheap content marketing site?</comment>


Show HN: Geolog – IP geolocation for SSH brute force attacks - <AUTHOR> https://github.com/ludovicianul/geolog <comment><USER2> What is the reason to use this?</comment>


Vodafone to Resell Dell's Netbook - <AUTHOR> http://www.pcworld.com/businesscenter/article/150693/vodafone_to_resell_dells_netbook.html <comment><USER2> 3 is already doing something similar: [http://www.three.co.uk/personal/products_services_/mobile_br...](http://www.three.co.uk/personal/products_services_/mobile_broadband_/laptop_packages.omp)</comment>


Funding Redox OS Development - <AUTHOR> https://www.reddit.com/r/rust/comments/5klu34/funding_redox_os_development/ <comment><AUTHOR> For those wondering, Redox is a fairly new OS project, written in Rust, making amazing progress [1].

You may ask why?

The creator in his own words:

" _Redox goes beyond developing a micro kernel, and associated drivers. Redox includes a large number of projects that run on any Rust platform - Windows, Linux, and OS X.

I want to develop a Rust ecosystem that enables users to design secure systems, even if they choose to install the Redox userland on a different kernel. As for the whole Redox system, including the kernel, the use cases of a secure computing platform based on a microkernel, Rust, and a well designed ABI are limitless. I would want to initially target the virtualized server market, followed by embedded systems, followed by turning Redox into a hypervisor._"

I am personally interested in projects that actually push the low level parts of Rust and prove that it can indeed be used in areas such as OS development. Rust already prioritised some things because of Redox and I'd imagine it can serve a similar role as Servo does, but for a lower-level of the stack.

I'd consider signing up for the Patreon[2] if you can.

[1] - [http://www.redox-os.org/screens/](http://www.redox-os.org/screens/)

[2] - [https://www.patreon.com/redox_os](https://www.patreon.com/redox_os)</comment>


Ask HN: What does team time tracking cost you? - <AUTHOR> <comment><USER2> Me: Costs nothing because I use an automatic time tracker called WakaTime [1].

However, I only track time outside of work when invoicing contracting clients.

At work I only track feature velocity not time. At work I only use the automatic time tracker for goal setting, leaderboards for fun, and to just see my stats such as time I spend waiting for code to compile vs writing code.

[1] [https://wakatime.com](https://wakatime.com)

</comment><comment><USER3> Through my career, it was dependent on how much transparency my boss would like to have. When the choice was mine, we didn't track due to cost and to avoid the feeling of being watched. In my last company I did this for invoicing the customers and it was few hours a month. Quite expensive since I was high up in the hierarchy.</comment>


Giles Bowkett: Summon Monsters? Open The Door? Heal? Or Die? - <AUTHOR> http://gilesbowkett.blogspot.com/2008/05/summon-monsters-open-door-heal-or-die.html <comment><USER2> Best idea inside:

 _If you do the math, it's actually quite obvious that if your popularity contest for ideas inherently, by its structure, favors people who waste their own time, then your contest will produce winners which are actually losers. The most popular ideas will not be the best ideas, since the people who have the best ideas, and the ability to recognize them, also have better things to do and better places to be._

Regarding:

 _I want my blog banned from Hacker News. I'm not even kidding._

Suggestion: don't leave it up to News.YC to implement this. Set up a mod_rewrite, or even just a JS insert, which checks for a news.ycombinator.com referrer and bounces traffic to an error (or gross-out) page. Voila -- submissions will be rare, and those that are submitted won't be promoted.

</comment><comment><USER3> Interesting that the very post in question is a pristine example of a flash of genius insight ("What's broken about the social news model and causes every social news site to turn into hogwash eventually") buried in the middle of a tedious rant.

To Giles: If you want to make the world a better place take a look at yourself and make a change! The value of this post could have been communicated in about 3 paragraphs, with no dubious pictures and ranting nonsense.

That said, a very interesting point.

<comment><USER4> I actually liked the rambling, ranting quality of the post. "People are asking themselves how to save Hacker News, and they need to realize there is only one technology which can save Hacker News, and that is the _time machine_ " <\- priceless :)

I probably wouldn't have read the post if it were shorter and dryer, though it looks like it had the opposite effect on many.

<comment><USER5> I have to agree, all the rambly cultural references made it really fun to read!

</comment></comment></comment><comment><USER6> Aside from the pseudo-zed-shaw rant, I think he had a very interesting and enlightening point about the karma-as-video-game problem, and the general less-productive-people-have-more-time-to-influence problem.

I would like to think we solve this here by being too boring for the _"Hordes Of Moronic Imbeciles Expressing Their Opinions About You"_ (his term for it). However, being a jerk to people here and then being smug about it makes it hard not to consider one part of that group.

If you don't want to see your own site, block it: <http://userscripts.org/scripts/show/25039>

<comment><USER7> We need a word for "being a jerk to people here and then being smug about it" online. I think it's basically the same kind of problem as trolling. It doesn't help the signal to noise ratio of a site by generating another bit of rude noise, no matter how emotionally satisfying you think it is at the time.

<comment><USER8> > We need a word for "being a jerk to people here and then being smug about > it" online.

meta-trolling?

</comment></comment></comment><comment><USER9> He's right about delicious. After an hour browsing, I'm rather in awe of that site. It has a very good signal/noise ratio. Almost as high as dzone & much more readable.

<comment><USER10> the guy who made delicious purposely didn't include "community" features like ratings or comments.

<http://simon.incutio.com/notes/2006/summit/schachter.txt>

</comment></comment><comment><USER11> Giles, I know you're reading this. We refuse to take you seriously until we see pictures of Paul Graham in a sombrero.

</comment><comment><USER12> A jumble of thoughts on social news site quality:

What are we measuring, exactly? It's hard to talk about without defining what we're measuring.

A stab at defining some quasi-objective metrics, or, How I think about social news quality:

Are all the good stories getting submitted? (Sometimes the real question is: Are there any good stories on a given day, at all? HN usually nails the stuff I would choose to read in my blog reader. There is good volume here.)

How many bad stories are submitted? Does it matter?

Are the good stories being voted up? (I'd say 'usually' for HN. Though some gems are missed by the upvoters. Bowkett had his example. There was an awesome PDF earlier today that wasn't voted up. I blame a shoddy headline there.)

Are the bad stories being voted up? (I'd say sometimes for HN. There was that bad bout right after TechCrunch. And lots of Ask YC posts that bore me make it to the front page.)

How good is the discussion? (HN is the best I've seen for a site of this wide scope. People are harsh on lazy English, good at ignoring trolls, good at pointing out logical fallacies politely.)

How easy is it to choose good stuff to read? (On the front page, points and # of comments are great indicators. Lots of entries means there's plenty to scan from.)

One consideration is that I come back to HN at different times for different purposes. Sometimes I'm bored and looking for some short fluff to tide over a compile. Sometimes I'm bored but energetic and trawling for something interesting to learn. Sometimes I'm in the mood to check out what other people think about some issue, sometimes I'm not. Sometimes I want to bust 3 minutes on a quick tidbit, sometimes I want to bust 30 minutes on a paper or good Gladwell article. I can't judge HN for my mood swings, only for how easy it makes it for me to satisfy the varied cravings.

All in all, I like HN just fine, and I encourage Giles Bowkett and people like jrockway below to vote with their back buttons.

<comment><USER13> > People are harsh on lazy English, good at ignoring trolls

Wouldn't it be preferable to be good at ignoring lazy English? If the lazy English comes with trolling, it's ignored completely; if the lazy English comes with sincerity, everything's handled politely.

</comment></comment><comment><USER14> I think he has an interesting point about why these types of sites don't work very well. But I think he's wrong to say that there isn't any technological solution - you just have to do away with the idea that everyone is equal.

How about this as a solution: * Everyone can write comments. * Only moderators can vote on comments * Only moderators can submit articles * The number of moderators is fixed (at say... 1000?) * If a moderator hasn't moderated in the last 3 months, they are removed from the moderator list, opening up a vacancy. * The person that replaces the removed moderator is the commenter with the highest average point score for their comments (ie total points/number of posts), provided they have posted in the last month. It may be necessary to add a minimum total points score as well (say 100 points, and then it's the person with at least 100 points, and the highest average that becomes moderator).

This type of system should ensure that only things that interest people that themselves have been found to have interesting things to say will get voted up. There will still be trolls, but they won't be voted up.

<comment><USER13> Moderators? Points? This is a proposal completely ignoring what Giles is talking about. How would moderators be much different than what we have now? The people that spend the most time here would become the moderators, and we would lose a lot of the votes that "count".

<comment><USER14> Well, geeez, I don't know, maybe because you only become a moderator after having demonstrated your ability to generate original and interesting thoughts!

Apparently you struggle with basic maths, so let me help you out: my whole point was that you should reward interesting commenters, not prolific commenters. Indeed, considering it's actually quite difficult to be both prolific and consistently interesting, being less prolific should assist in increasing your average.

But hey, I understand why your nose has been put out of joint. Based on your post here, you wouldn't make the cut for moderator...

<comment><USER13> > Apparently you struggle with basic maths

OK...

> my whole point was that you should reward interesting commenters, not > prolific commenters.

In theory, great, but Giles' whole point was that in practice, this just wouldn't work. In the end, you're not rewarding interesting commenters, you're rewarding the prolific ones, because the prolific ones are the only ones who have enough time to spend on a site and be moderators. If anything, moderators should moderate content, NOT create it.

> But hey, I understand why your nose has been put out of joint. Based on your > post here, you wouldn't make the cut for moderator...

And comments like this (and the first quotation) would make you eligible?

Really, though, it seems that a lot of people that could provide great content, but sparingly, wouldn't make the cut, either.

<comment><USER14> You seem to be under the impression that I agree with Giles. Let me refresh your memory of how I opened this little discussion:

"I think he has an interesting point about why these types of sites don't work very well. But I think he's wrong to say that there isn't any technological solution - you just have to do away with the idea that everyone is equal."

You see? I think he's wrong! But he is correct to point out that current systems favour prolific posters, not quality posters. I used that idea as a jumping off point to perhaps find a solution, rather than doing a Giles, throwing my hands up and saying it's all too hard, and can't be done.

You also seem to feel that by definition anyone that spends time on these sorts of discussion is exactly the kind of person that you don't want to see comments from. Bizarre. I mean, take PG for example. He has effectively adopted the strategy that I am putting forward - he takes a lot of time crafting his essays, but he doesn't make a lot of them. We all find these posts interesting enough that we hang out on his site, and in particular on HN.

My strategy was to try and capture that idea of quality over quantity. As far as I am aware, no one has attempted to moderate a site this way yet (although maybe I have just not visited the right site yet).

Anyway, do you have anything more constructive to say other than 'but, but, you disagree with Giles!!!!!'? Because, as I've already said, I started this converstaion by stating that I thought Giles is wrong - that I disagree with him is a given.

<comment><USER13> > You seem to be under the impression that I agree with Giles.

No, I merely stated that your "solution" took every "problem" that Giles observed, and magnified it: making all of those problems bigger.

> But he is correct to point out that current systems favour prolific posters, > not quality posters. I used that idea as a jumping off point to perhaps find > a solution...

Right, that was one of the problems he mentioned, and it's one of the problems I pointed out getting worse in your "solution." Your moderators would be those prolific posters: people who had time to be on the site regularly. The casual votes or submissions would be lost, and the system would continue to favor prolific posters. (OK, now I've brought this point up several times to you, you haven't addressed it, and you continue to act in a hostile manner.)

> You also seem to feel that...

I don't, but would like to note this fallacy of yours.

> I mean, take PG for example...

I read what he writes, and I'd recommend his recent essay, "How to disagree."

> As far as I am aware, no one has attempted to moderate a site this way yet > (although maybe I have just not visited the right site yet).

Wikipedia is an example of this kind of moderated site with contributed content.

> Anyway, do you have anything more constructive to say other than 'but, but, > you disagree with Giles!!!!!'?

Yes, I've mentioned it in every post, and you haven't addressed it, so I'll mention it twice in this one:

> But he is correct to point out that current systems favour prolific posters, > not quality posters.

OK, so you _DO_ agree with him here.

> I used that idea as a jumping off point to perhaps find a solution...

And your "solution" goes completely against this. Moderators would not be, by definition, "quality" posters, but rather "prolific" posters. And if only moderators could submit content, we'd lose any casual "quality" submissions.

<comment><USER14> "Right, that was one of the problems he mentioned, and it's one of the problems I pointed out getting worse in your "solution." Your moderators would be those prolific posters: people who had time to be on the site regularly. The casual votes or submissions would be lost, and the system would continue to favor prolific posters."

You see, right there. You seem to think I was being nasty by suggesting your maths was subpar. And yet... Here, let me give you a nice simple, concrete example: Poster A only posts once a month. A casual poster by most definitions. But his posts are always interesting and relevant. He averages 30 points for each of these posts, but in a three month period only gains 90 points. However, as he has only made 3 posts, he finishes with an average of 30. Poster B is a prolific poster (by the way, maybe it's your understanding of the word 'prolific' which is the problem here - it means 'producing in large quantities'). She is on the site every day, posts messages at least 5 times a day, and gets about 2 points for each message. Over the three month period, she makes about 900 points. BUT, her average, due to the fact that she has made about 450 posts, is only 2. So, under the system I propose, is it the prolific poster, or the quality poster that gets moderater status? Well, seeing as my system works on averages, it's obviously the quality poster. Which of course shows that when you baldly asserted :'Moderators would not be, by definition, "quality" posters, but rather "prolific" posters', you were just plain wrong.

I dont know, maybe your maths doesn't suck, but if that's the case, you have a serious problem with reading comprehension. Either way, you're just plain wrong in what you assert. Sorry if you don't like hearing that.

'And if only moderators could submit content, we'd lose any casual "quality" submissions.' Ah hah! There! I knew you could do it! A valid point! This is indeed a downside to the system I proposed. The idea was to stop the forum being constantly flooded with techcrunch articles etc. But I'm willing to concede that this isn't perhaps critical. You probably could trash it, because in theory, the high quality moderators would vote down boring crap, and vote up interesting crap, providing an effective filter against rubbish submissions.

<comment><USER13> > You seem to think I was being nasty by suggesting your maths was subpar.

> maybe it's your understanding of the word 'prolific'

> maybe your maths doesn't suck, but if that's the case, you have a serious > problem with reading comprehension

> you're just plain wrong

> Sorry if you don't like hearing that

> Ah hah! There! I knew you could do it! A valid point!

What's with the rampant condescension?

As far as that last "valid point", it's one that I stated awhile ago, and you've only addressed it now.

Look, I'm always willing to have an intelligent argument, but I'll defer a long discussion to when you're willing to make points without blatant fallacies. I'll offer this criticism:

Your latest example no longer talks about moderators. Ignoring this, if a poster averages 30 points per "post", this still falls back to points, and the idea of "popularity contests" and "vote when you agree" mentalities, which are _points_ Giles brought up in his post.

<comment><USER14> Sigh. Here's some helpful advice: when you're in a hole, stop digging!

> As far as that last "valid point", it's one that I stated awhile ago, and > you've only addressed it now.

You did? I've just been back over your posts in this thread, and nowhere else do you mention moderators making (or not) submissions. But hey, I'll just add 'lacking honesty' to 'sucks at maths' and/or 'poor reading comprehension'.

> Your latest example no longer talks about moderators. Oh? how about this: > "So, under the system I propose, is it the prolific poster, or the quality > poster that gets moderater status? Well, seeing as my system works on > averages, it's obviously the quality poster." This is the sort of thing that > just makes you look silly. As I have previously said, either you have poor > reading comprehension, or you're a liar - the evidence is there for all to > see...

> Ignoring this, if a poster averages 30 points per "post", this still falls > back to points, and the idea of "popularity contests" and "vote when you > agree" mentalities, which are _points_ Giles brought up in his post.

Oh, here we go again; "but, but, you're disagreeing with Giles!". Yes, and what's your point exactly? I've already said that I disagree with Giles (twice before this post, but, hey, I'm happy to repeat myself if that'll help you). Apparently you're not terribly good at picking up on things that aren't explicitly stated (an even then!), so I'll explain.

Giles suggests that popularity contests (points systems) suck, because they are won by people that waste their time on blogs/news sites. I propose a system that keep points, but hopefully rewards quality rather than quantity of posting. Do you see what I have done there? I have attacked one of the assumptions of Giles' "Popularity contests suck" position - namely that popularity contests are always won by time-wasters, who generally speaking are not interesting people.

If you want to argue against my position, you need to demonstrate why my system won't correctly give voting rights to interesting people, or show why people that write interesting posts are not necessarily the best people to be deciding which other posts are interesting. Or maybe suggest a superior system that doesn't use points in any way.

What you can't do is simply repeat back to me Giles' position. I know what Giles' position is, he's been kind enough to write a big long entry on his blog to inform us all. Your repeated restating of his position, without adding anything new to the discussion, and completely failing to address any of the concerns I have raised is nothing other than good ol' fashioned trolling.

Look, what can I say. I suggest that you go back and read PG's essay on disagreeing again. Please note that he places a high value on actually addressing ideas presented in a post. Maybe you should try doing that rather than whinging about others being what you perceive to be condescending... When you start doing that, you'll be amazed by how quickly the condescending reponses disappear.

<comment><USER13> > Sigh. Here's some helpful advice: when you're in a hole, stop digging!

> But hey, I'll just add 'lacking honesty' to 'sucks at maths' and/or 'poor > reading comprehension'.

> This is the sort of thing that just makes you look silly.

> either you have poor reading comprehension, or you're a liar - the evidence > is there for all to see...

> Apparently you're not terribly good at picking up on things that aren't > explicitly stated (an even then!)

> good ol' fashioned trolling

<comment><USER14> <shrug>

Well, at least there's a lot more sense there than in most of your posts :-)

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER15> Can someone give us (or at least me) the gist of what he's saying?

<comment><USER12> Systematic factors inherent to social news sites degrade their quality over time. Voting is broken because of the nature of the people who vote the most and thus have the most influence on the front page: They are people with too much time on their hands. That is, anyone with a worthwhile opinion is off doing other things more important than commenting or voting on a news site.

This isn't to say I agree, I'm just trying to summarize the relevant bits as best as I can.

<comment><USER16> Yes, this is the gist of it.

The other aspect is that he thinks there is only 1 type of source that's ok for information consumption, which is the type that spews out brilliance. All the other sources are worthless, including the people that never say anything meaningful and the people that say something brilliant once in a lifetime.

<comment><USER17> I don't think that's what he was saying. He was just complaining that he needs better filtering mechanisms, so he can find the 1 in 100 posts by e.g. Cory Doctorow that he would enjoy, without having to read the other 99.

<comment><USER18> And he wants other people to find them for him, but not the people who have the time to do so. :)

</comment></comment></comment></comment></comment><comment><USER19> allow me to summarize: giles bowkett is impolite on social sites such as this one, therefore they're all doomed. also, there are people on the internet that cause him trouble, like tim bray and cory doctorow.

whew, such a heady brew of straight-up TRVTH that guy is dishing out. i'm still reeling from the force of it.

<comment><AUTHOR> Have you read the post? You missed the most important 3 paragraphs in the middle about repeating the mistakes of slashdot, digg, reddit.

Tell me, what is news.YC doing to not repeat the same mistakes?

<comment><USER15> 1\. The kind of stories that are most popular on reddit and digg (pictures and politics) are banned here.

2\. Because that kind of stuff is banned, the average digg/reddit reader, if he comes across News.YC, finds the content boring and leaves.

3\. The custom of the site is to be civil in comments.

4\. Votes on comments affect karma.

5\. Trolls are fairly rapidly banned. The only reason Giles hasn't already been banned is that I thought perhaps he was joking.

<comment><AUTHOR> These are really nice measures, but I think they still do not address the most important problem - people who have more time on their hands have disproportionate effect on the site.

I guess #6. vote weighting will be required soon.

<comment><USER15> I have some internal metrics to warn me if the top stories get bad, and there has been no degradation I can detect. Nor do I personally notice a difference.

There were a bunch of crappy submissions after we got that big influx of users from TechCrunch (both I and my software agreed about that), but the quality is now back up to where it was before.

<comment><USER20> The HN system works better than any other I have seen (it's kept me in line whenever I was tempted into adding noise rather than value).

I don't think degradation of HN over time is unavoidable, clearly a lot of smart people here put energy into resisting this force of nature.

One challenge is how to preserve the HN code of conduct. I've noticed some misunderstand the voting system as an agree/disagree button. I think the software should notice patterns that don't look right, such as both up- and downvotes on the same comment (popularity contest alert).

Good people + good tools = good HN.

</comment></comment></comment></comment></comment></comment><comment><USER21> I replied, and ended up writing more than I had anticipated, and put it in a blog post:

[http://webjazz.blogspot.com/2008/05/segmentation-of- social-n...](http://webjazz.blogspot.com/2008/05/segmentation-of-social-news- sites.html)

</comment><comment><USER22> Well, then, how about making it that the more you vote the less your votes matter?

</comment><comment><USER23> I presume you posted this in an attempt to piss him off? :)

<comment><AUTHOR> My startup is not making this mistake, but does anyone care? People seem to prefer trolls and fun social noise to high signal streams that demand your attention.

<comment><USER23> The majority of society demands to be entertained, not to entertain. Those that entertain are put on pedestals to be worshipped (either with praise or scorn).

</comment></comment></comment><comment><USER24> FYI, I'm working on a Greasemonkey script that will let you keep a personal banned site list on reddit/hacker news.

ETA this evening.

<comment><USER24> I've posted the script here:

<http://news.ycombinator.com/item?id=198216>

</comment></comment><comment><USER17> This post is the best analysis of the problems of content filtering and social news that I've ever read. Fun, too!

</comment><comment><USER25> >Reddit was created as a better Digg

No.

</comment><comment><USER26> Am I a bad person for upvoting this?

</comment><comment><USER27> This story gets all my upvotes ever.

</comment><comment><USER28> So because Giles doesn't want to see his posts mentioned on HN, no one else should see them either, despite the chance that some of them might be worth reading?

Ingenious!

Oh, and he's a jerk on HN, but it's alright because it's _intentional_.

I'm not sure that deciding to behave like a jerk is any more noble than happening to..

</comment><comment><USER29> Really funny! Sure, he makes some good points. But funny! And I'm glad I'm not the only one who thinks Doctorow is Mostly Worthless.

</comment><comment><USER30> There's 15 minutes of my life I'm never going to get back. He has a good point, though, Hacker News is barely worth reading these days.

Good job screwing it up, everyone.</comment>


Whats Your Job? - <AUTHOR>

If you have a job, or what degree you're working towards? <comment><USER2> Unemployed, about to turn 60, sometimes wondering if I've retired and just don't know it yet. Used to do embedded programming for EFTPOS terminals, medical equipment and air traffic control systems. Currently doing post production on my mum's audiobook.

</comment><comment><USER3> Official title is 'Systems Engineer', which basically means Software Engineer (including all steps from project requirements to delivery).

We work in the aerial / space image management industry. Big market to tackle for a team of 15 :).

</comment><comment><USER4> Control systems engineer in the mining industry. Working on new technology development for mobile machine automation and other things.

Fairly outside the normal HN crowd but I like to keep in sync with the wider tech world.

</comment><comment><USER5> Computer Science student at the University of Debrecen, Hungary, while working professionally as a Java developer at an established multinational company for almost a year now.

</comment><comment><USER6> The official title is "Systems Analyst III" but I'm a developer. Lots of PHP & Oracle. Great gig. Good company.

</comment><comment><USER7> Software architecture consultant for startups. Helping them to design highly scalable web applications using Java technologies.

</comment><comment><USER8> Entrepreneur at the moment (if thats considered a job :)) Previously worked in Investment Banking

</comment><comment><USER9> Systems programmer for z/OS middle(meddle?)ware. CICS, Websphere app server and MQ.

</comment><comment><USER10> Web developer, right now mostly front-end and integration.

</comment><comment><USER11> Director, Infrastructure & Operations

</comment><comment><USER12> Developer IV - Guidewire configuration developer.

</comment><comment><AUTHOR> I am a second year computer engineering student!

</comment><comment><USER13> Consultant for the health care industry.

</comment><comment><USER14> Software Architect / Consultant

</comment><comment><USER15> senior developer. At a telecom, worked in banking dev for 15 years before that

</comment><comment><USER16> System Administrator

</comment><comment><USER17> Sales support.</comment>


Show HN: Birthbook – Never forget birthdays again - <AUTHOR> http://birthbook.me <comment><USER2> Neat idea! Left aligning content on the FAQ page [1] would make it easier to read, imho.

Also, the logo is nice, but I find its strokes are a bit too thin.

[1] [http://birthbook.me/faq](http://birthbook.me/faq)

<comment><AUTHOR> Hi,

thanks for the feedback. I have adjusted the FAQ to have it left aligned.

Glad you like the logo, it is now quite all over the place so I am looking into making a standard position based on space. Will look into thicken the lines, but personally I like to have it as "unnoticeable" as possible but on the other hand it is the identifier of the product so have to check.

Thanks

</comment></comment><comment><AUTHOR> Hi All,

Developer here. I did some major changes and I hope that the updated version will help you better.

\- No more email required

\- View back the collected birthdays directly

Feel free to leave feedback everything is appreciated.

</comment><comment><AUTHOR> Thanks for all feedback. I made really good progress with all the feedback I got. :+1:

</comment><comment><USER3> Obligatory: when collecting personal information the website should use https.

Typo "The app is in beta, en we will improve it."

I'm not sure a popup date picker is necessary (I know it's optional). A 20 year old would have to click 20 times. It also shows weekdays which should be irrelevant for the day of birth. Personally even to friends I'd like to skip the year.

<comment><AUTHOR> Thanks,

https I am looking into that indeed, how that works with my hosting etc...

The year make sense to leave out and will look into changing that.

The FAQ, missed this update :), thanks for the note. Will improve that and fix the typo.

Thanks for the feedback</comment></comment>


The Best of Python in 2013 - <AUTHOR> http://pypix.com/roundups/best-python-2013/

<comment><USER2> This list(and much of the commentary is just lifted from our(Pycoder's Weekly) newsletters and yearly project roundup issue.

You can check out the full 2013 roundup issue here: [http://us4.campaign- archive1.com/?u=9735795484d2e4c204da82a2...](http://us4.campaign- archive1.com/?u=9735795484d2e4c204da82a29&id=384b699bca)

<comment><USER3> Ugh, I really detest blog posts that only acknowledge in passing (at the end of the article) that someone else has done all of the work. This is literally just copy+pasted from entries in the newsletters.

</comment></comment><comment><USER4> Nice set of links, somewhat confused as to why they disappear in a super-fancy way when you hover over them though...

<comment><USER5> I laughed at the hard absurdity even though I read your comment beforehand.

</comment></comment><comment><USER6> Anyone know anything about codeq.io? As someone creating a similar service ([https://landscape.io](https://landscape.io)) I'd be interested to check it out but it seems to be down right now, and the Twitter account seems to have stopped last May.

<comment><USER7> check the waybackmachine ?</comment></comment>


Show HN: PySchemes – A library for validating data structures in Python - <AUTHOR> https://github.com/shivylp/pyschemes <comment><USER3> How does it compare to established, actively maintained, projects like the following ones ?

\- [https://github.com/alecthomas/voluptuous](https://github.com/alecthomas/voluptuous)

\- [https://github.com/schematics/schematics](https://github.com/schematics/schematics)

\- [https://github.com/pyeve/cerberus](https://github.com/pyeve/cerberus)

\- [https://github.com/fuhrysteve/marshmallow- jsonschema](https://github.com/fuhrysteve/marshmallow-jsonschema)

<comment><USER4> Also a shameless plug for my python library for declarative multi-field validation:

[https://github.com/shezadkhan137/required](https://github.com/shezadkhan137/required)

It makes it easier to expresses complex inter-field validation rules, and is meant to be used with other validation libraries.

<comment><USER5> May I join you in shameless plugging? My own obiwan:

[https://pypi.python.org/pypi/obiwan](https://pypi.python.org/pypi/obiwan)

It predates the MyPy syntax and, in my opinion, is a gazillion times prettier and my "pythonic". I'm not bitter ;)

It's "actively maintained" but I haven't needed to do anything in ages - <USER2> just works :)

PySchemes seems to have very similar syntax, but obiwan is also able to validate signatures in function annotations and is particularly good at validating JSON and msgpack APIs (the python code to validate an API is self- describing and makes excellent API documentation for other parties).

</comment></comment></comment><comment><USER6> Everytime i see one of those i always wonder if they heard of marshmallow. I mean it's like creating a requests competitor really. It's an interesting exercice but the chances to be relevant are very low.

<comment><USER7> I wasn't impressed. Couldn't figure out how to do complex validation of a JSON object, based on the input of another JSON object.

<comment><USER6> I read your comment like somebody saying he is not impressed by this bus that helps the whole town going to the office because he couldn't figure how to do nascar with it.

</comment></comment></comment><comment><USER8> There is also jsonschema:

[https://pypi.python.org/pypi/jsonschema](https://pypi.python.org/pypi/jsonschema)

A post showing a simple use of it:

Using JSON Schema with Python to validate JSON data:

[https://jugad2.blogspot.in/2015/12/using-json-schema-with- py...](https://jugad2.blogspot.in/2015/12/using-json-schema-with-python- to.html)

<comment><USER9> Exactly my thought about json-schema, as I use it extensively in both Python and C++ (excellent library valijson [0]).

Not all Python objects are json-serializable by default, so the ideal solution (for me) would be json-schema with simple syntax for adding custom type validators.

[0] [https://github.com/tristanpenman/valijson](https://github.com/tristanpenman/valijson)

<comment><USER8> Thanks for the info.

</comment></comment></comment><comment><USER10> Check out typeguard: [https://github.com/agronholm/typeguard](https://github.com/agronholm/typeguard)

it offers run-time type checking in a variety of ways, is intuitive, and actively maintained

<comment><USER11> Is static checking with mypy just as good, faster and more timely?

<comment><USER12> They're not mutually exclusive. Static type checking is fine if you can cover all your code with it, but it doesn't enforce anything at runtime. If you're writing a library that will be called by other people's code (which likely won't be statically type-checked), it might still be useful to validate your functions' inputs at runtime.

<comment><USER11> True, and I guess it helps for when your non-validated code calls validated code. Odd how we've come around to realizing the importance of types and contracts after years of dynamic typing.

It's a bit like document databases, people are starting to realize again how convenient relational databases and how helpful schemas are.

<comment><USER12> To be a little more clear, in a language where static typing was mandatory, there would obviously be no need for dynamic type checking of those same types. But since Python's static typing is optional, dynamic type checking at runtime is not redundant.

</comment></comment></comment></comment></comment><comment><USER13> Maybe I'm missing something, but IMO using isinstance, issubclass and explicit checks achieves the same effect, and is probably more readable. Or not?

<comment><USER14> It's tedious if you wanna validate a complex structure. Most of these libraries are meant to validate stuff that is user input. Imagine I load a complex input from a configuration file into a nested dict and checking it, that'd be really tedious to do manually. A couple checks here or there are ok, but they get confusing and difficult to maintain very quickly. Stuff like optional values, enumerated values etc are also not much fun.

Also error messages for the user. I've mostly used Voluptuous, but it provides much easier to understand error messages.

</comment></comment><comment><USER15> I'm surprised to not see Formencode's validation on any of these lists: [http://www.formencode.org/en/latest/Validator.html](http://www.formencode.org/en/latest/Validator.html)

</comment><comment><USER16> If you want to validate YAML and want line numbers and code snippets in your errors, I wrote this:

[http://github.com/crdoconnor/strictyaml](http://github.com/crdoconnor/strictyaml)

</comment><comment><USER17> I really like 'voluptuous' (and its' ungoogleable fork; 'good')

<comment><USER18> Seconded. It works and let's you build rules declaratively.

</comment></comment><comment><USER19> does anyone know of something like this for ruby?

<comment><USER20> I wrote something similar for Ruby/Rails parameter validation. All of the solutions that were around at the time weren't what I was looking for. It ends up looking like: [https://gist.github.com/ezekg/f525a9d006c97cbcba231aa43e5ac9...](https://gist.github.com/ezekg/f525a9d006c97cbcba231aa43e5ac9b7). Is that something people would be interested in me open sourcing?

</comment></comment><comment><USER21> Looks like clojure spec.</comment>


Over 1 million Xbox Ones sold on day one, matching Playstation 4 - <AUTHOR> http://www.cnbc.com/id/101222864

<comment><USER2> It's amusing to see how the numbers are very close despite the PS4 launching in 11 less countries than the XBone did.</comment>


Facebook has collected your web browsing habits to target you with ads - <AUTHOR> http://mashable.com/2015/09/19/facebook-advertisers-likes <comment><AUTHOR> How is this different from Beacon (which got the FTC involved)?

[http://money.cnn.com/2011/11/29/technology/facebook_settleme...](http://money.cnn.com/2011/11/29/technology/facebook_settlement/)</comment>


The Real Struggle Behind Climate Change - A War on Expertise - David Brin - <AUTHOR> http://open.salon.com/blog/david_brin/2010/02/09/the_real_struggle_behind_climate_change_-_a_war_on_expertise <comment><USER2> Yeah, right. As every day their are more revelations of corruption and incompetence in 'Climate Science'. There is really no such thing. Anyone who says they can build a computer model of the climate is either stupid, ignorant or corrupt. The CRU code is laughably ugly and sloppy, yet they would have us believe that they have made an incredible breakthrough in Computer Science - they can build an accurate model of the climate !</comment>


Interview with Ted Chiang - <AUTHOR> https://medium.com/learning-for-life/stories-of-ted-chiangs-life-and-others-694cb3c80d13 <comment><USER2> I'm so glad that this movie is getting Ted Chiang more exposure. He's one of the most interesting and creative science fiction authors out there, despite and unbelievably small output (he has literally published fifteen stories over almost 30 years, and picked up four Hugos, four Nebulas, and a ton of other prestigious awards.) Maybe this will finally motivate him to quit his day job and write more, or at least get more people reading his stuff.

<comment><USER3> As a writer, I have a sneaking suspicion that Ted Chiang writes a lot more than he publishes. You just don't get as good as he is without lots and lots of practice. I have a feeling there are a lot of projects he scraps that we never get to see, and many of them are probably pretty great.

Personally, I find him and his quality-over-quantity approach inspiring.

<comment><USER4> > Chiang turned down a Hugo nomination for his short story "Liking What You > See: A Documentary" in 2003, on the grounds that the story was rushed due to > editorial pressure and did not turn out as he had really wanted.

This seems to fit your theory.

</comment></comment></comment><comment><USER5> A great short story Ted Chiang wrote that have some themes similar to Arrival (free will) is the one he wrote for Nature Futures:

[http://www.nature.com/nature/journal/v436/n7047/full/436150a...](http://www.nature.com/nature/journal/v436/n7047/full/436150a.html)

<comment><USER6> This is an awesomely elegant little short story.

</comment></comment><comment><USER7> "I can't recommend technical writing as a day job for fiction writers, because it's going to be hard to write all day and then come home and write fiction. Nowadays I work as a freelance writer, so I usually do contract technical writing part of the year and then I take time off and do fiction writing the rest of the year. It's too difficult for me to do technical writing at the same time as fiction writing — they draw on the same parts of my brain. " \- Ted Chiang

Can this be a blocking factor for coding side projects as well? What if companies offered a role where 11 months of the year, you do the company's work, and one whole month you get to make whatever you want? Or a project- based role that covers a year's expenses.

<comment><USER8> Oh, definitely. I've spent vastly less time on coding side projects since coding became a full-time job. Not that I don't still enjoy coding; I do. It's just that by the time I get home in the evening I'm pretty much coded out. Which kind of sucks, because I haven't found anything anywhere near as absorbing to replace it as a hobby.

See also: [http://www.theonion.com/blogpost/find-the-thing-youre- most-p...](http://www.theonion.com/blogpost/find-the-thing-youre-most- passionate-about-then-do-31742)

</comment></comment><comment><USER9> Ted Chiang is incredible. My personal favorite by him is "The Great Silence". Touches on communication, the Fermi paradox and ecology from the point of view of a parrot named Alex - [http://supercommunity.e-flux.com/authors/ted- chiang/](http://supercommunity.e-flux.com/authors/ted-chiang/)

<comment><USER8> Ooh, thanks. I thought I'd read everything he's put out, but I missed that one.

</comment></comment><comment><USER10> Nice, I had no idea Arrival was adapted from a Ted Chiang story. Maybe I'll have to check it out.

For those who aren't familiar with his work, I highly recommend _Stories of Your Life and Others_. It's perhaps the most amazing collection of SF short stories I've read. It's hard to describe it, but there's _something_ about his work that makes it feel both simultaneously more real and more mind-bending than other SF fare. I think it's the combination of his completely outlandish premises (which I can't figure out how to describe without spoiling things) and completely matter-of-fact, mundane way he writes about them.

<comment><USER11> To elaborate, Arrival is based off of the story "Story of Your Life" from that collection.

</comment></comment><comment><USER12> The interviewer here rubbed me the wrong way. I felt like he had his own ideas about the things Chiang explores, and used much of the interview as a way to try to get Chiang to talk about those ideas, rather than talking about Chiang's own exploration of them.

Did anyone else get this sense?

<comment><USER13> I felt the same way, but ultimately decided it's a good attribute for an interviewer to have, even though it didn't work out this time.

A good interviewer should understand his interviewee's work, have ideas about it, and then use those ideas to probe for deeper insights than surface details like "who influences you as a writer?". But deep probes are a little risky -- you might not find anything in that direction.

In this case, more than one of the interviewer's probes was a little off-base, but -- to his credit -- he didn't pursue those questions too far after Chiang's responses came back somewhat tempered. Kudos for trying, and kudos for letting it go.

Finally, kudos to Chiang himself for being clear about how he views his work. When faced with an enthusiastic -- but incorrect -- interpretation of one's writing, some authors would just "go with the flow", hesitant to dampen their readers' enthusiasm (misguided as it might be). But Chiang gently shot down a few of the interviewer's ideas, ultimately strengthening the original meaning of his own work.

</comment></comment><comment><USER14> The greater the marketing hype before a film arrives in my town, the greater the inevitable disappointment. Perhaps Arrival is great, but imho the truly great ones don't invest in such a hype machine.

The "100% at rotten tomatoes" line in the commercials give me pause. I checked. It's at 95, not 100. I can see why. Scores do change, but it's just more evidence of heavy marketing. The best scifi, the really good stuff, doesn't hit a home run with reviewers immediately. I'm suspicious and so will probably go see this movie myself first rather than suggest a group of us go.

<comment><USER15> > The best scifi, the really good stuff, doesn't hit a home run with reviewers > immediately.

Wait, so your expectations for the movie would be higher if the Rotten Tomatoes score was _lower_?

<comment><USER16> I pay more attention to the user rating than the critics rating, critics are either paid off, or what they like in a movie is different than most movie goers.

<comment><USER17> Hard to avoid spoilers this way, but the best way to consider critic reviews is to focus on the negative ones.

If a movie gets 95% on Rotten Tomatoes, and the negative reviews are all rather inane, you can be reasonably confident that it's actually a good movie. But when they start making valid points, you can be confident it's merely overhyped.

</comment></comment></comment></comment><comment><USER16> I truly enjoyed the movie Arrival! Highly recommended.

The least amount of "its a movie" was required of any movie I have seen in years. I did not see where it was going, and I was thrilled when it got there.

</comment><comment><USER18> Ted Chiang is cool. But I think "Story of your life" isn't his best work. If you're going to read one story by Chiang, a good one is "Liking what you see": [http://www.ibooksonline.com/88/Text/liking.html](http://www.ibooksonline.com/88/Text/liking.html)

<comment><USER13> That's interesting, because Chiang himself doesn't view "Liking What You See" to be his best work. In fact, he turned down a Hugo nomination for it, "on the grounds that the story was rushed due to editorial pressure and did not turn out as he had really wanted".[1]

Personally, I think Story of Your Life is a master work. I found the strange writing structure annoying at first, and then right at the end of the story you get an "ah-ha" moment that changes everything. What I thought was awkward writing turned out to be a masterful illustration about a theory of consciousness. I was floored by Chiang's ambition to even write such a story.

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

<comment><USER19> I was a bit depressed that I didn't get to experience that revelation while reading the story, but getting to experience it while watching the movie is fair recompense.

</comment></comment></comment><comment><USER20> (2014); the interview was conducted in 2010 and published here in 2014.

Earlier HN thread with a lot of Arrival discussion: [https://news.ycombinator.com/item?id=12940364](https://news.ycombinator.com/item?id=12940364)

</comment><comment><USER21> I have high hopes for this movie, but I don't enjoy Ted Chiang's writing. It is too clever, the dialog is terrible, and there is an underlying smugness - as if the writer is laughing about his poor, dumb characters and their ignorance.

<comment><USER22> Can you give an example of the too-clever writing and underlying smugness?

I haven't felt that way, but I have only read "Story of your life" and "The Lifecycle of Software Objects", so my sample size is pretty small.

</comment></comment><comment><USER23> I didn't know him until now. I will definitely check out his short stories.

I also love Ken Lu, his book "The Paper Menagerie and Other Stories" is one of the best collection of short stories I have read.

<comment><USER24> Ken Liu actually wrote a response to one of Ted Chiang's stories.

[http://kenliu.name/stories/single-bit- error/](http://kenliu.name/stories/single-bit-error/) is a response/exploration of the same world and ideas as Chiang's "Hell is the Absence of God", in Stories of Your Life and Others.

I recommend reading the Chiang story first.

<comment><USER23> Wow, thank you.

</comment></comment></comment><comment><USER25> For a guy with as many awards as him I am surprised he needs a second job. He doesn't write a lot, but given his quality I am surprised someone hasn't paid him to just write.

<comment><USER26> Short fiction does not pay good money, and that I know of he doesn't publish novels which is where it is POSSIBLE to make a decent to great wage (but quality is no guarantee of making good money).

</comment></comment><comment><USER27> I've just finished reading "The story of your life" the other day and I can't say I'm impressed. Based on the comments I've read about the movie I expected it to be mind boggling. The author claims that knowing the future affects free will but he doesn't bother explaining how could anyone know the future or why would there be only one – quantum mechanics for example states that there could be countless futures/universes. For my standards the story is too swallow. I'm used to reading hard sci-fi where usually authors go into excessive detail to describe their worlds. Chiang doesn't do that. He just presents a theory and lets it linger in your mind. It reads more like philosophy rather than sci-fi.

<comment><USER28> I don't think it's nearly as good as "Understand" or "Exhalation" or "Hell is the Absence of God" (all discussed in OP). Like "Life Cycle of Software Objects", it seems seriously overrated. But "Story of Your Life" is definitely one of the more confusing stories and I had to read it at least twice before I thought I understood what sort of Chiang-style message Chiang was going for.

What I take him as suggesting is not that the aliens really are tapping into quantum woo to see the future (this is what inferior SF authors might do and maybe have in the movie which I haven't seen), any more than light rays see into the future in order to take the shortest path, but doing something more like Watts's _Blindsight_ in trying to explore different kinds of minds: that given the reversibility of the laws of physics and the arrow of time, there is no logical or privileged reason to have a conscious experience of the universe as time unfolding sequentially and computationally according to a program computing 1 planck-second at a time, rather than as an Einsteinian 4D block universe in which the block universe is the optimal path between boundary conditions and everything unfolds as it must and already has. This is similar to points Drescher makes in _Good and Real_: a brain could try to understand the universe by taking the present and extrapolating forward but it also takes the present and extrapolate backward. You can 'remember' the future as easily as the past.

The aliens could be doing this, and it is as valid a way of cognition as anything else. And then the drama comes from the protagonist slowly adopting this way of thinking herself to come to terms with her grief over her daughter's death by adopting a timeless Lagrangian way of thinking and explaining it to the reader who is still trapped in the algorithmic perspective.

<comment><USER13> Yes yes yes. We read "Story of Your Life" in my Sci-fi reading club, and several people came away with the misunderstanding that the aliens could see the future or something like that. But your interpretation is correct (IMHO). Chiang was making a point about the subjective nature of consciousness, or at least one aspect of it.</comment></comment></comment>


SurveyMonkey Acquired by Private Equity Firms - <AUTHOR> http://www.nwinnovation.com/surveymonkey_acquired_by_private_equity_firms/s-0021175.html

<comment><USER2> Hmmmm - is this a good thing or a bad thing? PE firms aren't generally ones to step in and take over something like this, are they?

<comment><USER3> It seems like it's just an oddly worded item, Bain Capital Ventures is in the team and the new CEO was entrepreneur in residence at Benchmark. It's almost like they are converting from a bootstrapped model to a VC model 10 years into the business.</comment></comment>


Capital One Makes Candid Recruitment Pitch to SxSW Techies - <AUTHOR> http://www.americanbanker.com/news/bank-technology/capital-one-makes-candid-recruitment-pitch-to-sxsw-techies-1073261-1.html

<comment><USER2> I went to one of their events. The new-tech/startup mentality thing is legit but...

they really suffer from trying to pitch when they should be sharing information about what they are doing. SXSW sessions are always a little content-lite but it was just a recycled recruiting pitch.

they'd do much better if they had some outside review of their content.</comment>


ZX Spectrum Implemented on an FPGA - <AUTHOR> http://mikestirling.co.uk/2010/09/zx-spectrum-on-altera-de1-teaser/

<comment><USER2> If this sort of thing tickles your fancy, then have a look at <http://www.fpgaarcade.com>

Several implementations of classic arcade games and home micros are available, and Mike is just finishing up a board for these sort of projects.

</comment><comment><USER3> On the World of Spectrum forums there's been some interesting posts on Spectrums that are slowly dying. For those that don't know, the ULA was a custom chip and can't be replaced. FPGA technology allows the spectrum to live on in an (albeit emulated) hardware form.

<comment><USER4> I've got two back home. Is there some reason the ULA will eventually die on it's own, or are they safely stored in the closet for the generations to come?

<comment><USER5> All electronics is bound to die as it ages, due to latent chemical reactions. Chances are, ULA will last longer when unused.

One problem with Sinclair ULAs is that, unlike e.g. logic gate or CPU they can't be readily replaced by a commodity component. ULA is custom-mask chip produced by order in small quantities, the key issue here is scarcity.

</comment></comment></comment><comment><USER6> Thanks for the link. Last month I found a gem in a charity shop - a first edition of Introducing Z-80 assembly by Mr. Sinclair. Only cost me 10p!

<comment><USER7> by Ian Sinclair. Not related to Sir Clive Sinclair.

</comment></comment><comment><USER8> Dang! I should have archived the source to the Sega FPGA system I made as a senior design project. At the time, it required a relatively expensive FPGA, but that was a decade ago; it would probably fit on an el-cheapo FPGA nowadays.

</comment><comment><USER9> Nice to see, other people have done similar things for the Amiga [1] and Atari ST [2][3]

[1] <http://en.wikipedia.org/wiki/Minimig> [2] <http://hackaday.com/2010/01/07/suska-open-source-atari-st/> [3] <http://hardware.atari.org/vhdl/vhdl.htm>

</comment><comment><USER10> There's also this "Pimp my spectrum": <http://www.youtube.com/watch?v=7KegY8YIzQ4>

</comment><comment><USER11> I actually have one of these sitting right next to me as a i comment along with a original manual.. Too bad i don't have a TV to hook it up to :-(

<comment><USER12> Video capture adapters are pretty cheap these days.

<comment><USER11> Oh? The problem is that the color TV i have (a older phillips 20" CRT) does not seem to be able to pick up the signal. It worked fine on a really old black and white tv we had earlier. Toobad someone decided to throw it out at some point..

<comment><USER12> You might be able to find someone on the web who has successfully used their ZX with a specific video capture device. Then buy that same one.

</comment></comment></comment></comment><comment><USER13> Very cool! I wish it had NTSC composite video...

<comment><USER14> You'll be wanting the Timex Sinclair 2068, then...

<comment><USER13> Right. It was also prettier than the Spectrum.

I think the PC keyboard and the VGA monitor take away part of the fun.

But I am the guy who wants to build a Symbolics keyboard for his PC. I am not an example of sanity.</comment></comment></comment>


5 Minutes to a better Gmail Inbox - <AUTHOR> http://owocki.com/2012/09/10/5-minutes-to-a-productive-gmail-inbox/

<comment><USER2> And here's why that doesn't scale: mail from the past two days (that I haven't already adjudicated): 358 messages. There's another few hundred I've already dealt with today.

Going through those, one at a time, through the GMail interface is simply too slow for words.

Yes, much of that is automated systems-generated messages, but I've got to look at 'em.

How do I tame the tiger?

1\. Filters. Mail is bucketed by category. This ... mostly works.

2\. Mutt. For serious email processing, I switch to my mutt session, which runs in screen, with windows open to my high-traffic folders (it's fetched regularly using offlineimap). Using '~l' filtering, grab a slew of related messages. I can down-arrow through them much faster than I can view them in GMail (several messages/second). Tag the lot, and delete or archive. If necessary, forward to relevant party/ies with information, and/or resolve the issue identified by the mails. Rinse, wash, repeat.</comment>


Show HN: Postpone Pixel - <AUTHOR> http://postponepixel.com

<comment><AUTHOR> Postpone Pixel enables you to send a photo to the future.

Greetings from London, We are delighted to present you Postpone Pixel.

TODAY Take a photo, enter any email address, set a future date and send.

FUTURE Receive the photo via email on that day. You can now taste the feeling of good old days.

Simple as that.

[https://itunes.apple.com/gb/app/postpone- pixel/id984997924?m...](https://itunes.apple.com/gb/app/postpone- pixel/id984997924?mt=8)

Any feedback would be greatly appreciated!

</comment><comment><USER2> Can you also include a note with the photo?

<comment><AUTHOR> Yes with no character limit :)</comment></comment>