Why Do People Neglect Maintenance? - <AUTHOR> http://themaintainers.org/blog/2019/7/30/why-do-people-neglect-maintenance <comment><USER2> They neglect maintenance because we reward resolving outages and fighting fires more than we do good stewardship.

Imagine the following scenario.

Acme Co. has some piece of software that is critical to the operation for their business.

Dave is in charge of the software system. The software crashes often but Dave is always there to save the day.

Dave often has to stay up all night and is seen fixing problems at the final hour. Management takes notice of this and often sends out emails congratulating Dave for his hard work.

One day Dave leaves, and is replaced by Amy. Amy takes over the system and slowly and methodically fixes all the bugs that were causing the outages in the software.¹

Over time the code becomes more reliable, till eventually it runs smoothly.

Now what would management say if you asked which programmer was better. They'd likely say: "Amy is pretty good, but boy that guy Dave was a real rockstar!"

When you reward a behaviour, you will get more of it.

If you want software maintenance, then you need to reward it. But often, perversely we reward its opposite.

I'm working mostly as an ops person these days, and if I do my job well it makes my contribution look invisible. When things are going right, there won't be anything to notice.

1: In other words, code maintenance.

<comment><USER3> Amy would have seemed as rockstar as Dave in the beginning, as she had to do all his work plus diagnostics plus analysis and fixing. If she made sure to inform what is she fixing, management would appreciate her more.

There are nefarious managers, but most times it's our own failings to communicate that makes us invisible.

<comment><USER4> Maybe I got unlucky in my career but I've worked with a "Dave" and an "Amy" where the OP's description is spot on.

"Dave" got all the hero credit and "Amy" was deemed as nothing more than someone average at her job.

While peers might now "Amy" is the real hero, non-technical people don't grasp that very well. And unfortunately normally those are the managers and executives.

<comment><USER5> If Dave brought up the system and features, from nothing to something, which is where the difficulty is, then he probably should get more praise.

I think polishing or even refactoring an existing solution that now has well defined and understood required features, corner cases, and quirks will always be vastly easier than the unknowns involved in building something from scratch.

<comment><USER2> No way, maintenance of a system , especially a critical system, is much much harder than building from scratch.

</comment></comment></comment></comment></comment><comment><USER6> Early in my career, I got stuck doing a lot of software maintenance on legacy systems (I suspect this permanently stunted my professional growth, but this was during the great recession and I took whatever work I could find). It's a hard rut to get out of - I spent a lot of time developing relevant skills in my spare time.

Anyway, one place I worked had a 10 page procedure for building the system. It involved running several scripts, logged into 2 or 3 different servers (we were running Solaris 8 - which was already quite old by then) as different users. About half the procedure was written down, the rest was unspoken and passed down via oral tradition.

A particularly intelligent and motivated guy once took it upon himself to unravel the whole mess and come up with a sane build solution. Unfortunately, his quest was not approved by management, the time taken away from bug fixing caused him to fall behind on "points" (i.e., number of tickets closed in the bug tracker), and he was laid off. So we stuck to the old system that sort of worked, most of the time.

Now, one of the user accounts that was required to build a certain module belonged to a person that no longer worked at the company (let's call him Steve - I don't remember his real name). We were certain there was a permissions or environment issue somewhere, but were unable to track down the specific reason why only Steve's user account could successfully build said module. We were successfully ignoring this obviously absurd situation until we got a new sysadmin....

The new sysadmin was unfortunately a very motivated guy who wanted to set things in order. He reviewed all of the user accounts, noticed "Steve" no longer worked for the company, and deleted his account. We were unable to build until the backup containing Steve's account was restored.

We never fixed the FUBARed build procedure, mostly because our customer (this was a defense contract, so the govt was the customer) didn't want to pay for such an effort - every thing we did had to be tied back to a specific req number in our system requirements specification (SRS). Fixing technical debt was not covered in the SRS, so it never got fixed.

Eventually I was caught up in a mass layoff and went on to better things :)

<comment><USER7> What I got from your story was:

1) Long term software maintenance should not be treated like help desk ticket work nor should it be dumped off on junior programmers. Every company should have at least one guy who enjoys maintaining legacy systems and that should be his sole job.

2) Make sure fixing technical debt is covered in the SRS.

<comment><USER6> > Every company should have at least one guy who enjoys maintaining legacy > systems and that should be his sole job.

That's a career death sentence. I suppose if I was retired and wanted a part- time gig for extra money/amusement, I'd do it. But one thing I learned from working maintenance early in my career was... don't do maintenance work.

<comment><USER8> It is. Also, people don't want to do it for any amount of money.

I quit a previous job and took less money because I got moved to maintain the crumbling Forte4GL core system - I did get a handsome raise for that, but the writing was also on the wall as they were also working to replace it. Migration project has been ongoing for 8 years and is nowhere near done, I might have been able to retire before it's completed though. It was also soul- sucking.

<comment><USER9> But there are people that love doing it. My wife is an example of one. To her is it a great mystery novel where she gets to tease out all of the details and try to understand why things were built the way they were. Then try to make them 'better'.

Of course, she was a government employee (mil) and her career path was set regardless of what she actually did and the pay level was set in stone regardless of what she did as well. So there is that.

<comment><USER10> > Of course, she was a government employee (mil) and her career path was set > regardless of what she actually did and the pay level was set in stone > regardless of what she did as well. So there is that.

I mean, this is only relevant insofar as that this position allowed her to pursue her interest in what kind of programming she wanted to do. In any private company, the incentives are so perverse that she wouldn't have been able to do any of it, but that wouldn't change her preferences. It's just further indication that, given the right environment, there are people willing to do this kind of thing.

</comment></comment></comment></comment></comment></comment><comment><USER11> Interestingly this is also related to employee churn. New devs coming to our company usually don't want to "maintain and fix" the code of others. They're keen on building new stuff with the newest technology/stack. That adds to the problem.

<comment><USER12> Really? I'm quite to opposite, I love to look through old code, add missing testcases and fix minor issues. It helps me greatly to learn the ins and outs of the software.

<comment><USER13> What if the code is written in Delphi, committed in SVN and you have to figure out how to build it? True story..

<comment><USER14> Thats pretty tame. I once got a bug like: Some contractor wrote this, got mgmt to get a new, insane deployment procedure scripted and deploy it on completely the wrong server. Some days it produces a report, other days it swallows 16GB and dies.

After he left we wrote the contents of his hard drive to this stack of CDs, and they are scratchy enough to have data loss. Of course the prod executable differs from all variants of code found on the CDs.

It turns out to be a custom reporting framework for producing exactly 1 report. For extra speed, it starts 100 threads but doesnt have any synchronisation. Which turns out not to matter as they are all fighting for 1 DB connection.

You are not allowed to touch prod directly, but have to get some unix guy on the phone so far to recover logs, executable, and config. And as that guy has to support this mess, he hates your guts by association.

<comment><USER15> Can confirm, I've been the Unix guy.

</comment></comment></comment></comment></comment><comment><USER16> K.I.S.S

As I get older the simpler things seem so much more attractive - for example a recent project is using lists of dicts (python base base base types) because it's simple and easy to think about. It's recently got to the stage where "we should use pandas dataframes" is entering my brain, but it has meant that we focused on the business issues of handling the data not the issues of a large third party code base (even a well run well thought out one)

Maintenance starts with not adding complexity to your code

<comment><USER17> I agree, with a caveat: don't do dumb things performance-wise.

The other day I worked with a Lisp code base that used built-in lists for math-heavy code. The result had garbage performance and even looked less readable than proper array-based code that loops on stuff imperatively.

</comment></comment><comment><USER18> Threads like this really help me appreciate my workplace and stay confident in applying pressure to reduce technical debt.

I've been the lead at a ~30 person, ~7 dev, ~$5M/yr company for 10 years. As we've grown from < 10 people and 2-3 devs I've had to transition from doing whatever I felt was needed as I found the time to having to get approval across our departments and schedule work across quarters, years, and across a handful or two more people, but I've always been afforded a good deal of trust in my opinion and understanding of the costs and risks of technical debt.

I often second-guess my emphasis on improving existing code. To come even remotely close to keeping up takes a lot of developer and QA time and has opportunity cost.

Deep down I believe it's vitally important, but there's a nagging voice asking if this is really worth it. Sometimes it turns out not to have been. More often I look back and think that part we made better could've used even more time investment.

Personally, I enjoy maintenance work. It's an opportunity to refine and improve ideas I or others had previously. It's less uncertain - the big picture is there, it has history, we've seen how it's expanded and changed over time already, I don't have to try to predict the future as much as I make architectural decisions.

Completing a significant refactoring effort is every bit as gratifying to me as launching something new. Staying in one place for a decade has given me opportunity to see through efforts that take years before all the pieces are in place.

</comment><comment><USER19> I tend to neglect maintenance because it seems like I am always playing "catch up". If something is working fine, then it's not on my radar.

Even if problems abound, if the thing will likely get me through my current project, I'll drive that thing into the ground.

I drove my last car for over a year with one cylinder not working until someone ran a red light and hit me.

Should I have fixed it? Probably, but in hindsight it didn't matter.

I have so much coming at me from every direction that maintenance is often a luxury I don't have time for.

<comment><USER20> Everything has economic tradeoffs, triage is needed, but a big problem seems to be a deep set belief that the maintenance you can achieve in x time/budget won't actually pay for itself in fewer issues coming at you later that amount to not paying a cost > x to address. Or similarly is not great enough or frequent enough to create a feedback loop for compounded savings.

I don't want to discount just building things better to begin with though. For all the buggy stuff out there limping along there's also plenty of stuff that simply doesn't need maintenance, and another lot of stuff that only needs trivial maintenance.

<comment><USER21> Well, maintenance can have many different consequences. It can save more than it costs on disaster aversion, it can save more than it costs on small problems, it can save less than it costs on a disaster or small problems. If done earlier it can reduce the cost of future maintenance by much more than it costs, or it can reduce by less.

Doing it right on the first place has also all those possibilities, and the risk that you may discover that you spent a lot of time doing the wrong thing completely right.

</comment></comment></comment><comment><USER22> Don't forget self maintainence, too!

Exercise, eating well, sleeping enough, socialising and having a little fun are often treated as luxuries in many cultures yet are essential to maintaining healthy living.

<comment><USER23> Especially for us techies who easily live whole days solely in our heads, it's very important to take time and maintain our mind and body.

And to keep doing that when there is (perceived) pressure. Don't drop self- maintenance! That's self-sabotage!

</comment></comment><comment><USER24> Developers who do maintenance are seen (by other, typically greener, developers[0]) as being less skilled than those who work on "new" projects.

Personally, I prefer a good mix. I like new development, but I also like helping a business thrive and so I know that maintenance is a part of that.

[0] I am not convinced that most managers see it this same way. I think most managers see the people they want on maintenance as some of their most valuable employees.

<comment><USER25> a new project is much easier to do than having to deal with software a few years old created by a parade of a dozen people

</comment></comment><comment><USER26> The article has some good points but I think the primary issue is that of economics, most organizations are too small for the cultural aspect to override economic concerns.

Maintenance doesn't provide immediate economic value, not to customers, not to board meetings, not to developers, not to managers promotions.

Developers like myself like it or not, maintenance is a strategic investment driven by long term policy for which many organization have none or can't afford one.

Joel Splosky once said "I can't tell you how many times I've been frustrated by programmers with crazy ideas that make sense in code but don't make sense in capitalism". I think it applies to cost of maintenance fairly reasonably.

<comment><USER27> By the time that outstanding tech debt becomes truly problematic, the original authors have most likely moved companies. I think a lot of people know this deep down, which is why so many of them don't go as far to build things on a maintainable way. There's economics for the company, then there's economics for the individual engineer.

<comment><USER28> Similarly, fixing that technical debt will likely look like pure overhead while the benefit of "other people will finish future features faster and with fewer bugs" gets socialized, realized diffusely and goes largely unrecognized (except, if you're lucky, by the other developers themselves).

I learned that one the hard way. Features get priority because features have got visibility.

The picture gets even worse when you consider the probability that fixing technical debt will break things.

</comment></comment></comment><comment><USER29> In day-to-day life a lot of maintenance is neglected because it simply doesn't pay off.

My AC installer has recommended annual maintenance. $200 every year for him to come and, essentially, look at the pipes.

So far it's been 15 years, no checkups, all is good. If something goes wrong, the $3000 saved so far should be enough for most repairs I can think of.

<comment><USER30> > $3000 saved

oh man, I had an AC drain backup on a third floor condo once that drained in between the walls in all the units below.

the unit owner reeeeeally should have gone with the checkup

<comment><USER31> It's all wasted money until it's not, right?

</comment></comment></comment><comment><USER32> No one gets promoted for maintaining things. It's all about delivering new stuff.

<comment><USER33> A bit show-off but when you fix an existing issue that no one were able to, that's also delivering.

<comment><USER34> It will impress your fellow engineers but management won't care at bonus time. It's the classic sysadmin's dilemma: the better you are, the more the organisation takes you for granted.

<comment><USER35> They will say that you did a good job fixing the issue but most mid level managers won't give you a bonus for that. In fact, in the next breath, they will criticize you for not putting in enough effort into introducing new tech. Fixing the problem is an opportunity cost.

The only exception I have seen to the above is if you catch the eye of top level engineering management by your actions.

I have seen major problems lingering for years because management's actions have shown that they don't value problems being fixed.

Furthermore, when bugs become a priority, the metrics they care about are bug fix time. You are better off not being associated with a difficult bug because it lowers your close rate and lengthens your average time to close bugs. Perverse incentives.

</comment></comment></comment></comment><comment><USER36> Large enterprise solutions usually have maintainers or source a company to do maintaining for them.

Startups in today's world - not necessarily 'startups', but also new products - move too fast for maintenance; by the time they pivot, the old stack is easier to replace with whatever new fancy system was sold to stakeholders.

Also, most new software churned out today is built from some building blocks, usually community maintained, so no one is going to hire a developer to maintain <insert_fancy_open_source_framework_that_is_heavily_used_and_actively_maintained_by_the_community>.

</comment><comment><USER37> It is disappointing how their post devolves into the same old tar pit of racial intersectionality nonsense that stunts and atrophies the mind.

"Concierges paid minimum wage" … many concierges make immense amounts of money for what they do, and often make more than manager of hotels. Most people don't even realize that with overtime most of the hotel desk clerks make more money than salaried managers at hotels. Not even to mention the hotel porters that run the valet, that make immense amounts of money.

It's all just the intersectionality nonsense of privileged, sheltered navel gazers that have no idea what goes on outside of their university and screens.

I really hope that this intersectionality degeneracy will be killed with fire and relegated to the embarrassing and shameful pile of mass mental abuse and degeneracy that it belongs. One can hope.

The worst part about it all is that it just utterly stultifies the mind like any other abused person exhibits, that can only, e.g., reference anything and everything through what their abuser would want or do. But, that was the point after all, creating abused minds that can only think in subservient and submissive ways. It's sad that that abuse of several generations now was allowed to happen.

</comment><comment><USER38> Here's a reason I heard once. I've never heard anyone else mention it, so it's probably BS, maybe a lawyer or accountant can confirm or deny.

Developing new features is classed as "productive" or "R&D" or such, which means companies can claim some kind of tech subsidy or tax rebate on employees' wages for time spent doing it.

Maintenance tasks like fixing bugs and upgrading servers don't come under this classification, so they can't.

The incentives are thus set up for upper management to push against and actively neglect maintenance efforts.

</comment><comment><USER39> Pure maintenance is a grind to keep the status-quo. Ideally we would love everything to be maintenance free.

There are exceptions to this. This usually occurs when the object or system to maintain evokes an intrinsic positive emotional response as opposed to being something purely functional or utilitarian.

Some people love maintaining e.g. old steam engines and keeping them in peak condition. However, even in those cases it usually amounts to select parts of the effort usually involving some physical/sensory satisfaction, while other parts are still considered a chore.

</comment><comment><USER40> "We are unsure how we feel about terms like 'cognitive bias'"

What the heck does that mean? They leave a big turd like that on the table and then just move on without elaborating.

</comment><comment><USER37> That's an interesting question, because it is clearly a function of culture, a culture of maintaining things. It is a culture that has to be fostered and cultivated and … well … maintained. And just like things that are not maintained, a culture of maintenance will not be maintained either if it is not maintained.

The way I see it, maintenance is a function of values and whether one earned what one has; a kind of positive self-fulfilling prophesy. It is why across the board today you can see a crumbling of the maintenance culture at all levels, even if there is clear clustering, from the poor who are given things they don't have to earn anymore and therefore don't maintain anything, to the top ruling class that has never maintained anything and has seen everything, from the most solid castles, to human beings, to ships, to centuries old culture and traditions as totally and utterly disposable if it even slightly stands in their way of achieving their usually megalomanic personal gain; to the common people today that have all manner of things, from phones to telecommunications to television to flight to institutions to cars … literally everything … yet lack any perspective whatsoever on how it was produced, the thousands if not millions of prerequisite steps and failures and attempts it took to produce what they just take for granted.

One that does not know the actual value of something will not and cannot ever understand the notion of maintenance. It's a concept that even the ancients knew, yet we have lost in many, if not most ways as people have lost all manner of sense of value that they don't even value money anymore to such a degree that they don't even think of it as anything but a mindless exercise they engage in to do or acquire the thing that stimulates their primitive impulses, whatever those may be.

I know some people are trying to push a maintenance culture again, by the stick of enforcement, but reality is that it simply will not work as long as the seemingly lasting negation of scarcity holds. Maybe one day people will realize that all the promises to pay or be paid for the work they did, as embodied in debt, is simply not going to be paid nor can be paid, and it all comes crumbling down and a natural order of scarcity is established that will make people want to maintain things, but until that time, this will only get worse with every passing day as you chuck your $1,000 phone aside very year for a new one without even a second thought.

</comment><comment><USER41> I am dealing with a huge maintenance headache right now, upgrading an entire set of ancient Rails applications from 4.2 to 5.x. It's a monumental task that involves fixing all the the things, from libraries to controllers to models to rspec tests. We've literally waited 5 years to do this. Why? Because pushing out cool new features have greater "business value" than maintenance. It's all customer-driven.

</comment><comment><USER42> One of the strongest reasons is Minimum Effort Syndrome. People do everything with a focus on having the minimum effort on everything. Maintenance takes work, sweat, burns neurons. The same as admitting that you're wrong takes effort. Giving preference when driving takes effort etc. Of course there's the money factor too.

</comment><comment><USER43> ~grumble~ an SSL cert is up on my list of easy things to maintain ~grumble~

</comment><comment><USER44> The problem of maintenance is not new and is a global problem. Global as in any area that needs maintaining. This effects software systems, hardware systems, legal, political, medical, buildings, equipment, biological, etc., etc,. etc.

In the great scheme of things, it is ignored because it is not seen as a "here and now" problem. To see the importance of any form of maintenance in any field, you have to have a long term view of things. You have to understand the "costs" of not doing maintenance for the organisation or system in question.

I did not understand this long term view until I worked for someone who did understand and who was able to articulate the "costs" of not doing maintenance.

People talk about "tech debt", but are unable to articulate that every system has a cost due to its usage. This is irrespective of whether or not it appears to be bringing income into the organisation or system. This income can be energy, finance (profit) or some other "thing".

We live in a world in which everything decays due to ongoing use. In the case of computer systems, this decay can simply be based on changing requirements, bugs, old code running in new environments, etc.

If you cannot understand that the "cost" you pay today will effect the "cost" you pay later, then you'll not understand how important the art of maintenance is.

The example that jcadam gives about being "stuck" doing maintenance on "legacy" systems is a good example of the lessons about "cost" not being understood by the organisation. From the point of view of maintenance, anything you spend money to keep going is an "asset". It has a function that brings about a benefit for the organisation or system to continue in its existence. So, "legacy" systems are assets, if they need to exist then they need maintenance.

However, organisations have a mentality of assigning various areas or systems as "cost" centres and other areas and systems as "profit" centres. This inherently works against both the organisation and the maintenance of its "assets". The idea that some section or system is a "cost" centre is a artifice of the "accountant" mentality. This mentality is very prevalent through most organisations whether very small or very large and all the sizes in-between.

Is there anything that can be done about it? If your organisation is controlled by the "accountant" mentality then probably not. If this mentality is not in charge, then you should be able to bring a case for maintenance to those who have the authority to approve it. But, you need to show the benefits both short-term and long-term for doing maintenance for your organisation.

<comment><USER45> This is a great comment! From very early in my career I heard this "cost" center classification and I never understood it. Unless a company's hand is dictated by some type of external force such as regulation compliance, why on earth would a company voluntarily keep a "cost" center? Either the ROI is acceptable or it's not.

</comment></comment><comment><USER46> It all distills down to poor incentive structures

</comment><comment><USER47> Can't maintain them? Don't start them. The company is not your pet project's daddy.

<comment> yjftsjthsd-h It ... Kinda is? The company started the project long before I showed up, continues to profit from the project, and is absolutely going to reap the rewards of refusing to maintain the stupid thing. This isn't about other people refusing to help with my favorite pet project, it's the company refusing to act and its own best interests.

<comment><USER47> Why do many companies have internal projects that do the same as well known open source software? Because someone was bored, or wanted job security, or wanted to feel needed.

You should not start a project if a readily available, production-strength alternative exists unless you have a very good reason.

Internal projects usually arw underfunded and have bad UI.

</comment></comment></comment><comment><USER48> From their front page:

> We act

> Maintaining self and society through reflection, research, and advocacy.

Where is something actual in the list of the ways they act?

<comment> yjftsjthsd-h Advocacy is an action, and they appear to be driving enough events (per the relevant menu item) to count.</comment></comment>


Microsoft and Shell are building a better gas station with AI and IoT - <AUTHOR> https://blogs.microsoft.com/ai/shell-iot-ai-safety-intelligent-tools-001 <comment><USER2> Working link: [https://blogs.microsoft.com/ai/shell-iot-ai-safety- intellige...](https://blogs.microsoft.com/ai/shell-iot-ai-safety-intelligent- tools/)</comment>


ASK YC: Where to find standard user agreements and other boring legal stuff for my startup? - <AUTHOR> After a lot of fruitless searching, I thought I'd ask the YC community for tips on where to find the standard agreements and policies for our web startup. Things like privacy policies, user agreements etc. Of course we can write our own and most likely will do so, but are there any templates out there? Can I just take some good ones and modify them? <comment><USER2> My fiancee's a lawyer. She cringes when I ask this stuff. Her response was:

"It's like asking 'Where to find standard software and other boring technical stuff for my startup?'"

<comment><USER3> If you take a standard setup, say Ubuntu Linux, running Postgres and Ruby on Rails, the ratio of your own lines of code to all the other ones you're utilizing in the system is very small indeed. And you're free to customize all that lower-level stuff if you really need to, under very friendly terms. Unless she means that it's so easy to find and use that it's a silly question?

Software 1, Lawyers 0.

Speaking of which, wasn't YC supposed to open source some of the legal things they have?

<comment><USER2> If you take all of the case law over the last 300 years, the ratio of your contract to the existing legal infrastructure is very small indeed.

And you're free to customize all that lower-level stuff if you really need to, under very friendly terms (it only gets expensive if you have to defend it in court).

Software 1, Lawyers 1.

</comment></comment></comment><comment><USER4> I've never found really good templates online. My process was always something along the lines of:

1) Dig into my cache of legal docs I've amassed from other companies over the years (understandably, this probably isn't an option for you). 2) Google around for quasi-competitors, look for the AUP/TOS docs online for inspiration 3) Blend all this into a doc I write sort of from scratch, sort of from copy- paste-tweak 4) Send to corporate counsel for final review/approval.

Because I've created my fair share of legal docs over the years, I don't usually end up spending more the $200-$400 on step #4, but it is VITALLY IMPORTANT. Even when I was sure I had an air-tight doc (and believe me, I'm cynical, crafty and paranoid, makes for a good legal-doc writer), I've been made aware of significant things I've missed or mis-stated. A document that would never hold up in court, or doesn't enforce what you think it does can be worse than no doc at all.

There _are_ places that will charge you money for access to their legal templates, but the couple I've looked at were too boilerplate for my needs.

<comment><AUTHOR> Great.. thanks for the tips. Any recommendations/ suggestions for 4)?

<comment><USER4> What city are you in?

<comment><AUTHOR> Am actually in Switzerland, but surely it should be location independent right? Won't most legal counsel be avilable online/via email/phone?

<comment><USER4> Yeah, but the laws vary greatly from state to state (in the US), and certainly from country to country.

Some of the things that might be common in the US (specifying state for trials, if any) might not apply to you, and things that are more common/stringent in your area (privacy laws for example) might not be valid or known to a US-based lawyer.

A guy that I had in mind knows a good part of the US law pretty well, and is well versed in MA, CA, NY, and DE (states) legalities, but even he would refer me to someone else if I was dealing with a customer/contract in say Arizona. I don't imagine that he would want to get involved in Swiss law :)

Switzerland, I can't help... Sorry.

</comment></comment></comment></comment></comment><comment><USER5> For the most part, just take them from your closest competitor and edit to your satisfaction. We did that in the beginning, and even when we finally got around to paying attorneys, they did more or less the same thing.

<comment><USER6> Get a good legal dictionary, and any time you think to yourself, "I wonder why they used that particular word there?" LOOK IT UP! You'll be surprised. This is not something to do in the evening over a beer. A textbook wouldn't be a bad idea, either. Or, at least a trusted online reference.

</comment></comment><comment><USER7> wordpress/automattic made theirs with a creative commons license <http://automattic.com/privacy/> that migth help ya.

</comment><comment><USER8> I think the last time this question was asked the standard answer was "find the site that is most like yours and copy their privacy policy". It's not like these agreements are highly original, proprietary works. Lawyers copy phrasing from each other all the time.

Of course, you get what you pay for. I'd consider paying a lawyer to glance through the results of your scavenging before you make any legal commitments.

<comment><USER9> " Lawyers copy phrasing from each other all the time."

Yes but they know which parts to copy and which parts to write themselves.

That's why you pay them $300 an hour.

</comment></comment><comment><USER10> "Can I just take some good ones and modify them?"

I think that's the best approach. Look for similar sites/services or find a few that together do the things you do and copy bits and pieces from their TOS/privacy policy/etc. Depending on what you are doing that is probably good enough until you get some traction. If you take funding down the road I imagine this will all get rewritten for you.

</comment><comment><USER11> Where were you searching? Hire a lawyer who specializes in startups, and you'll get them done in no time at all.

And before you ask, if you need graphic design, get a graphic designer, and if you need good PR, hire a PR firm.

Of all the things a startup has to do, this is quite possibly the easiest.

<comment><AUTHOR> Searching online/google etc. We're bootstrapping so hiring a laywer is not ideal, but we will propbably follow the advice of some others and write it ourselves and then get it reviewed by a lawyer. I cant tell if you were sarcastic about the rest, but we do our design and pr ourselves. Those add value so we do it ourselves, but legal jargon doesnt really add value at this stage, hence my original questions to the YC community. Thanks!

</comment></comment><comment><USER12> I will probably take agreements and copy them until I can afford to hire a lawyer to draft them for my startup, but it is technically copyright infringement. It's also not the best option for various reasons as others have already pointed out.

</comment><comment><USER13> Checkout <http://docstoc.com> they have fairly good repository and it is free. They encourage sharing among the community.

<comment><USER14> They're of dubious copyright. You also have no idea who came up with them and WHY they added certain sections.</comment></comment>


The 16-inch MacBook Pro is a repudiation of the 'Ive Doctrine' - <AUTHOR> https://www.macworld.com/article/3453822/16-inch-macbook-pro-is-a-repudiation-of-the-ive-doctrine.html <comment><USER2> I had a comment in 2016 that hints at this. Perhaps, it was true?

> There was an interesting idea floating around Designer News—Without Steve > Jobs nobody can contain Johnny Ive.

> Jobs was a champion of the user. Tim Cook's specialty is in logistics, and > probably defaults to Ive on many product decisions. In the mean time Ive > continues designing beautiful products that focus on beauty and compromise > on function.

> I doubt that's the case, but I like the theory.

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

</comment><comment><USER3> Certainly seems that way, but it's discouraging that Ive and Apple had to part ways just for Apple to get back on track. Very much a case of either dying a hero or living long enough to become the villian.

I use this as a reminder not to drink my own kool aid. Even if I'm being recognized at being good at something, it's not an excuse to double down on it and push it too hard. No one is applauded for being judiciously balanced.

<comment><USER4> > I use this as a reminder not to drink my own kool aid. Even if I'm being > recognized at being good at something, it's not an excuse to double down on > it and push it too hard. No one is applauded for being judiciously balanced.

But for a lot of things it can be positive if recognition motivates you to do more. Like can you ever be too good of an athlete? Too good of a programmer?

<comment><USER5> I'm not sure if there even is any universal measure for how good of a programmer you are. There's probably someone who's really good at optimizing the hell out of a really hot loop that absolutely has to be faster, never mind if the code is comprehensible to mere mortals. And somebody who can design and architect a huge, complex enterprise program well enough that a newbie developer can quickly get an idea of what's going on and make contributions. And somebody who can inherit a huge ball of mud and gradually refactor it into something more reasonable while keeping it working the whole time. And somebody who can start a new project and build just the right amount of infrastructure into it at the right time - not so much that you've got some huge over-designed thing for a product with 2 users, and not so little that it becomes impossible to scale when you hit 10k users. And plenty more sub-field besides those.

It's easy to be really great at 1 or 2 of those, and not so good at the others.

<comment><USER3> Yeah, from the outside it seems like things had to be thinner and lighter to be Apple designed, in the same way that some programmers think they have to architect or optimise or <insert pet obsession> the heck out of everything. If you do it well once you'll be a hero, but if you do it to everything while losing sight of your actual goals (customer satisfaction, business value, righteous cause) you'll eventually be cast as a villain.

</comment></comment></comment></comment><comment><USER6> I think Ive needed Jobs to provide some user feedback he would listen to ahead of product release.

Without Jobs, it's taken Apple years to get keyboards back on track. Which is absurd given that their desktop keyboard is really good.

I haven't bought any Apple products for years, except for their peripherals. Their touchpad is excellent, and there's no other alternative in the market I know of that works decently in Linux. Their keyboard is a pleasure to use during long typing sessions and has really low latency.

<comment><USER7> "Which is absurd given that their desktop keyboard is really good."

I guess that is pretty subjective. I for one, hate Apple desktop keyboards. Not only the feel of it, but the layout (in my country) is different than the PC keyboards which drives me nuts.

<comment><USER8> Definitely subjective.

I find chiclet keyboards absolutely horrible, and Apple has been the pioneer of that horrible type of keyboard.

The keys are terrible mushy little islands.

Mechanical keyboards are just SO much better.

</comment></comment></comment><comment><USER9> I find discussions like this extremely disingenuous. It's much like discussing the lifestyles and personal choices of celebrities. You don't know what the lifestyles of celebrities are really like, just as you don't really know what it's like inside apple's design team. It's all speculation.

<comment><USER10> Yeah. I hope me (and something like HN) still exists whenever someone in the know actually writes a memoir about this period of Apple's history.

<comment><USER11> We also know how obsessed Jobs was about product functionality. The original iPhone was going to ship with a plastic screen and was demoed with one when it was introduced. He saw our easily it was scratched an announced in a press release three months before it shipped that they were changing to a glass screen.

Contrast that to the then CEO OF Google who used a Blackberry years after Android shipped.

</comment></comment></comment><comment><USER12> Even on the iOS side, iPhones have been getting thicker and heavier for every generation since the iPhone 6 (2014)

On the Mac, the issue has more been they prioritized design over functionality. On the iOS side, the only functionality we lost to the design obsession was a headphone jack, maybe some battery life, whereas on the Mac we lost far more (such as being able to type). If an iPhone redesign made the keyboard break, the device would be recalled and it would be fixed in weeks. On the Mac they let it go for years.

The 2017 roundtable change in attitude seems to have been Apple now allowing the Mac to "be a truck" as Jobs expressed it. Put functionality first, and let the design adapt to that.

<comment><USER13> I'm not convinced removing the headphone jack was purely a design decision, but rather strengthening apple's position in the accessories market, as it is able to control the software side of bluetooth headphones, making high margin airpods more attractive. With a headphone jack the playing field was flatter for other headphone manufacturers.

<comment><USER11> iPhones work with any BT headphones.

<comment><USER14> But most BT headphones don't work seemlessly between laptop and phone. You usually have to unpair from you phone to pair to you laptop.

With a headphone jack I can unplug from my phone and plug into my laptop.

But once those devices loose headphone jacks I can't just switch to BT headphones. But I can switch to AirPods. Which seem quite expensive.

What other Bluetooth headphones can easily switch from my MacBook to my iPhone?

<comment><USER11> There are plenty of Bluetooth headphones that support Multipoint

[https://phiaton.com/blogs/audio/bluetooth-multipoint- pairing...](https://phiaton.com/blogs/audio/bluetooth-multipoint-pairing-what- is-it-and-how-does-it-work)

</comment></comment></comment></comment></comment><comment><USER15> > I like to call this Jobs's Law, though it could just as easily be called the > Ive Doctrine: Always strive for the next version of your product to be > thinner and lighter than the current one.

Then hopefully somebody will start making "reasonable-sized" phones again. Something like iPhone4/5 size with full-size displays.

<comment><USER16> Not happening. Big co. are all going after Asian markets, and aircraft carrier sized smartphones took off as a trend there.

Some people are even buy 2 devices these days. A giant 7 inch smartphone, and a dumphone or bluetooth handset with dial pad in addition to it.

</comment></comment><comment><USER17> > ...the Ive Doctrine: Always strive for the next version of your product to > be thinner and lighter than the current one.

I guess this guy hasn't noticed the phones getting thicker and heavier over the last several years.

<comment><USER18> I guess you stopped reading there?

</comment></comment><comment><USER19> Wow, this website eats CPU processing power like candy. It distracts from reading if your fan screams at you.

<comment><USER20> I'm amazed just how many websites my '19 MacBook Air struggles with.

That's not an indictment of the Air, which I bought fully cognizant of the battery / heat / power tradeoffs. The Air is happy to run native design, etc. software. The only time I feel its performance limitations is _when I 'm browsing the goddamned web_.

Running a Pro most of the time it's easy to overlook just what utter pigs many websites are today. But _seriously_ , how the fuck is it ok for websites to grind popular consumer-grade computers to a halt?

Don't these engineers have any pride / skill / will to create good products? Performance is a feature kids.

<comment><USER21> I'll put money on that not being the engineers; I'm guessing that a dev merely added Google Tag Manager and someone in sales/digital marketing went to town on it.

Still, yep, I disabled uBlock Origin and that site is _bad_ (on my work's 2015 Macbook Pro). I like disabling it on news sites every now and then to remind me just how utterly fucking unusable much of the Web is without it.

<comment><USER22> Ghostery extension tells me that there are 105 (ONE HUNDRED AND FIVE) trackers loaded by the article page.

Wow. I'm not even mad, I'm impressed.

</comment></comment></comment></comment><comment><USER16> > ...the Ive Doctrine: Always strive for the next version of your product to > be thinner and lighter than the current one.

I'd say it follows a rule of "every sequel to a hit movie is worse than original" more.

I worked in OEM electronics since 2007, and I saw this happening all and every time with big public companies. In the industry, we have a term for that. We call it "Brand Fade"

It is near impossible for a big company to resist the urge to "optimise" the product to improve profits after hit sales with hopes of consumers not noticing it.

This is what is happening with Dell now with each newer XPS generation coming out more penny pinched that the previous one.

<comment><USER23> Exceptions to that rule are as follows:

\- Terminator 2: Judgement Day

\- Aliens

\- Back to the Future Part 2

<comment><USER24> Or Empire Strikes Back, Godfather Part II, and plenty of other movies.

</comment></comment></comment><comment><USER25> I disagree aboUt USB-C on a Mac, Apple has always pushed new interfaces forward. The iPhone is where the problem is, they keep refusing to retire lightning. This is one area where it just doesn't work.

</comment><comment><USER26> They definitely didn't account for different populations' ears when they designed the EarPods - I've never been able to wear them, and I've heard many similar anecdotes from non-Westerners, and from some Westerners as well. The first thing I noticed about the AirPod Pros is that they'd probably fit in my ears, and I wondered what possessed Apple to change the design after years of insisting that EarPods fit the vast majority of people's ears.

<comment><USER27> The design change isn't an indication that they changed their belief regarding that aspect of earpods.

The design needed to change to better incorporate the active noise cancelling feature. Even if earpods fit most ears, to truly be able to implement in ear ANC, a seal between the buds and the ear need to occur so they decided to overhaul the design.

</comment></comment><comment><USER28> I'm dense. How does "Always strive for the next version of your product to be thinner and lighter than the current one." become "Ive Doctrine"?

<comment><USER29> He famously pushed it at the expense of good engineering, reliability, build quality, battery life, performance, and all the other things people want in a device. Apple over-indulged him.

<comment><USER28> Oh, is Ive a person? Okay, I just googled it. Thanks. I didn't know about Jony Ive. (if it isn't already obvious, I'm not an apple follower)

</comment></comment></comment><comment><USER11> Jason mentioned it on his podcast, but I didn't see it in the article. The iPhone 11 Pros are also moving into the right direction. They are heavier, slightly thicker and have better battery life.

The Apple battery cases have always been a case of function over form. They have always been butt ugly, but more functional than third party cases.

<comment><USER30> >> also moving into the right direction. They are heavier, slightly thicker and have better battery life.

The worst thing about the latest iphones(10, pro) is that they got heavier. I find it so bad that I skipped the upgrade(s) because of that.

<comment><USER31> How much heavier than your current phone were they?

(I'm not suggesting anyone updates, just curious how much weight caused this to be the primary decision point.)

<comment><USER30> Heavier to the point that I experience pain handling it for long periods of times especially if I have to use one hand only. Shortly said the weight makes it uncomfortable to use. A clear example where "syle"/fashion is valued more than usuability.

<comment><USER32> How is it fashionable for the phone to be heavier?

<comment><USER30> Apparently the weight makes it "feel" more premium/solid. The shiny steel and back glass give it a more premium feel as well(on top of the extra weight). I guess this follows the Watch Edition/gold strategy.

</comment></comment></comment></comment></comment></comment><comment><USER33> As an example of the repercussions of such a decline, after years of being an Apple user (I switched from Windows to OS-X when they started making top of the line hardware and using x86 processors) I switched back to Windows because their hardware become subpar and far too expensive for it, the lack of an escape key was a big red flag to me. This also coincided with Microsoft's current embracing of developers (not just MS stack ones), a better OS with Windows 10 and WSL. It's been a little rocky, but I cannot see myself going back to OS-X unless MS messes things up big time.

</comment><comment><USER34> Want to love your current "bad keyboard" MBP again?

Grab a wireless Apple Magic Keyboard and stick it directly on top of the current IVE keyboard and use Karabiner elements to disable the MBP's internal keyboard.

I actually genuinely enjoy this computer now. A few days ago I was trying to figure out how to sell it and get a new 16" one, but honestly Apple doesn't deserve my money or attention anymore.

<comment><USER35> Can you imagine what people would say about PCs if one had to do this with a PC laptop?

<comment><USER34> It's insane. I hate this keyboard with a passion, but at least I have a "quick fix" that isn't going to make me give Apple much much more money.

The should recall these laptops.

</comment></comment></comment><comment><USER36> > its commitment to an entirely USB-C lifestyle was premature

For me, going all-in on USB C is one of the best features of the 2016 model in terms of flexibility: any port can be a power, video, network, or USB port. Bad keyboard (butterfly) and trackpad (broken palm rejection) and virtual ESC key, not so much.

<comment><USER37> And a bargain at only $200/port. (MacBook Pro 13" price with 2 vs 4 ports).

</comment></comment><comment><USER38> It was inevitable that someone would write an article arguing the return of the escape key was an act of genius.

</comment><comment><USER39> The iPhone 11 Pro was the first indication. Physically bigger, heavier, and with a larger battery than the outgoing model. I am very pleased to see them finally making a commitment to their "Pro" lines. A lot more could be done, and based on what we have seen, hopefully it will be.

<comment><USER24> I feel like press talk they had in 2017 when they announced they were working on a Mac Pro was an early indication that things would change, and now in 2019 is when we are actually seeing the fruits of that change.

On the Mac side we've gotten the Mac Pro, Mac mini, and the new thicker 16-inch MacBook Pro (although it still is stuck on just 4 USB-C!!).

On the iOS side we've gotten the iPhone XR first, then the 11, and 11 Pro all being thicker than the phones they replaced.

</comment></comment><comment><USER40> I cannot wait to pick one of these up. In despair I caved last year and got a 2018mbp for work, so we either have to sell it or how somebody and pass it down.

Next they need to phase out lightning now that usb-c is here.

</comment><comment><USER41> Repudiation? Same number of ports as the 15 in…

At least they fixed the esc key and added space between the Touch Bar and the TouchID key, which I argue looks better than the previous asymmetric design.</comment>


Career Advice no one tells you - <AUTHOR> https://medium.com/life-learning/career-advice-no-one-tells-you <comment><USER2> -404. I guess this writer isn't going to tell us, either.</comment>


Bitters: medicine to make the centralized Internet go down - <AUTHOR> http://bitters.evbogue.com/

<comment><USER2> The site is down for me, but the cached version features the tagline "The medicine you need to make the centralized Internet go down."

It however never explains what makes Bitters decentralized. Any insights?

</comment><comment><USER3> Poor title. It's just a $37 tutorial on setting up a webserver etc.

<comment><USER3> not sure what's substantially different from e.g. (2011) [http://shapeshed.com/creating-a-basic-site-with-node-and- exp...](http://shapeshed.com/creating-a-basic-site-with-node-and-express/)

</comment></comment><comment><USER4> I guess you're getting more hits than anticipated! :) Can't seem to load it.</comment>


Ask HN: How do you scan through tons of comments to find out those quality ones - <AUTHOR> Usually under a hot topic there will be hundreds of comments. Although some got up voted, to trust the up vote is to trust the general wisdom of the community.<p>Is there any strategy that one can apply? <comment><USER2> Evaluate the commenter instead of the comment. That is, if you evaluated 100 comments by a commenter, you would probably get a useful estimate of how good a particular user's comments are.

Another factor would be to look for words that are tracers for "bad news". For instance, I saw my Aunt Lucy at the nursing home yesterday and she told me something she heard about Nancy Pelosi, and I already knew it was fake news, just because it was about Nancy Pelosi. There also are words and other signals that people are angry, disrespectful, etc.</comment>


Mother-daughter team joins YC to accelerate their drug discovery platform - <AUTHOR> https://venturebeat.com/2018/03/08/mother-daughter-duo-joins-y-combinator-to-accelerate-drug-discovery-platform-macromoltek/ <comment><USER2> That has to be one of the coolest things you can do with your parents/kids :-)

<comment><AUTHOR> The story is also commendable for having a parent and child successfully work together in a high-pressure startup. Many members of happy families would groan at the thought of working together, much less in such a chaotic context.

Sure, family businesses exist but processes are well established, company creation process involved only the parents. Friction is also minimized when the company is large enough to provide separation (i.e. relatives working in different depts/capacities that direct interaction with other relatives is minimized).

</comment></comment><comment><USER3> Excited to hear how this develops. It's often recommended not to go into business with your friends because the dynamic changes and your friendship can get replaced with a business relationship if you're not careful. There are also explicit hierarchies in business that might conflict with your friendship roles.

I haven't heard the same advice about not getting into business with your family, but I imagine similar challenges arise where you have to be conscious of turning off the business relationship over the holidays, etc.

<comment><USER4> Family businesses are pretty common. I think they can work as long as family ties are prioritised over the business.</comment></comment>


Restoring and MIDI-Fying a Baby Grand Piano - <AUTHOR> https://jacquesmattheij.com/midi-fied-baby-grand-piano/ <comment><USER3> My parents bought a used Disklavier in the 90s that had mostly just been furniture, since floppy disks went obsolete.

A few years ago, my dad found a Bluetooth adaptor for it, but the process of streaming songs to it was a convoluted mess that involved downloading MIDIs, putting them in Dropbox, opening them on an iPad in a different app, etc.

I was home for the holidays that week, so I threw together a Chrome extension that streams songs with WebMIDI:

[https://github.com/appsforartists/midicast](https://github.com/appsforartists/midicast)

Super fun project. Far from perfect, but it's neat to programmatically control a musical instrument.

Gave me a chance to try the Cycle architecture too, which works really well for a Chrome extension. Chrome extensions are all about message passing between various contexts. Cycle's reactive model abstracts all that away, so you don't have to think about which piece is running where - you just describe how data gets transformed as it flows through the system.

<comment><AUTHOR> Neat project!

Disklavier control boxes also have MIDI in, and you can get fairly cheap USB->Midi adapters. That way you can sidestep the bluetooth link if you want to use a computer to drive it.

<comment><USER3> I think the Bluetooth is Yamaha-branded, but it's really just BT -> MIDI. Probably pretty similar to your cable, but wireless.

WebMIDI doesn't care, so either adaptor should work with it.

</comment></comment></comment><comment><USER4> I imagine the demo to be playing a Nancarrow Player Piano Study like no. 36 or 37 (or Tango?).

No. 36 is a 4 part canon where each part moves in a different tempo, forming a tempo ratio 17:18:19:20. Imagine taking a Bach fugue and applying a skewX or perhaps a Gaussian blur to it. All the voices converge roughly in the middle of the piece to create a striking texture unplayable by humans.

No. 37 is a twelve-voice canon with an esoteric relationship among the voices (based on pitch-interval ratios of a particular scale from a book by Henry Cowell.) It's basically a series of little episodes where he trains the listener to focus on the texture-- because what else could you focus on in a twelve-voice canon? Then at the end, he introduces this low, enigmatic ricercare tune that builds into this enormous, sprawling texture of harmonic and melodic surprises, like aliens slowly descending upon Eisenach 300 years too late to find their lost ancestor.

Trimpin made MIDI recordings of the 50+ player piano etudes back in the 90s.

And if copyright weren't full of anachronistic concepts, one of them would be the Lenna of MIDI piano demos in the 21st century.

Unfortunately, copyright is still full of anachronistic concepts.

So instead you get an early Debussy piece. And where you would have said, "Holy shit, that is wild!" to a demo that properly shows off all the work the author put into MIDI-fying a baby ground, you instead say, "Hm, neat."

<comment><USER5> What's the problem with copyright? Assuming the rights owner can be found and midi transcriptions made of the piano rolls, why would it be legally any more complicated than publishing sheet music? Of course any public performace would require royalties, as would shipping the midi files as demos when selling a piano, but that's kind of the whole point of copyright law.

</comment></comment><comment><USER6> That's some fantastic work, a job well done for sure! I couldn't help to notice some texture on the new wood paint and I wondered why the author simply did not restore the original beautiful wood and went instead for that hard brownish painted tone. It's as if the sanding wasn't fine enough in grit too, because lacquering with polishing is supposed to give you almost a mirror-like result (that's all based on a single indoor picture of course, sorry). Congrats again to the author!

<comment><AUTHOR> The case was extremely damaged, and not made of real wood but of plywood with veneer on top.

The veneer layer had already been sanded at least once and was super thin in places and of course that is where the bulk of the water damage was. In the end in a few places there was only a super thin layer of veneer left and in one or two places none at all. Wood grain filler was used to make the first layer more even, then three layers of red stain were added and finally two layers of high gloss transparent.

I would have loved to use only two layers of stain but the wood left underneath just wasn't good enough for that anymore. Anyway, so it isn't quite as dire as you make out from the pics but it also could have come out a lot better if there was more to start with. In person it looks quite good, especially the combination of brass with the red stain.

<comment><USER6> Thanks for the detailed follow-up!

<comment><AUTHOR> You're welcome. In fact, the case was so bad, and the action so messed up that I thought it might end up a total loss. I love recycling other people's junk into things that are nice again, this is probably the best example of that so far.

</comment></comment></comment></comment><comment><USER7> Fabulous work. The kind of project that I would have never heard about... if it weren't for HN.

Supper happy to see this at the top of the front page.

Thank you for sharing.

On a less serious note, you could totally _freak out_ your future house guests with stories about a ghost that occasionally plays the piano at night!

<comment><AUTHOR> > On a less serious note, you could totally freak out your future house guests > with stories about a ghost that occasionally plays the piano at night!

Hm... that's some inspiration I may not be able to ignore.

<comment><USER7> Love it. Thank you for reading and responding!

</comment></comment></comment><comment><USER8> Does it have power limitations on the number of simultaneously active solenoids? A friend ran into that problem. Can it play Circus Galop? [https://www.neatorama.com/2012/02/03/unplayable-piece- used-t...](https://www.neatorama.com/2012/02/03/unplayable-piece-used-to-test- player-pianos/)

<comment><AUTHOR> It will be more than happy to activate 20 solenoids at once, which is pretty loud. In practical music you'd use the sustain pedal if you wanted more/longer notes held.

I don't feel like stressing it to the point where it might break using 'black MIDI' or some equivalent, the power supply is 35 years old and might give up the ghost.

</comment></comment><comment><USER9> This is amazing. I'm going to show this to my tuner who also does restorations, but I know that he's going to shake his head that anyone would do this much work on that piano.

What did you do with the G3? Do you now have two baby grands?

<comment><AUTHOR> It is still there, sitting right next to the other. So yes, and a G3 is 180 so not quite a baby, it is huge next to the other one. This is - obviously - <USER2> matter of some discussion as was turning the living room into a woodshop for the last month or so ;)

</comment></comment><comment><USER10> This is an impressive amount of work, especially considering how much modification had to be done to the solenoids.

For me, the best part was the link to the PianoBooster software [http://pianobooster.sourceforge.net/](http://pianobooster.sourceforge.net/) That software looks like a great way to help newbies overcome the early hump in learning to play the piano.

<comment><AUTHOR> Pianobooster is awesome, it is the most patient piano teacher you can imagine. I've modified it a bit to give me more statistics and to more intelligently split left / right hand parts. The original tends to assign notes based on a pretty rigid rule and I changed it so it uses some geometrical clues about what handspan you can expect to better assign the notes to the individual hands.

<comment><USER11> Can you open a pull request at [https://github.com/captnfab/Piano](https://github.com/captnfab/Piano) Booster someone has given the project new life in the past year (it was dead for about 5)

<comment><AUTHOR> Ah cool. I tried to reach the original author but he did not respond. Thank you for the pointer.

Pianobooster has an interesting internal architecture, it works completely in 'streaming' fashion which makes it quite hard to operate on the input files, you can't really look ahead because the whole file is never entirely in memory. It took me a while to get my head wrapped around that, it is so completely different from how I would have approached that particular problem. I can see some advantages to this way of doing things. Another interesting point is that it has a lot of the business logic in two places, one where it deals with the audio part of things and one where it deals with the visual part. These then sync up again at the currently playing note(s).

Anyway, regardless, it is an awesome project and I'm super happy to see that someone has taken up the mantle.

</comment></comment></comment></comment><comment><USER12> Awesome project. The main difference I can see is that the solenoids on Disklaviers are very quiet.

I've got a mid-80's U3 Disklavier I bought a couple of years ago, one with a floppy disk controller. It was about £4k, bought it from a dealer who imports them from Japan. I love it - the strings are longer than a standard upright, but doesn't take as much space as a baby grand.

I only have one wish for it - that someone would make a new ( ideally open source) controller unit that works with old Disklaviers!

The unit has midi I/O but has about 500ms of latency on playback - still very nice as a party trick and for recording ideas - but somewhat limits the usability with a sequencer.

Still, it's pretty mad I am using a Japanese robot piano from nearly 40 years ago that still works exceptionally well.

<comment><AUTHOR> Those solenoids are super quiet because of how they are designed, the top is made of rubber with a felt insert, the weight also has a felt layer at the top so when it strikes upwards it can so so forcefully but quietly, without the 'clack' associated with solenoids. Finally, the shaft is super thin (2mm) and runs in a nylon guide for reduced friction, and there is a small spring in between so that when it drops it gets slowed down a bit.

As for the 500 ms, there is a setting on the wagon that allows for realtime during playback.

</comment></comment><comment><USER13> How much control do you have with the solenoids, and the hammers? Is it just control of the velocity of strike, or is it possible to have positional control of the hammer?

If you could control the position, maybe you can create some interesting tonal effects that a human pianist could not achieve, by holding the hammer close to the string to partially damp it

(Similar to what guitarists can do)

<comment><AUTHOR> Positional control of the _keys_ (not the hammers) is possible but the solenoids get very hot. Strike velocity is not proportional, I will have to add some filtering to ensure that loud passages don't break a hammershank.

As for the tonal effects, you can't really manipulate a piano hammer like that through the action, and this mechanism still uses the normal action the way it is intended, only it strikes from below the pivot rather than above, so at the back of the key. The whole function of the piano action is to give a uniform response to uniform input so the hammer can only describe a particular arc with a speed relative to the force with which the key is struck. You can't 'freeze' the hammer at the top of that arc, it will just fall back down until it gets caught by the back-checks.

What you can do and what would be impossible with just one pianist and just your fingers is to strike key combinations that would be otherwise impossible. For instance to make a chord that uses more than the normal number of fingers or that would require extreme contortions or more than two hands.

<comment><USER13> Then you could make some interesting effects by using each human key strike to trigger extra keys, such as one or two octaves higher or lower, or something more colorful like a note one fifth higher at reduced velocity, or time delayed perhaps

edit - just noticed that it seems you hadn't yet been able to get the key sensors working, only the output

<comment><USER14> The Windows 3.1-era Band-in-a-box had a feature (and probably still has, if that software is still around) that allowed playing along a pre-programmed chord progression in different styles, which always produced a harmony that matched the current chord with a a single key press. You could play in the style of eg. Erroll Garner, even if you only knew how the "bare" melody of the song goes.

<comment><USER15> There's a relatively old FOSS "band-in-a-box" program: [https://www.mellowood.ca/mma/](https://www.mellowood.ca/mma/)

<comment><AUTHOR> Neat example of this (someone posted this as a response on Twitter):

[https://www.youtube.com/watch?v=bvMW71BJofc](https://www.youtube.com/watch?v=bvMW71BJofc)

</comment></comment></comment></comment></comment></comment><comment><USER16> I misread this title as a MIDI capable 'flying' Baby Grand Piano. So was mildly disappointed, but OTOH that could be a whole other level of drone- art/aeronautical/electro-mechanical project for some enterprising hacker out there?

<comment><USER17> Thank you. I've seen this article on HN a couple times this morning and each time I briefly think "A flying grand piano, that sounds awesome!".

</comment></comment><comment><USER18> This in interesting. I've been wanting to make a neural piano synthesizer for an electronic keyboard that outperforms the sample-based stuff Yamaha and Kawai use. But getting labelled training data is a problem. Would be interesting to use a setup like this to amass loads of accurate training data about what inputs produce what waveforms!

If the author is willing to mic up the piano properly with a good mic, and publish a few hours of uncompressed samples of piano playing along with the associated MIDI files -- it doesn't have to be good playing, but preferably better than "random" playing, it would be super cool to play with that data.

<comment><AUTHOR> For another project (mp3->midi) I used a large number of piano midi files coupled with midi->wav conversion to give me a dataset like that. The original midi serves as labels for the audio.

<comment><USER18> Yep all the author needs to do is download a few hundred MIDI files, play them, and record the piano -- it would be an interesting dataset to play with.

Most of even the top of the line digital pianos seem to get the resonances and cross-talk between the strings wrong in my opinion, and I think a neural net should possibly be able to learn the internal physics of the piano from enough samples.

<comment><AUTHOR> Author here... Unfortunately there is a pretty busy road passing my house which would preclude miking the piano and getting meaningful results. Also: that's a _lot_ of combinations! But you are right, going this route should in theory give you a way to generate audio that comes much closer to the real interaction between the strings and the soundboard than the mixer step at the end of your typical digital piano. They all sound way too clean.

<comment><USER19> would definitely be amazing for someone to do this. i do believe that there is some more accurate sounding piano synthesis software (or whatever you want to call it) out there that relies more directly on huge libraries of actual recordings of playing steinways, etc. recording each key a bunch of different ways and then ~interpolating between all those various recordings during synthesis, which in my limited playing around with it seemed to work relatively well (not that i had a steinway laying around, of course), but is definitely not as inspiring or scalable an approach.

really, really cool hack btw. always inspiring to see people put "unreasonable" amounts of time into labors of love like this. :)

<comment><AUTHOR> The upside of the COVID lockdown I guess.

</comment></comment></comment></comment></comment></comment><comment><USER20> It turns out, depending on where you live, a piano may actually cost you nothing.

The free stuff section of craigslist has many pianos, for some weird reason. Just go to "For sell" > "Free stuff" and search "Piano".

<comment><USER21> I mentioned it to some piano playing friends a while ago, I wondered the same, and they said that if the "frame is cracked" then its just garbage - you can never tune it properly, and repair is not viable unless it's a very expensive piano. Here's a blurb on it [http://www.cambridgepianotuner.co.uk/newsite/cracked- frame/](http://www.cambridgepianotuner.co.uk/newsite/cracked-frame/)

<comment><AUTHOR> Cracked frames are rare though they do happen usually because a piano was mishandled during transport. Cracked soundboards quite common and just as bad, cracked pinblock makes it impossible to tune the piano.

</comment></comment></comment><comment><USER22> Very nice read, thanks.

It made me recall a nice memory as well. A while ago we (me and some friends) were helping out in some hurricane struck area. We were basically cleaning and throwing away stuff. In one house there was a Disklavier that was ruined and almost completely covered with mud. We asked the owners if we could keep it and they were like 'sure yeah just take it from here'. We spent a good month just playing with it, taking out everything, then trying to put it back together. Aside from the physical keys, nothing was salvageable but it was a very fun experience.

<comment><AUTHOR> Did you have a good look at the hammer/keyboard sensors? Those are works of art.

<comment><USER22> I did but didn't know how good they were until pretty much now that I read your comment :D. I remember I was overall impressed by the quality of everything, even on things that nobody would ever see.

Your comment sent me into a rabbit hole where I didn't knew the Disklaviers were capable of measuring and recording release velocity. That made me look up which MIDI controllers do the same and turns out I have one that does (Axiom Pro), and since I'm a music nerd now I'm using that on some software synths (and want to learn the proper technique for playing with it, which will take me months probably).

Thanks!

</comment></comment></comment><comment><USER23> Totally amazing. The work you did seems tortuous but its looks like its paid off! What a brilliant machine you have now, with so many possibilities, on top of sounding really really good.

</comment><comment><USER24> Woah, this is great! When I read the title I thought you'd just be putting sensors under the keys to record your playing, or stripping out a really old piano, putting speakers in the guts of it, and turning it into a digital piano inside an acoustic shell (a cool project idea in itself really). But this is something else entirely!

</comment><comment><USER25> _And if you get something wrong then you are going to have to fix your mistake as many times as you have keys_

If I was doing a project like this, I'd definitely do one key first and test it thoroughly before moving on with the rest.

<comment><AUTHOR> Of course I did just that. And that worked flawlessly. Which totally suckered me in. After that I built up the bar on that principle and found out that the variability resulting from very small errors in cutting and drilling was enough to cause some of the solenoids to bind. Re-doing that took a lot of time but the end result is much better.

The essential dimensions are: hole: 6.05 mm (drill 6 mm, it drills a tiny bit larger), pushrods about 5.72 mm. That gives minimum friction. But you can't buy 5.72 mm rods so you end up buying 6 mm rod and then sanding that down for every key to the right diameter. This is not the most precise process so you'll end up with 5.72 +- a few 100th of a mm. And then there is the humidity to deal with.

In the end I simply took a slightly larger bite out of the back of the action so it would have some more room between the edge there and the row of pushrods, that took care of any precision issues with where the holes were drilled and I matched each hole to it's rod individually based on how much play there was at the top, which is fairly easy to measure (deflection left/right).

The failure modes are: action not far enough back, pushrod will push the key up and then go right by it jamming the stick, pushrod can slip into the space between the plunjer and the wall jamming the stick and front row pushrods binding against the action. And because this only comes out when you have assembled everything it takes some time to analyze and fix.

What did not help is that the action itself is highly irregular, both in force required for a key to activate and in dimensions per key (especially horizontally), this made each key a unique item and my test key ended up not being representative enough.

</comment></comment><comment><USER26> This reminds me of Linus Åkesson's chipophone:

[https://www.linusakesson.net/chipophone/making.php](https://www.linusakesson.net/chipophone/making.php)

<comment><AUTHOR> Very neat project! I did something similar to an old Heyligers organ from the 70's. It was an absolute monster, 2.45 m tall, 1.5 meter wide, double manual and full pedal. I have it working with 'GrandOrgue', an open source organ simulator and it sounds and plays fantastic. Organs are a bit easier than pianos though because the outputs are binary rather than touch sensitive.

This:

[http://forum.pianoworld.com/ubbthreads.php/ubb/printthread/B...](http://forum.pianoworld.com/ubbthreads.php/ubb/printthread/Board/6/main/186453/type/thread.html)

Two year project is the same thing but then for a grand piano action -> MIDI. It is super impressive but gives me the unspecified feeling that it should be possible to do this in a simpler way.

</comment></comment><comment><USER27> Nice! I have an old Wurlitzer electric that I have been wanting to restore and MIDIfy. This gives me hope that the requisite modifications to a Disklavier or Pianodisk setup might actually be possible.

<comment><AUTHOR> That should not be too hard, the thing to look for would be an Arduino based MIDI project that you could adapt for your purposes.

</comment></comment><comment> yc-kraln Grats on the cheap grand! I bought a similarly inexpensive piano in a similarly decrepit condition before Covid, I've been meaning to MIDI-fy it as well. Thanks for the inspiration!

<comment><AUTHOR> Cool, let me know if I can help somehow. I've learned a lot that I would do better on another run.

</comment></comment><comment><USER28> This is some serious commitment to the cause. Hats off, sir.

</comment><comment><USER29> Incredible work!

</comment><comment><USER30> this is just incredible.</comment>


When Things Don't Work Out - <AUTHOR> http://www.avc.com/a_vc/2013/03/when-things-dont-work-out.html# <comment><USER2> Fred Wilson says: _The first is the "slog it out" scenario. This one is in many ways the most painful. It means that there is a business that can be built, but it won't be one that makes the VCs much money and because it takes so much time and money to "slog it out", it doesn't make the entrepreneur much money either._

This, in a nutshell, explains the problem with uniformly applying the VC model to all tech startups. Some tech startups -- often the ones involving creation of substantive new technology with deep intrinsic value -- require many years of slogging. There's nothing wrong with startups like that as long as there is a way to fund them to completion. But how to do that?

The problem is that the standard VC model doesn't really fit well for these startups, because the VCs by necessity have fixed, relatively short time horizons.

The VC-funded startups that do work well despite involving slogging and deep innovation generally seem to hit some vein of gold along the way -- e.g., Google "discovering" the psychological fact that consumer click-through rates are vastly higher for search ads than for other online ads, despite initially targeting enterprise search sales. This "gold strike" propels these companies to very rapid, hockey-stick growth that funds the vast investment required to build the new technology. But they seem _a priori_ unpredictable, which is troubling if you're looking for a repeatable model of success.

At ITA Software we "slogged it out" from ~1997 to 2010 and created $700M of value for shareholders; in contrast to the typical scenario Fred describes, it did very well for both entrepreneurs and the VCs (as well as for many of the employees). But we'd likely have exhausted the patience of our VCs had we raised money in 1997 rather than in 2006, and come to a rather different end. (We actually did look into raising from VCs circa 2000, but the terms offered were so bad we declined.)

Likewise, imagine trying to make what ultimately became Siri with a VC partner. SRI spent tens of millions of dollars on that project over a very long period of time. (I remember seeing a talk on it at AAAI in 2007, at which point it was already pretty mature, and had cost -- if I recall correctly -- $40M, but was still years away from being acquired by Apple.)

To be clear: I'm not saying the VC model is bad; I'm just saying it's not universally applicable. And I honestly don't know what to tell entrepreneurs who want to create companies that don't fit the model well, unless they are already rich enough to self-fund, in which case I ask if I can invest. :)

<comment><USER3> Just to add to your thought, Siri came from SRI Research which describes itself as: R&D and Solutions for Government and Business SRI International is an independent, 501(c)(3) nonprofit research institute conducting client- sponsored research and development for government, industry, foundations, and other organizations. SRI's 2012 revenues were approximately $545 million.

<http://www.sri.com/work/timeline/siri> SRI spun off Siri from SRI in 2007 and Siri was acquired by Apple in 2010.

There are a lot of governmental, or government-associated organizations which tend to work with a high level of long-term technical depth. Granted, those organizations generally show less/varying ability to quickly get technologies out for public use than VCs.

In an ideal world, it would be nice to imagine that these long term organizations could operate on the downstream income from products benefitting from their focus. However, I think the typically the closing of that loop is through the relatively disconnected path of gov't funding: if that gov't/society benefits, and that organization can claim a link with past successes, then more gov't funding follows...

</comment></comment><comment><USER4> This reminds me of PG's article about schlep (<http://www.paulgraham.com/schlep.html>) and suggests a startup opportunity: If you can streamline the process of managing an investment in a poorly- performing company and/or shutting a company down when it fails completely, there's probably lots of VCs who would love to hand over their stock cheap, just to get rid of the headaches so they can focus on the investments they want to focus on.

YC has proven that startup incubators can be phenomenally effective... who wants to launch the first startup hospice?

<comment><USER5> I would absolutely love to do this. But it's going to be very difficult - toeing a line between trading while insolvent, keeping suppliers on board, and trying to recapitalise an unproven business. There are plenty of distressed investors / turnaround funds out there - they tend to focus on established businesses and even then often struggle to achieve a positive outcome.

However, I do think there is scope for a sort of holding pool for products that are acquihired and then shut down. Eg. Posterous would be a good candidate. Let the staff go to their new homes, but build a team whose specialist skillset is in taking an already built product, putting it into stasis and dropping ongoing costs, and then monetising that existing tech/content/audience/userbase. Perhaps in the hope that some later startup can use the existing product to build-off in return for equity.

</comment></comment><comment><USER6> This seems like the possible outcomes for high profile startups and not necessarily most startups. I am relatively young (not even 30) and have already been a part of a startup that died a much quieter death, absent any fire sales or acqui-hires.

If anything it reinforces how powerful it is to be a high profile company. Then your company doesn't just die, it either salvages its resources as an acqui-hire/firesale (which clearly isn't good but it's something) or survives unglamorously. There are companies out there that cannot say they were "fortunate" enough for either of those things to occur.

<comment><USER7> Those are the possible outcomes for premier VC funded startups, so, yeah, that definitely excludes most startups.

<comment><USER6> That's exactly my point. I wanted to draw attention to the fact that this is the floor only if you're USV or somewhere similar. And I understand Fred's perspective, no one wants to put hard work into something and see it fail to flourish. Just to say, wow, if you're as successful as USV people see tremendous value in your investments even when they don't work out. And I suspect from the tone the post wasn't written with it in mind that for many people this kind of downside would be a rather fortunate level of downside risk.

Alternatively maybe the language he's using and what goes unstated is actually masking serious financial losses. But I think most startup failures actually result in founders' and investors' time & money up in smoke.

</comment></comment></comment><comment><USER8> Thanks for writing this, Fred. I'll be honest, I never thought about the failures from a VC's perspective other than "Oh well, I guess the other wins will make up for that one." There's a lot of work that goes on behind the scenes that you would never have heard about if you weren't a part of it, because it's not sexy enough to put on display (nor is it advantageous to the company of the VC).

</comment><comment><USER9> Why is the fire sale better than acqui-hire? (And to be honest, what is the difference?)

<comment><USER10> I think he was using them as synonyms. That would explain to me why there's only one comma there, instead of two commas to make a series of three nouns, and also subsequently only two further explanatory descriptions.

<comment><USER11> yes, i am using them as synonyms. most fire sales are talent driven deals.

</comment></comment></comment><comment><USER12> I am not sure what kind of companies are the "slog it out" type. Which company can be profitable (I assume) and not grow much in 2 decades? If they are just cash cows, why can't the VC/entrepreneurs figure out how to reinvest it in other sectors?

<comment><USER13> I don't think he means necessarily that they're cash cows.

It sounds like he means that they're profitable enough to keep surviving and growing somewhat but not to the point where someone wants to acquire the business.

Due the emotional investment in the business the entrepreneur slogs it out hoping they'll stumble upon something that will give them the growth curve they need to get the acquisition / IPO / other exit opportunity.

</comment></comment><comment><USER14> Why is it so negative to slog it out (from a founder perspecitve)? I understand that the VC is interested only in 'hits', but I can't see what is wrong with building a stable and profitable (up to 30 year growth) business from a startup.

<comment><USER15> One reason is that the slow growth period would have likely created a series of down-rounds when the company was raising money in its initial years, massively diluting the initial founders. So even after the company gets cashflow positive or figures out some other way to stay alive (loans, etc.) without raising VC money, the entrepreneurs can never make out like bandits with the stock they've got left, in most realistic exit scenarios.

</comment></comment><comment><USER16> > _So what happens with the other two-thirds? ... Sometimes an entrepreneur > will take an early exit. ...That's maybe 10% of the total outcomes. So at > least 50% of the outcomes are not a win for the VC or the entrepreneur_

In the past, VCs used to say about the portfolio: "3 go north, 3 go south, and 4 turn into the living dead."

I think Fred is saying that 3 go north, 5 go south, 1 turns into the living dead, and then there's another that we just will agree to ignore.

</comment><comment><USER17> Fred: how do you feel about a template that makes it possible for mid-growth businesses (the 10-30%/year growth companies that aren't speeding to liquidity) to make returns to investors? Here's a first scratch I drew at that concept: [http://michaelochurch.wordpress.com/2013/03/26/gervais- macle...](http://michaelochurch.wordpress.com/2013/03/26/gervais- macleod-17-building-the-future-and-financing-lifestyle-businesses/)

The idea is that extreme transparency in profit sharing and compensation makes it possible for the mid-growth businesses to kick back dividends to investors while still growing-- instead of several years later at a liquidity event that may never happen. Thus, investors are fairly treated and get to participate, financially, in a space of business (mid-growth) that's currently underbanked.

The VC ecosystem is pretty abominable, and I don't think it's because VCs are bad people. They're not. I think it has a lot more to do with the fact that these red-ocean gambits require huge, fast-growing companies, so it's a natural oligarchy. It requires businesses to swell to 100+ people before they have the cultural readiness to grow to that size while maintaining a decent culture (hence, most turn into cutthroat, horrid messes).

It seems like if we could come up with a structure that enables the financing of mid-growth businesses-- equity financing for the 10-30%/year growth companies with less risk of total failure, that could also use their slower growth to optimize for creative innovation and cultural health-- then everyone would win.

</comment><comment><USER18> > I have great admiration for the entrepreneurs I have worked with who have > slogged it out. There is very little upside for them in this scenario.

These two sentences seem contradictory. Why admire an entrepreneurial Don Quixote?

<comment><USER19> It's admirable to make tough choices and try to return as much as possible to your investors even when the prospects of a big payday are slim; and to keep trying to change the world and achieve your vision even if it eludes you for a long time; and to stand by your customers and employees who believe in that vision.

Less admirable to jump ship from a going concern because there's no rocket ship payday and let the VC and everyone else try to salvage as much as possible.

Think about something like Next... was a struggle and had to be scaled back... Steve Jobs could have just let it go and moved on to the next big thing.

<comment><USER18> A VC makes their money on the few times they win, and it more than makes up for all the companies that lose completey. Just barely making back their investment is no better for them than returning nothing at all. (In fact, they _could_ be putting the money into market securities with risk equal to your company's likelihood of return, so you have to give them [that same risk multiplier] * [their original investment] or they _lose money_ , even if you give a "positive return.")

A VC would much rather give you 1mil five times and have you kill four of those companies and make a 100x return on the fifth one. Sitting around forever on the first one trying to eek out a 2x return means you never build the fifth one, and that's a much lower aggregate return.</comment></comment></comment>


How Boise's Fight over Homelessness Is Rippling Along the West Coast - <AUTHOR> https://www.npr.org/2019/12/13/787861253/how-boises-fight-over-homelessness-is-rippling-across-the-west-coast <comment><USER2> > The decision said it was "cruel and unusual punishment" to enforce rules > that stop homeless people from camping in public places when they have no > place else to go.

Even NPR summarized the decision inaccurately. The decision was that because sleep - not camping, but sleep - is a biological necessity, there must be a practical way for homeless people to obtain it.

If that method isn't shelters (because they're full or inaccessible), then there needs to be places and/or times when sleeping is allowed and practical. The justices explicitly noted that this doesn't mean municipalities can't enact and enforce significant restrictions on when, where, and how (for example, no multi-day camping or no erecting structures) this can happen, including when no shelter beds are available. There needs to be a viable way to obtain sleep, though, whatever that way is.

[https://sccinsight.com/2019/04/08/what-the-9th-circuit- actua...](https://sccinsight.com/2019/04/08/what-the-9th-circuit-actually- said-about-criminalizing-homelessness/) has an excellent unbiased explanation, though the core part of the decision is not that long. Here's the footnote which explicitly carved out this stuff:

> Naturally, our holding does not cover individuals who do have access to > adequate temporary shelter, whether because they have the means to pay for > it or because it is realistically available to them for free, but who choose > not to use it. Nor do we suggest that a jurisdiction with insufficient > shelter can never criminalize the act of sleeping outside. Even where > shelter is unavailable, an ordinance prohibiting sitting, lying, or sleeping > outside at particular times or in particular locations might well be > constitutionally permissible. See Jones, 444 F.3d at 1123. So, too, might an > ordinance barring the obstruction of public rights of way or the erection of > certain structures. Whether some other ordinance is consistent with the > Eighth Amendment will depend, as here, on whether it punishes a person for > lacking the means to live out the "universal and unavoidable consequences of > being human" in the way the ordinance prescribes.</comment>


The Star7 PDA Prototype, Genesis of Java [video] (1992) - <AUTHOR> https://www.youtube.com/watch?v=Ahg8OBYixL0

<comment><USER2> While object-based UIs have failed to become a success, the video does show some interesting UI features, like inertia scrolling, that have only become widespread quite recently. Surprising to see how ahead of its time this prototype was 22(!) years ago.

<comment><USER3> Most of the touch-screen demos I've seen seem to have all discovered inertial scrolling. I think it's almost inevitable that, once you have a tactile interface, the expectations of real-world behaviors when interacting come out. Most of the pre-iphone interfaces all focused on being menu-driven with buttons or scrolling with mice, so that natural discovery couldn't occur.</comment></comment>


Twitter Friends & Followers Widget - A jQuery Plugin - <AUTHOR> http://www.moretechtips.net/2009/10/twitter-friends-followers-widget-jquery.html

<comment><AUTHOR> This is a jQuery plugin that you can embed anywhere to display pictures of your Twitter followers or friends (whom you follow) and their latest tweets if you like.</comment>