Dbv.php: Database version control - <AUTHOR> http://dbv.vizuina.com/ <comment><USER2> Nice, looks pretty similar to Rails or Sequel migrations. Having used a bunch of these systems, both on a large team and just by myself, I would recommend using a timestamp instead of a sequence number. A timestamp ensures that different team members making migrations at the same time don't stomp on each other's version numbers and cause merge conflicts.

<comment><USER3> I can't second that recommendation enough. Any db migration project that uses sequence numbers to label/sort migrations is badly broken for any team larger than 1.

I've used enough of these migration systems now that I'm convinced any system using sequence numbers likely has other, less noticeable problems since the problem space is complex and this is a known best practice of which the developers somehow remained ignorant.

<comment><USER4> I can't disagree enough. Time is too brittle of a system to rely on across various machines, especially since you can't be certain all machines can correctly report back the same UTC time. I've seen too many devs using VMs with way out of whack timestamps (VM's clock pauses when it's suspended, and they either forget, or didn't set up a hook to ntp). Also, when is the timestamp set? When the migration code is first written? That could lead to problems when the migration lives in a feature branch I started a month ago. Now that it's time to merge into master, I need to pull in upstream migrations and reorder my own migration to follow those. Using a timestamp here doesn't give any benefit over sequential ordering.

Second, if you have multiple migrations created on the same table by two devs that weren't aware of the others actions, this is exactly when a merge conflict should arise. This is probably less of a deal when both are schema migrations, but if both devs included a data migration, the result could be catastrophic if both migrations touch the same data. Human intervention is necessary at this point to make sure the order the system decided for the migrations is fine.

Third, if you've got a big team and either you botched your planning so much that you need a ton of migrations, or your policy freely allows everyone to create migrations without communicating with each other, you've got some major problems with your team.

<comment><USER5> The timestamp itself being accurate or not really does not matter at all, at least in the majority of use cases.

The idea is just to avoid a filename conflict which, even though the fix may be easy enough, can cause confusion for both the humans (developers) and for the schema management system itself (they usually just keep track of which versions have / have not been run).

Even just incrementing new migrations by random(0,1000) would, at least in theory, resolve the issue for the most part.

It just seems a lot easier to go ahead & use timestamps though....

</comment></comment></comment></comment><comment><USER6> Pretty much the same as a home-grown system we're using at workplace :-)

The only difference I could find is they use sprintf("%d", $nr) file naming schema, while we use sprintf("%03d-%s", $nr, $login) -- the $login part is to have natural explicit ordering, to avoid duplicate numbers, and the %03d is to have natural ordering in directory listing.

</comment><comment><USER7> Any installation instructions that advice you to do "chmod -R 777 data" I skip.

<comment><USER8> then... it won't work? Alternatively, you could make it group writable by yourself and whatever the webserver is running as. Or, if you are using suPHP (<http://www.suphp.org/Home.html>), you won't need to chmod anything.

<comment><USER3> then... you would have to think about your permissions structure and actually set it up properly as opposed to turning it off with chmod -R 777

I agree with the logic, how much trust should I place in software when the documentation says "setting up groups and permissions would take 30 seconds of thought and a minute or so in total. That's too hard for me so fuck it, just do this horrible thing to turn off security completely". Did they handle other problems that way too?

</comment></comment></comment><comment><USER9> Is there some kind of place where useful PHP tools, frameworks, and best practices are documented?

The majority of people I see trying to learn PHP have no idea these things even exist and are still building applications in the atrocious 1990s style promoted by such poisonously bad resources as w3schools.

It would be nice if people actually used tools like this rather than tried to bang their own together with mysql_query.

<comment><USER10> >> It would be nice if people actually used tools like this rather than tried to bang their own together with mysql_query.

Totally agree with this.

After getting super impressed by Django's South migrations[1] app, I wrote a minimal migrations tool[2] for PHP-MySQL projects without checking if solutions already existed :-). Used it in two projects and it made life a lot easier for me and the team.

This looks much better though. Will definitely give it a try for my next PHP project.

[1] <http://south.aeracode.org/>

[2] <https://github.com/naiquevin/phpDbMigrations>

<comment><USER11> Yep, South is pretty much mandatory nowadays. I also use django- mediagenerator. Does anyone have a better library for media management to recommend?

</comment></comment></comment><comment><USER12> Looks like a nicely done tool. A cursory view makes me wonder if it handles stored procedures, custom types, triggers, etc.

I ask because I've been using apgdiff [1] with a makefile for my migrations, and it works really well. There is no web interface (cli only), but it handles all the other parts of the database well.

[1] - <http://apgdiff.startnet.biz/>

<comment><USER13> it does handle procedures, functions, triggers, etc.

<comment><USER12> cool. count me in. I think I might have some time to begin the Postgres interface

</comment></comment></comment><comment><USER5> This morning I went ahead and implemented this on a project of mine. So far I'm pretty pleased with it overall.

Here are a few thoughts after playing with it a bit first hand...

I wanted to place DBV outside of my web root and then programmatically include it from existing admin authentication code.

For my use case this also addressed most of my permission-related concerns.

It did unfortunately require a few very minor code edits to DBV which I'm going to try to package up and submit a pull request for. These were just basic things such as changing the CSS / JS include paths, moving those same assets to an accessible location, and changing some JS / AJAX action URIs to self-reference instead of being "hard coded" to index.php...

All in all, pretty trivial to get setup and it really hits the spot in terms of solving the actual problem.

Thank you! :-)

</comment><comment><USER14> The Yii PHP framework also has a similar migration feature [http://www.yiiframework.com/doc/guide/1.1/en/database.migrat...](http://www.yiiframework.com/doc/guide/1.1/en/database.migration)

</comment><comment><USER15> Shameless plug. I've developed a similar tool to this without the gui frontend, distributed as a ruby gem - <http://dbgeni.com> It was inspired by Ruby on Rails and was quite a nice project to develop. It supports oracle, SQLite, sybase and MySQL out of the box. It also handles deploying stored procedures.

In a previous job, I used a technique like this to deploy pretty big Oracle application, being worked on by 160 developers, so using migrations to manage your database does work... with some care!

</comment><comment><USER16> The frameworks looks pretty decent, but what I would really like is to be able to do TDD-style database migrations.

Right now I spend quite a bit of time carefully prepping Liquibase changesets, reverting the DB a couple of times, tweaking the script, re-running it and inspecting the changes.

That sounds just like what TDD was designed for...

</comment><comment><USER17> Also see Liquibase: <http://liquibase.org>

</comment><comment><USER18> Liquibase is already heavily used in enterprise settings. I could see this being fantastic for smaller dev groups, though.

</comment><comment><USER19> This is nicely named tool. I will never use it, but it is informative and I really like it.

</comment><comment><USER20> alembic from SQLAlchemy author does half of that. Now the cool thing about this one is it has the gui overview.</comment>


Anonymous hacker faces 16 years in prison, while Steubenville rapists walk free - <AUTHOR> https://www.rt.com/usa/358728-anonymous-trial-steubenville-rape/ <comment><USER2> This outcome is blatantly wrong from any way you look at the story. How can we help fix this?

<comment><USER3> This outcome isn't an outcome yet, so I don't know how it can possibly be blatantly wrong. The hacker has not been sentenced yet, the rape perpetrators were. Comparing a "possible lifetime + cancer" sentence to an actually imposed one is poor journalism - please check out either [https://popehat.com/2013/03/26/cloudy-with-a-chance-of- shitt...](https://popehat.com/2013/03/26/cloudy-with-a-chance-of-shitty- journalism/) or [https://popehat.com/2015/10/08/bad-reporting-on-matthew- keys...](https://popehat.com/2015/10/08/bad-reporting-on-matthew-keys- possible-sentence-conceals-prosecutorial-power/) for an explanation why this kind of reporting is just wrong.

But even if you don't read those blog posts, consider this - the reported sentences are the maximum possible under the statute. From there, you would apply contextual circumstances - what the actual circumstances of the crime were, criminal history, admission of guilt, likelihood of recidivism, danger to society, whatever else the judge might find important, and adjust the sentence. Unless you think the hacker has undoubtedly committed the most egregious hacking crime, then he's not getting the maximum sentence.

And is the outcome for the rape perpetrators "blatantly wrong"? I don't really know the specifics of the case. Just quickly reading this CNN report - [http://edition.cnn.com/2013/03/17/justice/ohio- steubenville-...](http://edition.cnn.com/2013/03/17/justice/ohio-steubenville- case/index.html) \- you can find out they're minors, they were remorseful, the rape was not violent, and most importantly, jail was not the only punishment they received - they were put on the sex offenders registry, which will most likely ruin their chances at having a decent life.

<comment><USER4> Who gives a shit if they are minors? They still ruined a girls life.

<comment><USER5> Minors shoot and kill people all the time, too. In US culture and jurisprudence, we tend to weigh heavily factors that diminish offenders capacity to distinguish right from wrong, and teenagers have both diminished judgement and impulse control capabilities that are at their lifetime low.

We generally try, at least ostensibly, to recognize that long sentences serve no practical purpose when applied to someone who will in just a few years be for many purposes a _biologically different person_.

<comment><USER6> How does "tried as an adult" fit into that view?

I've never understood why you would go to the trouble of having special juvenile criminal sentencing ranges and juvenile courts when oftentimes a juvenile does something really bad he is tried as an adult (even more so in the UK, it seems). It would be more straightforward to just exclude murder and other grave crimes from juvenile court altogether.

<comment><USER5> Yeah, it's pretty fucked up.</comment></comment></comment></comment></comment></comment>


Video streaming engineers at Fox Sports are preparing for the big game - <AUTHOR> https://www.linkedin.com/pulse/code-super-bowl-how-video-streaming-engineers-fox-sports-daniel-bean/ <comment><USER2> With international Copyright "borders" being built in to online streaming services, what is a good option for legally streaming the Super Bowl in Europe?</comment>


A literary prank that 'Hansel and Gretel' was based on a real story - <AUTHOR> https://www.atlasobscura.com/articles/is-hansel-and-gretel-real <comment><USER2> This makes me think of the Australian novel (and film based on it) "Picnic at Hanging Rock", which is entirely fictional yet is widely believed to be based on true events.

[https://en.wikipedia.org/wiki/Picnic_at_Hanging_Rock_(novel)...](https://en.wikipedia.org/wiki/Picnic_at_Hanging_Rock_\(novel\)#Basis_in_reality)

<comment><USER3> You might be interested then in the horror movie Darkness Falls [1] ... the DVD has an additional short 'documentary' in which people in a small Australian town are interviewed about the historical figure that inspired the film.

1\. [https://en.wikipedia.org/wiki/Darkness_Falls_(2003_film)](https://en.wikipedia.org/wiki/Darkness_Falls_\(2003_film\))

</comment></comment><comment><USER4> Wikipedia article: [https://en.wikipedia.org/wiki/The_Truth_About_Hansel_and_Gre...](https://en.wikipedia.org/wiki/The_Truth_About_Hansel_and_Gretel)

The book is still available on Amazon: [https://www.amazon.com/Die-Wahrheit- über-Hänsel-Gretel/dp/34...](https://www.amazon.com/Die-Wahrheit-über-Hänsel- Gretel/dp/3499150921) (and the movie listed on IMDb: [https://www.imdb.com/title/tt0093684/](https://www.imdb.com/title/tt0093684/))

Wish I could read German; seems fun!

</comment><comment><USER5> Not so much "real" as "based on a real story". It's not like Hansel and Gretel is about adult baker siblings stealing the recipe for Lebkuchen and burning the inventor, it's about young siblings held captive by a carnivorous witch breaking out by burning her alive.

Still an interesting story, the headline is just too click-baity for my taste.

<comment><USER6> The headline is an accurate summary of the article.

<comment><USER5> At the point I wrote the comment the headline was "A literary prank that led Germany to believe 'Hansel and Gretel' was a real story" which is not an accurate summary.

</comment></comment></comment><comment><USER7> Semi-OT: I really don't like HN being used for quirky historical curiosities (like those found in every atlasobscura.com submission). I want to downvote these, but can't, and I don't think they rise to the level of deserving being flagged.

What should I do?

<comment><USER8> I think these posts are the #1 encouraged kind of item to submit to HN when you read the newsguidelines. [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

So I think it is your expectation with HN that may need to change, as I would be shocked to see this content disappear. It's exactly "On-Topic: Anything that good hackers would find interesting. That includes more than hacking and startups.", the first sentence of the guidelines.

<comment><USER7> That means things that hackers _as hackers_ would find interesting. There's significant overlap between hackers and "men who could benefit from dating advice" but that doesn't make dating advice topical. The same logic applies to historical curiosities.

<comment><USER9> You're interpreting the guidelines too narrowly. Historical material has always been welcome here: [https://hn.algolia.com/?sort=byDate&dateRange=all&type=comme...](https://hn.algolia.com/?sort=byDate&dateRange=all&type=comment&storyText=false&prefix=false&page=0&query=by:dang%20"historical%20material").

One way of looking at this is that the contours were originally defined by what pg's own intellectual curiosity ([https://news.ycombinator.com/hackernews.html](https://news.ycombinator.com/hackernews.html)). He knows more about history than probably anyone I've ever met.

<comment><USER7> Sure, I guess what bothers me more is how indiscriminate it is, like how Atlas Obscura just gets fast tracked to the point that it (and related oh-so-clever) stories make up a disproportional share of the links.</comment></comment></comment></comment></comment>


Requiring Students to Take Algebra Is Not a 'Civil Rights' Issue - <AUTHOR> http://ijr.com/the-declaration/2017/07/927625-no-california-requiring-students-take-algebra-not-civil-rights-issue-allowing-skip/ <comment><AUTHOR> I'd like to see more research on common core. The article suggests the urge to drop algebra in CA originates from that.</comment>


Ask HN: YC Series AA docs but what about Convertible Notes? - <AUTHOR>

Think most of us that follow YC know of the trend towards funding using Convertible Notes.  Y-Combinator has released series AA docs but my question is will YC be releasing standard docs for raising money using Convertible Notes too?
Pauls Essay on High Resolution Fundraising http://paulgraham.com/hiresfund.html
AngelConf - <USER2> http://www.johnbautista.com/2010/07/trends-in-angel-investing-from-yc-angel.html
Series AA documents http://ycombinator.com/seriesaa.html <comment><USER3> <http://news.ycombinator.com/item?id=1655585>

<comment><AUTHOR> Thanks</comment></comment>


Engineering management lessons - <AUTHOR> http://www.defmacro.org/2014/10/03/engman.html <comment><USER2> I think the don't section is far too specific and short. I also think you can learn a lot more from failure than success, but I might be biased there. My management experience is in large bureaucracies.

Here are my top ways to fail as a technical manager:

1\. You don't understand what the people who work for you do well enough to know good work from bad work. This has all sorts of bad ramifications. You can't be a leader if you don't understand what's going on. Does that mean you should be able to write code? Maybe. . .it depends on the job. It does mean that "Don't write code" is not universally good advice.

2\. People don't trust you. This might not be because of anything you've done but things you've failed to do, like chat with people regularly and give them bad news quickly.

3\. You don't manage the careers of subordinates so that they feel like you're helping them succeed. This is particularly important for the typical engineering personality type that finds "selling yourself" repulsive. Don't have enough data to "sell" a subordinate at review time? See #1.

4\. You don't set a goal or direction. Details are the engineers' job. You have to know about the details and understand them, but your job is to give a clear overall direction and goal and help the team stick to it, and change it when necessary. If you've hired good people who want to accomplish something, they'll do that. Just make it clear what _that_ is.

5\. You forget that your success might occur in spite of you. Especially as a middle manager, you're like an insurance company; if there's anyone on your team that causes that team to be a success, you look like a success. A mostly dysfunctional team (or a completely dysfunctional manager) may still succeed. Understand that great people risk a lot more working for you than you risk having them work for you. If you're successful, you should live in fear that you're doing everything wrong and constantly check yourself. You also need to hide this fear from everyone.

6\. You don't live to serve. Your goal every day should be to give your people the tools they need to succeed.

<comment><USER3> What does managing careers of subordinates mean? Sorry to ask a basic question but most of my experience is at startups that barely have structure to the team. What specifically should managers be doing to support their team members's careers?

<comment><USER4> It means telling me what I need to do to get to the next level on my career path.

Step 1 is asking what your subordinate's next position will be. Are the looking to stay technical? Are they looking to transition to a more managerial role? Do they not know? If they don't know or are uncertain, take a step back and ask them about what they enjoy doing, present them with options and then let them decide what their goal state is.

Step 2 is figuring out what you and they need to do in order to move to that goal.

Also, like the original article states, a lot of engineers are really bad at selling themselves. They won't ask for a promotion. They won't ask, "Okay, what am I missing that's preventing me from getting an acknowledgement for my skills and experience." If they're anything like me, they'll just look around after a while and jump ship when they find a position somewhere else that does give them what they want.

Finally, I should note that I am _not_ a manager, nor do I have any desire to be one. But I've dealt with a fair number of managers, and the ones I've been most comfortable with have been the ones who've been direct about asking me (after 4-6 months) where I want to go in the organization. The worst feeling is going to one-on-ones week after week, and just rehashing the same points you go over in your daily stand-ups. Weekly one-on-ones should be about the developer and the manager figuring out where the developer wants to go in the organization and what needs to be done to get them there.

</comment></comment></comment><comment><AUTHOR> Author here.

These are the most important things I learned about engineering management after five years of doing it. There are lots of subtleties between the lines, so let me know if anything feels vague and I'll try to clarify it.

<comment><USER5> > [Don't] Personally fix bugs and ship features. You have to write code to > remain an effective tiebreaker, but that's where your coding > responsibilities end.

How do you write code without fixing bugs and shipping features? What do you mean by tiebreaker?

<comment><AUTHOR> _> How do you write code without fixing bugs and shipping features?_

What I meant here is that you have to fix an occasional bug and ship an occasional feature, but only in order to remain an effective tiebreaker. Fixing things is no longer your primary job. During crunch time new managers often feel that the best way to help the team is to dig in and fix things themselves, but in reality they can help much more effectively by doing other things.

So fix an occasional bug, but remember, you're only doing it to stay in tune with the codebase, _not_ to ship things faster.

 _> What do you mean by tiebreaker?_

I'm talking about making decisions when half the team thinks "we should do X" and the other half thinks "we should do Y". If the team can't reach consensus _someone_ has to decide, and as a manager, that's you.

<comment><USER6> >During crunch time

Is "crunch time" a good thing in software development? It's certainly possible to deliver software without crunch times.

<comment><USER7> No, it's a spectacularly bad thing. Unfortunately most dev cultures assume that it will always be necessary. In pretty much all cases it's a management failure.

</comment></comment></comment></comment></comment><comment><USER8> I think there are different kinds of engineering managers and different kinds of teams. I think it might be realistic in a large organization, like Google or Facebook, for an engineering manager to not write code. There is enough political busy work every day in those organizations to keep you occupied with non-engineering tasks.

Working on small teams, in start ups, with just 3 to 4 other engineers, I found it was more productive for me to tackle at least one or two small technical problems with each release. For one thing, it helped me to understand what kinds of shortcomings there were with our tools--and whether we needed to invest more in them to improve productivity. Also, because I was immersed in the code, it was hard for people to bullshit me about what they were doing, and how long it was taking.

There is an attitude in Silicon Valley that everyone is always working for the good of the organization, or has the intention of doing so. I think you can be fortunate and put such a team together. But sometimes you get someone who has either lost the motivation to contribute, or has never had it. You can try to help such a person get another position, so you can hire a replacement, but sometimes you need to get through a release before that can happen.

In such a situation, being able to have an honest conversation, where they know they can't bullshit you about technical stuff, is important.

<comment><USER9> Has nothing to do with the size of organization, but the nature of the context. A small org can have a lot of clients, stakeholders, external partners or other communication overhead between the team and the rest of the world.

<comment><USER8> That is true.

</comment></comment></comment><comment><USER10> I had the same reaction to this as many others have, in that I think much of this stuff is good/fine, but the advice that engineering leadership shouldn't actually directly contribute in a technical fashion is wrongheaded. I have elaborated on this in the past[1], but in particular, I don't think it's reasonable to expect to be the "tie breaker" in what is (tautologically) a sharp divide on an engineering team when you no longer contribute: as a non- contributor, you will be relying on what people are telling you instead of your own engineering judgement.

But my objection to the advice that management should not contribute technically is actually deeper than technical conflict resolution. Software is so hard that it becomes like child birth in that we have an overwhelming bias to forget the pain: the second you stop writing software, you start rewriting your own history. So as far as you can remember, it was all pretty straightforward, you always hit your deadlines, etc. And with this, you have started down the primrose path in which you just can't understand why this is taking so long and can't you guys just get all of the bugs fixed?! I (like many -- if not most -- software engineers) have seen this first hand: one of the most technical people I've ever worked with ventured into management, stopped writing software entirely, and -- with astonishingly short latency -- forgot over a decade of experience of pain. He forgot the inifinite complexity of software, and instead assumed that bugs were due to a lack of urgency, laziness, or worse. At one point, we were getting crushed by a very nasty issue, and he called a meeting to spend an hour telling us how important it was (oh, thanks!) and that he "didn't want to hear details; just get it fixed". If he had only asked "what I can do to help?", I was ready with: "You are -- or at least were -- a damned good engineer; you can help us debug it."

This brings me to a slightly broader point: as technical leadership, I believe that direct contribution is essential, but you do need to be very careful about how you contribute. The last thing you want is to be on the critical path of some feature and have the team blocked because you've been called into a board meeting (or a customer visit or an off-site or a planning meeting or any of the other of zillions of ways in which organizational leadership must spend some portion of their time). For me personally, the answer this is particularly easy because it dovetails with what I love to do anyway: my way of directly contributing to my team is to debug. By picking up bugs that no one else is looking at, you're out of the critical path, but you are helping the team, staying technically current, and reminding yourself -- constantly! -- of the brutal complexity of software engineering.

[1] [http://www.slideshare.net/bcantrill/surge2013](http://www.slideshare.net/bcantrill/surge2013) video: [http://www.youtube.com/watch?v=bGkVM1B5NuI](http://www.youtube.com/watch?v=bGkVM1B5NuI)

<comment><USER11> Managers should be able to build and run the application (assuming its an application) and fix minor bugs, including going through review and check-in. The size of the technical issues they should touch with their own hands scales at least linearly with the size of the team. On a small team there is no problem with the manager being deep in the code. On a team with more than five people the size of things they should be dealing with starts to drop pretty precipitously, and by the time they are up to 15 or 20 people they should be doing not much more than the odd cosmetic tweak.

The reason for this is that life is a personnel problem, and as the team gets larger than 5 you just don't have that much room in your brain to accommodate the different modes of thinking required for dealing with people and code (or maybe you do: I don't, but my brain is particularly small, or so I've been told.)

With regard to the manager you described: they are simply a bad manager. Good managers are always working to facilitate their team's progress. Doing things like calling a meeting to harass over-worked people into working harder is bad management, and no amount of technical hands-on will change that. So my prediction is getting a person like that into the code won't help.

<comment><USER12> Based on my current experience, I would avoid joining a team that had a manager partaking in programming / devops.

All different types of managers can be good or bad, my personal experience has just been that managers who dive into technical tasks, even just bug fixing and devopsy stuff, tend to neglect their managerial responsibilities just enough to be a chronic frustration to everyone below them.

Having only been in the industry a few years, it's also extremely frustration when a manager does not delegate responsibilities you're interested in taking on. So my view now is that if you're a manager taking on technical tasks, you're denying your employees opportunities to grow professionally. It certainly depends on mood at the time, but in a negative cycle, this can feel like a vote of no confidence from your manager.

<comment><USER13> I find it strange that there's a debate about this. When it comes to cooking, medicine, law, architecture, hairdressing, design or sales, the best people manage a team and continue to practice themselves.

When a dev team manager doesn't understand the architecture of the systems and exactly how everything works, they cannot be in full control of the team.

Businesses need crossover people. People who can code AND who "get it" at a commercial boardroom level.

<comment><USER14> I think the larger the team, the larger the managerial workload. We're so small, if our client app manager stopped doing dev, we'd have to hire another person. At a global company I started with after college, working with with a team of 10, my boss split his time between managerial busy work (expected of him by upper management, not self-imposed) and being as involved as possible. He was always able to speak intelligently about the product and its code, and was able to contribute in ways that set an expectation of quality. He always had the respect of the team (and when not, someone got fired). I consider him to have been a mentor - he got it right.

If you're managing a team of 40, being involved directly in code/execution is likely impractical and perhaps even detrimental, but at any scale up to 15 people or so, direct involvement seems both practical and necessary to retain the respect of your team, and assure a quality product in the end.

<comment><USER12> I've never been on a team larger than 12 people, and they still needed someone solely doing managerial work. I think it's easy to say "my team doesn't need a full time manager". Though the problems I've seen arise as a result of lacking management are slow and quiet. Grouchiness slowly creeps its way in until a group of good (usually the best) people quit with little warning. I can't emphasize enough how much I think a good full time manager is vital to a team's performance and endurance.

The role that's being described above is one I would consider a "lead engineer", not a manager. The healthiest role division I've seen so far is when a team has a full time manager, and also a lead engineer or two who are ultimately responsible for making sure the needs of the business are being fulfilled by the engineering team.

</comment></comment></comment></comment></comment></comment><comment><USER15> Agree with basically everything here. The biggest surprise about engineering management is that it's less about making technical decisions and more about nurturing other people to make technical decisions. It's almost entirely people management skills that don't even specifically apply to engineering.

The other thing is the role is very rarely leadership and more service. Leaders usually blossom from within your teams naturally.

</comment><comment><USER16> People management, product management, project management, strategic management, and technical management (i.e. tech lead) are all separate roles with their own best practices.

These roles are often conflicting which makes management advice articles difficult to follow.

For example "[Dont] Personally fix bugs and ship features." is great advice for the Product Manager, the People Manager, and the Project Manager, but horrible advice for the Technical Manager.

A good technical manager needs to be right in the thick of it and the longer they go without touching the code the worse they become. Trying to be a tie breaker on a technical issue when you aren't qualified to make the call will quickly result in the team losing faith in you.

</comment><comment><USER17> There's not much there about the management triangle - cost, schedule and scope. The hard part in management is navigating between these vertices day by day. It's great when you can take "cost" out of the equation (and often partially schedule for some time at least) because of VC funding, but the truth is that you have it much easier than most other managers.

HBR is full of similarly writted golden thoughts written by really experienced managers and leaders, however it is hard to relate to them in normal business scenario, where the customer is almost screaming at you because of deadline approaching, the sales team sold something that doesn't exist, the cashflow is close to negative (no VC).

<comment><USER18> That's a project management triangle, related to people management, but something that good engineering managers shield their engineers from.

</comment></comment><comment><USER19> _> Most intellectual arguments have strong emotional undercurrents. You'll be dramatically more efficient once you learn to figure out what those are._

What does this mean?

<comment><USER20> Not the author, but taking a stab at your question: I think it means that regardless of how logically unassailable you believe your position to be in an argument, that position is heavily influenced by your emotions (whether you realize it or not).

This is I think a very good piece of advice to consider carefully. It is common with engineers I've worked with to see people cringe when emotions are brought up. Surely, the ideal state for an engineer is to be devoid of strong emotion while assessing information and writing code? I'm sure we'd all like to believe in the consistency of our own performance and our ability to remain rational despite varying circumstances.

The truth is that without the powerful emotional signals in your brain, you would be mentally crippled in practically all decision making tasks. There's a good deal of science on this. A single paper can be found here: [http://www.ncbi.nlm.nih.gov/pubmed/15134841](http://www.ncbi.nlm.nih.gov/pubmed/15134841)

If you can key in to the emotional state of team members, you may be able to navigate arguments by understanding/anticipating their angles and communicating in a way that is more likely to be heard/well-received.

</comment></comment><comment><USER21> I don't think there is a universal answer here on "Should managers code?" (Disclosure - I'm in an organization that does expect them to code)

One general observation that seems to be missed here though... If you do choose to have engineering managers code, you have to be careful about a few things:

\- That the managers don't confuse positional authority ("Do it because I'm the boss") with intellectual authority ("Do it because I'm right")

\- That the spans of control have to be smaller since the engineering manager has less time for care and feeding. In this sense, and idea that "Keeping managers hands on, and the organization flat" actually results in added hierarchy. If you have 8 employees per manager, you can have 64 engineers in 2 levels of hierarchy. If you have 4 employees per manager, you need 3 levels of hierarchy.

\- Is there room for superstar developers to emerge purely as individual contributors?

None of these is to say that one model is any better or worse than the other. I think it's very situational.

</comment><comment><USER22> Lots of gems here, in my opinion. This should be very helpful for anyone moving into management.

</comment><comment><USER23> A good in-depth list that clarifies the finer points of the job. These points could fit into the more broad container of "treat people with love and respect as if they were mature adults."

<comment><USER24> Respect, yes. Love? That's kind of silly. The trick to being professional is treating people who you do _not_ love, or sometimes even like, with respect.

</comment></comment><comment><USER25> loved this ..having done a little bit of tech lead and people management.

see also "managing humans..." by Michael Lopp ( aka Rands ) ..its basically the long form and much more entertaining version of the post :)

this is the only thing i didn't like:

> Dont't

> Personally fix bugs and ship features. You have to write

> code to remain an effective tiebreaker, but that's where

> your coding responsibilities end

....bug fixing js a fantastic way to stay in the code, and also show that most bug fixes don't require a re-architect.

</comment><comment><USER26> I agree with the vast majority, however I will focus on what I disagree with because what's interesting.

\- Your team looks to you for leadership. Have the courage to say what everyone knows to be true but isn't saying.

I don't look for management for leadership, I look at management to resolve conflicts that due to a hierarchy they are the only one given the authority to do so.

Leadership is found everywhere, and management doesn't have any more or less of this quality.

\- Most intellectual arguments have strong emotional undercurrents. You'll be dramatically more efficient once you learn to figure out what those are.

I'm not sure what you mean here. If you mean by strong emotional undercurrents, biases.. sure. That's extremely important to determining how rational a decision is.

I don't think it's particularly emotional though.

\- Once everyone is heard, summarize all points of view so clearly that people say "Thanks, I wish I'd thought of putting it that way." List any points of agreement with each view, and state what you've learned from everyone. Then make your decision.

I don't think this is because, "I wish I'd thought of putting it that way", and more to validate that you understand the issues and arguments. If everyone can agree that you've at least stated the situation properly, we have a foundation on which to make a decision.

-When disagreement gets personal or people don't accept well-reasoned decisions, it turns into conflict.

Is that a lesson? When things are conflicts, they turn into conflicts.

-If the conflict persists after you've gone to reasonable lengths to hear everyone out and fix problems, it's time for a difficult conversation.

What are you implying? Firing someone? What is this difficult conversation you're talking about?

.... There's a difficult conversation section after this... I'm getting the impression you mean, dealing with a conflict and telling them to suck it up. Okay.

\- Occasionally someone will push too far. When they do, you have to show a rough edge or you'll lose authority with your team.

I don't need shown a rough edge. You have authority because the company gives it, that's all that's required. Perhaps these are just the types of people I don't deal with, and thus don't have this experience.

...

By majority a lot of solid advice and thoughts. In there are some odd phrasings and issues. Perhaps many people take value in this stuff, it's quite possible as a person I don't feel the need for much of it because I'm not the type that requires it.

<comment><USER24> _it 's quite possible as a person I don't feel the need for much of it because I'm not the type that requires it._

By that you mean... you're not a manager of engineers?

<comment><USER26> No, I am.

</comment></comment></comment><comment><USER27> More people need to read Yishan Wongs articles about this. Mostly because I want more work places with his methods :(

[http://algeri-wong.com/yishan/engineering-management.html](http://algeri- wong.com/yishan/engineering-management.html)

</comment><comment> kuni-toko-tachi I approach managing software teams the way a coach approaches winning games. Top down leadership is not edicts from the top, it's about creating the conditions from the top using the resources available (time, team, etc) that lead to bottom up enpowerment and action.

IMO, any "manager" who asks the question "what are you working on today?" has no business being in the role. This type of clipboard task master nonsense is the hallmark of someone who doesn't have the emotional, intellectual, and leadership chops for the job. You job as the manager is to _know_ what people are working on, not to ask. A true manager doesn't ask "what are you working on?", they ask "how are you getting along?". Daily status reports and "what are you working on" create natural resentment and skepticism and rightfully so.</comment>


Ask HN: How do agencies manage employee downtime between projects? - <AUTHOR> Client projects come along at different times with different resourcing requirements. If your team comprises permanent employees, you're losing money on every day one of your team isn't working on a project. What are the best strategies to work around this? <comment><USER2> I think it's a combination of:

\- Build assumptions about down time into your pricing model \- Aim for big projects where adding or removing 1 developer to smooth your resourcing isn't a problem \- Always be taking on more projects than you can staff, and use freelancers to fill the gap \- Use the down time to to reskill your developers \- Have a homegrown product that gets worked on in down time</comment>


Node.js 0.4.4 Released - <AUTHOR> http://groups.google.com/group/nodejs/browse_thread/thread/2e54026210c43c07?hl=en

<comment><USER2> sudo add-apt-repository ppa:jerome-etienne/neoip && sudo apt-get update && sudo apt-get install nodejs <\- to install node.js 0.4.4 on ubuntu

<comment><USER3> Install 0.4.4 on OS X (assuming you use npm):

$ npm install nave

$ nave usemain 0.4.4

</comment></comment><comment><USER4> I can't keep up with these releases. I love it.</comment>


Ask HN: Good Posts That Got Lost? - <AUTHOR>

I'd imagine there are many good posts that have been submitted, but were submitted at slow times, or just didn't get the initial traction that's now needed to get on the frontpage.<p>So list them here. (Please be selective and include a link to the original submission.) <comment><USER2> I've been looking for a post that I saw on HN, but I haven't been able to find since. I'm pretty diligent at bookmarking, now.

If anybody remembers a django projector creator web app that let you choose from a ton of different apps, please let me know. It seemed very handy. Thanks!

</comment><comment><AUTHOR> My submissions:

8 points: The Viral Me (gq.com) <http://news.ycombinator.com/item?id=1976306>

6 points: The Problem with Microsoft (cnn.com) <http://news.ycombinator.com/item?id=2383169>

5 points: Wall Street Firm Uses Algorithms to Make Sports Betting Like Stock Trading (wired.com) <http://news.ycombinator.com/item?id=1935406>

3 points: The Billionaire [Yuri Milner] Who Friended the Web (forbes.com) <http://news.ycombinator.com/item?id=2311844>

2 points: Interview with Ron Conway [55 min video] (youtube.com) <http://news.ycombinator.com/item?id=2449350>

</comment><comment><USER3> Reiterating The Vision And Mentality of Microsoft<http://bit.ly/k6zBdv></comment>


Burn ban in effect in eight Washington [state] counties  - <AUTHOR> http://www.king5.com/news/local/Burn-ban-in-effect-in-4-counties-186952411.html

<comment><USER2> Posted Jan 15 2013, am I missing something?

</comment><comment><USER3> The news article is from January, 2013.</comment>


Ask HN: If HN hired you as a  growth hacker, what would you do? - <AUTHOR>

Goals:
1) Grow total users
2) Increase portion of users that visit at least once per week
(suggest other goals if you feel they would be more beneficial) <comment><USER2> Subscribe to <http://growth.mashape.com> (shameless plug)</comment>


Show HN: Your Spot in the Startup Caste System - <AUTHOR> https://www.ryanckulp.com/startup-caste-system/ <comment><AUTHOR> maybe this is harsh. idk. but am i the only one who senses caste system > ecosystem?</comment>


The Man Who Turned Night into Day - <AUTHOR> https://motherboard.vice.com/read/the-man-who-turned-night-into-day <comment><USER2> I hate gratuitous unit conversions.

I was taught metric in US schools 50 years ago. But I _still_ have to read articles about a "656-foot space mirror". No it wasn't. It was 200 meters. Morons.</comment>


On Tinder, Off Sex - <AUTHOR> http://www.nytimes.com/2015/10/18/fashion/on-tinder-off-sex.html <comment><USER2> > I found the profile of a man whose name is probably Matt and told him I'm > new to this Tinder thing and asked him how it works.

> "You match with a bunch of people, no one ever messages each other, and no > one ever has sex," he responded.

Sounds like the average male experience on any dating site or app.

<comment><USER3> When I was single that was exactly my experience; I'm probably just a very average-looking guy with no exceptional talents. But few weeks ago an article from Vanity Fair ([http://www.vanityfair.com/culture/2015/08/tinder-hook-up- cul...](http://www.vanityfair.com/culture/2015/08/tinder-hook-up-culture-end- of-dating)) was describing Tinder as an endless supply of sex for whoever cared to tap into it.

I tend to think that VF piece is completely fictional nonsense.

<comment><USER4> Men and women, on average, have dramatically different experiences in an open sexual marketplace: a few men are having quite a lot of sex, many women are having a fair amount of sex, and quite a few men are having very little sex. This is consistent with an underlying ugly darwinian dynamic: a single dominant male can produce thousands of children, while a single female can produce perhaps ten.

So for a few men and most women, the VF article is reasonably accurate.

</comment></comment></comment><comment><USER5> It used to be the case that hooking up with strangers was assumed to be the whole point of using Tinder. Nobody was really trying to find a life partner on there.

Nowadays, I feel like women are using it for easy validation, or to find a variety relationships (friends only, sugar daddys, traditional dating, finding someone to marry, etc). Which explains the "not looking for hookups / one night stands" that appear in a non-trivial percent of profiles now.

On the other hand, I think most male users are still there mostly looking for quick hookups.

Women are using Tinder for different reasons than they did a few years ago, and its increasing the signal to noise ratio for the hookup crowd.

</comment><comment><USER6> Maybe she just needs fewer friends who are so judgy.

Before I got married, I generally went 2 or 3 years between sexual partners. There wasn't any particular reason. I _wanted_ to have sex during that time, but I _didn 't_ want to put the necessary effort in to make such a thing happen. I just didn't care enough.

Much in the same way that I like watching baseball, would like to watch more baseball, but don't have baseball on television at home and don't care enough to get my ass down to the bar to watch any games, even during the playoffs.

It's okay to have sex. It's okay to not have sex.

That said, I've always found that any sort of dissatisfaction in my life has been due to me going to the same, old, wrong wells for where I thought I should find the things I wanted. If you keep doing the same thing while expecting different results... well, we know what that's about. My wife and I eventually got together after I stopped hanging out in bars so much and started making friends with other people who had more going on in their lives than hanging out in bars all the time.

</comment><comment><USER7> I think it's fairly common to go two years without having sex. It's just the public hype that makes us think everybody else is having sex all the time.

<comment><USER8> Just like how every grocery store checkout lane goes faster than yours! Its simple statistics. You are one; there are N more lanes. What is the chance that yours is the faster one? Small.

Recent discussion revolved around how your friends have more friends than you, on average. Similar argument (super-frienders have lots of friends; you are likely connected to one, and unlikely to be one).

So, actually, everybody else is likely having more sex than you. Its just statistics.

</comment></comment><comment><USER9> >I bought a bottle of Larceny bourbon the night before in preparation and had consumed half before he arrived.

Ali Rachel Pearl, you have a drinking problem.

No, seriously: I double-dog dare you, 'Hacker, reading this, to drink half a bottle of bourbon before you reply.

<comment><USER10> > I quit drinking because I have a problem with alcohol.

</comment></comment><comment><USER11> I enjoyed this. But, then, I am a woman who has been celibate for a long time, and not because that's how I "want" it to be. It just is.

I don't think the article has much to do with Tinder. I happen to like it, I am just not sure why it is on HN. I really don't think it has any particular relevance to Tinder. It is a nice piece about someone who is where they are and ridiculous suggestions by other people to try x, y or z and just FIX IT are simply not working. Sometimes that happens. And a dating app (or hook up app?) doesn't fix whatever is causing it, because "meeting people" is not the issue.

There are deeper issues here. She admits that.

</comment><comment><USER12> After reading this article I still haven't the faintest idea what I read. Tinder? Make your intentions clear, wrap it up in a few messages. Go get laid. End of story.

Sex is infinitely easier for women than it is men.

<comment><USER13> > Sex is infinitely easier for women than it is men.

I think that's very wrong if for no other reason taht if all you want is unqualified sex then you can get a prostitute of which there are many more females than males, so it should by that measure alone be easier for men.

<comment><USER14> That's illegal in most of the US. (Someone asked a cop if he knew the best places to pick up hookers. He said no, he only knew the best places to get busted for it.)

<comment><USER13> Fair enough, it's very different here.

</comment></comment></comment></comment><comment><USER15> The thing I wonder about her: She did not had sex for two years, and still wants to continue taking the pill, to be available anytime to men who are to stupid to ask (or to smell), if she has the 3 days when French games are topic.

<comment><USER6> There are other reasons to take the pill than just contraception. It works by giving you a shot of hormones that prevent you from having a normal fertility cycle. Not having the hassle of periods every month is a big motivator for some people.

<comment><USER7> Doesn't it also curb your desire for sex?

<comment><USER16> It depends on the pill. Different pills have different side effects on different women; I think most end up working with their doctor and trying several different kinds before they find one they like.</comment></comment></comment></comment>


An algorithm that can spot and kill Twitterbots before they start spamming - <AUTHOR> http://gigaom.com/2013/08/23/meet-the-algorithm-that-can-spot-and-kill-twitterbots-before-they-ever-start-spamming/

<comment><USER2> The problem with looking at registration to identify bots is that it's easy to counteract. Right now, bots use simple methods for generating names, and fill out the form instantly, because there's no incentive not to. Neither of those factors is difficult to change.

This article also commits the cardinal sin of telling us the false positive rate without also telling us the false negative rate, or the base rate. You can't tell much from "falsely flagged about 6 out of 10,000" alone.

<comment><USER3> I predict roughly a month till they've circumvented it, if not sooner. A lot of these bots are simple contraptions, and simulating the way real people sign up to services seems to boil down to putting in some timers and a new name generating algorithm.

<comment><USER2> Depends on what you're going by. I'd give a 90% confidence interval for the first spam bot being modified to circumvent it between 1 hour after the paper was presented, and 1 day after it hit any site on the level of HN.

But if we're talking about some higher degree of prevalence among spam bots, it will be a bit longer. I expect that there are a lot of spam bots out there that are running passively and haven't been touched by their creators in years.

</comment></comment></comment><comment><USER4> >falsely identifying accounts as fake only 0.0058 percent of the time (or about 6 out of 10,000)

That may sound impressive, but if there is 554,750,000 twitter users [1], 554750000 * (6/10000) is still 332,850 people who would have a false positive.

[1]: [http://www.statisticbrain.com/twitter- statistics/](http://www.statisticbrain.com/twitter-statistics/)

<comment><USER5> That is the bane of Machine Learning algorithms. They cannot be 100% accurate. That is why for destructive measures, you need to establish human oversight when using such algorithms.

<comment><USER6> However, humans are also machine learning algorithms, and may or may not have a better false positive rate than 0.0058%.

</comment></comment></comment><comment><USER7> I think Twitter's own system for doing this is a bit eager. I registered a new account the other day, followed the obligatory number of people they make you follow on signup, put in some basic profile info, then logged out to finish set up the next day. Logged in the next day.. account has been suspended for being suspicious. Ha!

</comment><comment><USER8> For full details, please read the paper published at USENIX 2013 [0]. Some points which I found interesting

\+ 6% of the fraudulent accounts purchased are resold (Table 2)

\+ India is the most popular location to register fraudulent accounts (Table 3)

\+ Hotmail is the most popular e-mail service used to confirm fraudulent Twitter accounts (Table 5)

\+ The algorithm to "retroactively predict" fraudulent account is not based on any popular machine learning technique. Most of it looks like regex matching patterns.

\+ The evaluation of the algorithm was done on 4,800 random sample Twitter accounts (200 each merchant) out of the available 121,027 accounts on which the longitudinal study was performed

[0] [https://www.usenix.org/system/files/conference/usenixsecurit...](https://www.usenix.org/system/files/conference/usenixsecurity13/sec13-paper_thomas.pdf)

</comment><comment><USER9> I feel you can get 80% of the way there just by banning the major cloud/dedicated server hosts (ie AWS, Rackspace, Linode)

<comment><USER10> Had you read the paper you'd know you're wrong. Most of the IPs are from botnets.

</comment></comment><comment><USER11> I have a particular tweet that must've gotten into a twitter bot database. It's old but it gets favorited on a regular basis by bots which are (I'm assuming) trying to look like real users.

Not really related to the article, but I've found it interesting. Anyone else see this behavior?

<comment><USER12> Same here. It was a tweet about my typo from "python" to "pythong"[0]. Every few weeks I would get a random favourite from a plausible sounding name. They're all bots

[0] [https://twitter.com/chewxy/status/333827059908497409](https://twitter.com/chewxy/status/333827059908497409)</comment></comment>


Ask HN: Shouldn't we prepare by making a new mesh network? - <AUTHOR> I wonder what would happen if the power or just internet went out for a long time, with no cell service.  Maybe I should just get CB and Ham radio.  But I picture a mesh network that uses GPS coordinates to know how nodes are connected and to route messages in the right direction.
I picture running a solar-powered Android device in my back yard.
Thoughts? <comment><USER2> Not just a hypothetical — during the December bush fires in Eastern Australia some towns were left without telecommunications when cell towers and power lines were burnt down. People ended up relying on AM radio for fire and road info, and HAMs set up temporary radio systems until things were restored.

e.g. [https://www.abc.net.au/news/2020-02-01/amateur-radio- skills-...](https://www.abc.net.au/news/2020-02-01/amateur-radio-skills-prove- useful-during-bushfires/11903200)

Atlassian founder Mike Cannon-Brookes helped get solar power set up for the cell towers that were left without power:

[https://www.sbs.com.au/news/the-feed/atlassian-co-founder- ro...](https://www.sbs.com.au/news/the-feed/atlassian-co-founder-rolls-out- new-solar-powered-systems-for-bushfire-victims)

So your best bet is to have a working battery-powered AM/FM radio and a solar panel to recharge the batteries.

</comment><comment><USER3> There are plenty of half-finished mesh projects that don't have critical mass. The biggest problem with any kind of disaster preparation is that it won't work when you need it unless you use it on a regular basis, so ideally you'd want a mesh that's better than regular ISPs. Nobody has been able to crack that.

<comment><AUTHOR> Thanks for your response.

The meshes that I'm aware of have all been designed to work in a very dense region, or to work mostly point-to-point for a small group of people.

I want something more like FidoNet, I think.

</comment></comment><comment><USER4> You should look at APRS[1] if you're interested in ham radio:. It's designed for message routing and location data.

[1] [http://www.aprs.org/](http://www.aprs.org/)

</comment><comment><USER5> What's your definition of a long time? And how big of a geographic area?

</comment><comment><USER6> Multiple satellite network projects are underway.</comment>


Please help me to choose....... - <AUTHOR>

I'm in the middle of choosing which is worth building for<comment>-----a tell a story/comment website which I got a partner to advertise or a facebook application which I'm doing by myself and have no idea yet what kind of app is it?Which do you think is worth rewarding?Any ideas.... </comment><comment><USER2> Neither... please give us more information, or at least develop your ideas more.

Or hmmmm, are you asking HN to do your homework assignment?

</comment><comment><USER3> It doesn't sound like you're passionate about either idea, so I'd say neither as well.</comment>


IBM Simulates 4.5 percent of the Human Brain, and All of the Cat Brain - <AUTHOR> http://www.scientificamerican.com/article.cfm?id=graphic-science-ibm-simulates-4-percent-human-brain-all-of-cat-brain

<comment><USER2> Until they can demonstrate that their simulation in fact acts like a cat, then no, they have not simulated a cat brain. They have run a simulated neural network approximately the size of a cat brain. A child can simulate a race car with a couple of cardboard boxes, that hardly means he's going to win the Daytona 500 with it.</comment>


Airbus patented a jet that could fly from London to New York in 1 hour - <AUTHOR> http://www.businessinsider.com.au/airbus-just-patented-a-jet-that-can-fly-from-london-to-new-york-in-1-hour-2015-7 <comment><USER2> The patent describes a vehicle that seems more of a concept description than a real invention. Clearly the patent office disagreed. The primary claim is:

1\. An air vehicle including a fuselage (F), a gothic delta wing (A) distributed on either side of the fuselage, and a system of motors (TB1, TB2, ST1, ST2, Mf) able to propel the air vehicle, wherein: the fuselage contains a tank (Rv) of hydrogen, wherein the hydrogen is liquid or in the state of slush, and one or more liquid oxygen tanks (RO1, RO2); the gothic delta wing (A) has a flat upper surface and a flat lower surface, and a wing root which starts roughly in an area where a forward part of the fuselage broadens; a fin (a1, a2) is attached to each outer end of the trailing edge of the delta wing using a cylindrical part the axis of which is parallel to a longitudinal axis of the fuselage, where each fin consists of two roughly identical trapezoid- shaped elements attached to the cylindrical part and located in the same plane, on either side of the cylindrical part, wherein each cylindrical part is able to rotate around its axis such that both trapezoid-shaped elements which are attached to the cylindrical part are positioned either in a plane parallel to the plane of the gothic delta wing, or in a plane perpendicular to the gothic delta wing; and the system of motors includes at least one turbojet (TB1, TB2) positioned in a forward portion of the fuselage and able to be retracted into the fuselage, at least one fixed-geometry ramjet (ST1, ST2), and one rocket motor (Mf) positioned within a rear part of the fuselage, wherein a door (D) located in the rear part of the fuselage is able to be opened or closed, respectively to expose the rocket motor to the exterior, or to isolate the rocket motor from the exterior.</comment>


The Intergalactic Winds That Built the Milky Way - <AUTHOR> https://www.theatlantic.com/science/archive/2017/07/milky-way-intergalactic-winds/535023/?single_page=true <comment><USER2> eh..

>"The atoms that built the solar system, the planets, and even our own bodies may have come from another galaxy perhaps as far away as one light-year—nearly 6 trillion miles."

Must be a typo.

<comment><USER3> Yeah.. the Milky Way alone is 100,000 light years across.

<comment><USER4> I saw that too. Probably should have been a "giga-light year" or something.

</comment></comment></comment><comment><USER5> Photons exciting particles are not winds. I hate these metaphors. Like the Solar Wind. It can misguide very smart people. I was sitting on a plane next to a former deputy director of NASA. After retiring he became a professor in Ann Arbor, where I received my aerospace engineering degree. I asked him to explain how the solar winds accelerate away from the sun. He proceeded to explain it was just like the throat of a rocket engine. I was so shocked I stopped talking to him. At a density of 3 "atoms" per cubic centimeter the solar winds are closer to vacuum than the very best vacuum achievable in a laboratory, by a factor of 30! There is no fluid dynamics that works when particles cannot interact with each other. Navier-Stokes works on real fluids, not on vacuum. So call me when The Atlantic has an article titled Intergalactic Currents That Built The Milky Way.

</comment><comment><USER6> Over the years I have seen astronomy become more like biology - diverse both in the kinds of objects it describes and their behavior.</comment>


Coronavirus Spread - How the Virus Won - sahin-boydas https://www.nytimes.com/interactive/2020/us/coronavirus-spread.html <comment><AUTHOR> This page has some great visuals. I do wish there was just a play button and it could run on its own without my need to scroll.</comment>


Show HN: Put "gifs.com/save" in front of any Vine link - <AUTHOR> http://gifs.com/gif/66YY8R <comment><USER2> Put /raw at the end of any Vine URL to download the mp4.

[https://vine.co/v/eF6MTh7TpqB/raw](https://vine.co/v/eF6MTh7TpqB/raw)

</comment><comment><USER3> Your gif converter is neat. But why do you re-encode the mp4? I understand that's necessary for the general case of taking in an arbitrary video, but since you're ingesting a pre-processed mp4 and producing an mp4, why the lossy conversion?

Original: [https://v.cdn.vine.co/r/videos/F91F3B3C4A1403892123400577024...](https://v.cdn.vine.co/r/videos/F91F3B3C4A1403892123400577024_53641f9d8d18.104.22.1685077F6-EF2F-42F8-9282-5CC446E4305D.mp4)

sha1: fe3f47da5fcd6b812aceabca1261d83140d83325

Converted: [https://j.gifs.com/66YY8R.mp4](https://j.gifs.com/66YY8R.mp4)

sha1: 40c143447b02b7c919e20794593be4c95918bd56

</comment><comment><USER4> This doesn't look like a GIF. I didn't count the colors, but that looks like full/true color to me.

I have no problem with that, but it says it's a GIF…?

<comment><USER5> Sadly the name has come to mean "moving sequence of frames" nowadays. WebM and MP4 provide this functionality using significantly less bandwidth.

This may be of interest: [https://www.google.com.au/search?q=pixel+art&tbs=itp:animate...](https://www.google.com.au/search?q=pixel+art&tbs=itp:animated,isz:l&tbm=isch) [http://revangale.tumblr.com/](http://revangale.tumblr.com/)

</comment></comment><comment><USER6> Why do I have to register with you to download a gif?

</comment><comment><AUTHOR> Putting "gifs.com/save/" in front of any Vine link (or Instagram!) converts it into a gif - you'll need an account.

Can also gif live streams (FB, Twitch, Youtube Live, Periscope), and any other video website by going to the home page.

</comment><comment><USER7> But half the point is audio?

<comment><USER8> Co-founder popping in! We make a .mp4 with sound!

You'll get the .gif automatically: [https://j.gifs.com/Q1AA6L.gif](https://j.gifs.com/Q1AA6L.gif) and you can change the extension for the .mp4: [https://j.gifs.com/Q1AA6L.mp4](https://j.gifs.com/Q1AA6L.mp4)

You can click on add effects to do a bunch of neat stuff as well.

</comment></comment><comment><USER9> Upvotes on this HN submission may be manipulated: [http://i.imgur.com/yIwWqLC.png](http://i.imgur.com/yIwWqLC.png)

</comment><comment><USER10> you guys are killin it!

<comment><USER5> This account only ever seems to have replied to three things, one >1000 days ago. Really weird.

(I don't think HN completely deletes comments like this, so I don't think there's some huge pile of extra stuff I can't see, unlike with reddit)</comment></comment>


TWO PLANETS DISCOVERED: ONE BY GRAVITY, ONE BY ACCIDENT - <AUTHOR> http://www.syfy.com/syfywire/two-planets-discovered-one-by-gravity-one-by-accident-part-2 <comment><USER2> THAT IS A REALLY GREAT LINK, THANK YOU FOR POSTING IT.</comment>