skysight-inc/HackerNews huggingface dataset:
Especially when at least right now one of the things being documented in the example as "first name of the user" is the last_name field!

last_name | character varying(50) | ... | required first name of user

That shows two documentation antipatterns, actually. Documentation that conflicts with the code, and documentation so generic that it gets carelessly filled in with copy-paste.
Best Cloud Computing Training in Kochi – STEPS
Steps offers Cloud Computing Training in Kochi. Freshers looking for a carrier in the areas of System Administrators, Cloud solution providers, Linux RHCE certified professionals, Web Hosting experts, Network Administrators etc.. should definitely learn Cloud Administration.

Cloud computing is the use of hardware and software resources that are delivered as a service typically over the Internet. It entrusts remote services with user's data, software and computation. OpenStack technology is now widely used in cloud computing.

STEPS training immerses students in the OpenStack environment so they can evaluate it for their use cases as well as improve performance of an existing installation. Students should walk away from the training course with the experience and knowledge to install, run, and operate OpenStack clouds.

STEPS FEATURES :-
• Kerala's first industry-associated IT training Center.
• All training programs are run at real-time IT Park environment.
• Dedicated placement support.
• Experienced IT professionals as trainers / guides.
• Internship opportunity for selected candidates.
• Opportunity to participate in seminars and workshops.
• Affordable fees and installment payment options.
• Accommodation facility for outstation candidates and Cafeteria facility.

For more information : Contact
+91-484-4082111
+91-9895682000
email: info@stepskochi.com
website: www.stepskochi.com

Walk in Address :
Steps,
Floor I, Spectrum IT Park,
Mahakavi G Road,
Kochi, Ernakulam South, Kerala - 682011
"slower" and "waterfall" are orthogonal.

Waterfall is a theoretical idea that sounds nice, but fails miserably in practice - the key problem being the assumption that if you are diligent enough at collecting the requirements and constraints, you can resolve them at the design and implementation stage. The reality is that there is never enough time/information/budget/knowledge/resources to map the requirements and constraints, and furthermore, those change all the time so even in the unlikely case that you have managed to map the territory, by the time you deliver the solution, the territory has changed.

One can argue theoretically for waterfall as much as they want (and in fact some people do), but the collective experience with waterfall is so abysmal that whoever wants to waterfall needs to argue against the failures, rather than for the method.
Sounds like another way of saying the same thing to me, no?

No one says "we don't need someone to setup/maintain our servers".

DevOps is, in every interpretation I've seen, about who/how it's done.
>What do you mean by "give the same courtesy" to those others? #2 was not about giving courtesy to anyone.

The courtesy I refer to is accepting that a cop is allowed to behave unprofessionaly because he was "angered by someone before". It's not an excuse for ANY professional to take it out on a customer (or a citizen in the case of cop or state employee) whether they had "a bad day" or a "bad previous exchange" or not.

>The fact is that people are more prone to make mistakes when they are angry, and the more angry they are, the more likely are the mistakes. This is true of almost all people, professional or not.

And another fact is that people who "are angry" while serving people (whether customers or citizens) AND let it show, should either be scolded by their superiors, fined or fired.

Then, they'll know next time they want to "express their anger", to think twice about it. Instead of, you know, bashing some guy, thretening and beating a woman, or killing some black kid.

>The point of #2 is that you don't know what the initial anger level is from recent prior stops, and so you need to be very careful here for your protection.

That's true only in places were citizens expect to be treated like shit and suffer consequences from "angry cops". In most of Western and Nothern Europe, a cop is supposed to behave professionally at all times, and nobody gives a fuck about their previous (or even current) "anger level".

Even if you tell them "fuck you" and push them, they should still behave professionally. Getting "revenge" and "anger mode on" is not professional. And "hey, whatchagonnado, we're all humans" is no excuse from a professional carrying a gun and supposed to enforce the law.

That people are afraid to antagonise cops and feel that can legitimately behave unprofessionally if "antagonized" and depending on their "anger level", is what gives cops card blanche to do the shit they do in the US (or Latin America, Africa, etc).
Ion thrusters still require expendable fuel as well as an electrical power supply, if you can cut out the need for expendable fuel that would mean allot for space travel especially to the outer solar system and beyond.
Topsoil. Fresh water. CO2 sinks. Liquid hydrocarbon fuels. Phosphorus. Copper.
You don't need to be so condescending; I understand js crypto is typically a fools game.

Your example does fail for one of my examples; the case of a poorly secured log from the passive MITM of all connections at a company / university.

If the MITM was simply passive, without encryption the password (possibly valid for other things as well) has been leaked, but with the above encryption scheme it will not have been.

Anyways, the main client to this mechanism is not the browser, but the steam client which very well could verify the hash of the javascript files provided to it or their signature since valve has significantly tighter control over it.

I'm not saying that this scheme is a good idea or significantly more secure, I'm just trying to explain what could justify it.
500-miles email is a fantastic read - thoroughly recommended.
>Actually, yes. I expect them to be human and capable of running out of patience as much as the next person.

That's just sad.

A professional supposedly trained to handle stressful situations, carrying lethal force, and paid by the citizenry to "serve and protect" is the LAST PERSON that should be excused for "running out of patience as much as the next person".

And in better societies, they aren't.
Thank you! I had read this in the past, and it was one of two major influences on my thinking about scientific progress, but I couldn't remember exactly what it was I had read.

Asimov naturally describes it much better than I could.
Why Ubuntu? If you're not writing GUIs, Ubuntu is just a less-stable Debian.
I remain puzzled that the Statute of Limitations for many civil offenses such as medical malpractice is four years, while offenses such as workplace discrimination for reasons of age or disability is just five months.

The Equal Opportunity Commission and US Department of Justice are quite vigorous at pressing Americans with Disabilities Act complaints. They just about always win.

But despite that I commonly have standing to file an ADA complaint, because my most-pressing concern when I am denied work over my mental illness is that I find some other job, I always let the timeout expire.

I intend to look into who backed the five month statute - who introduced it to the legislation, who supported it in committee, and who contributed their campaign funding.
Looks like 's' is also considered valid in this example
I'm talking about internal libraries of a company, where there is no proven library with a stable interface as it's continuously evolving - similar to a young library in the OSS world that has no reasonable substitute. It might be something like a new parameter to a function, or an additional method call you need to make in a given version.
They actually have a wall of fame:
http://stackexchange.com/about/security
Do you just use pinning straight out the gate, or do you check backports (or whatever equivalent Ubuntu has) first?
More info and context can be found on his related tweet: https://twitter.com/zedshaw/status/625163642695086080

@zedshaw
"[..] happens every time someone challenges FLOSS design decisions. It's a weird reaction, but part of insecurity about being wrong."

@infixum
"Which project is it, what is the offending part, and who is Larry the sentient fly?"
-> @zedshaw
"All of them"
The design of the version control system is not the problem here, is it?
For my notes use private GISTS or Evernote.
For projects use BitBucket or GitHub.
For syncing program configurations use my own written script that creates symlink to hard drive from Google Drive folder.
Chrome does a decent job syncing all web related stuff for me.

Not perfect but it is ok.
Applications that are written specifically in order to be run on the servers of a given company instead of being written to be general purpose have vastly different tradeoffs involved when it comes to choosing dependencies.
The riemann hypothesis.
If your network is to be used by technically more savvy people you could use this approach:

On personA site there would be a field which accepts a 'reshare' code when the user is logged in.

Clicking on the reshare button on personB site would (by default) display a reshare code. This code would contain information such as personB URL, id of the post etc.

Pasting the reshare code into personA site would result in a (backend) communication between personA and personB sites to sort stuff out.

When using reshare function for the first time on personB site, the site would propose to enter the URL of 'your own' server in order to transform the reshare button functionality.

Once personB site knows the url of personA, it would transform the reshare button so it actually constructs an URL in the means of personA/reshare/from/personB/reshare-code.

Since the user is presumably logged in (with cookie/local-storage token) to personA, this would redirect him to personA, the backend of personA would eat the reshare-code and could offer a dialog asking for confirmation of a reshare. Once validated it could ping personB site that the resharing was complete.
Great point. How much do you want to bet most of these are PHP, where it takes special discipline not to make your top directory web-accessible?
Ask HN: Are banks allowed to use Google Analytics or any 3rd party analytics
Recently someone found that ICICI Bank (One of the biggest bank in India) is using google analytics on pages which are secured by login: http://blog.chaitanyagupta.com/2015/07/icici-bank-gives-unfettered-access-to.html

So it is not this against some security norms? And should not it have been disqualified while security audits?

Are banks allowed to use Google Analytics or any 3rd party analytics, on pages which are secured by login?
> Also why it looks like RHEL family is completely out of fashion? Is it considered too "enterprisy"?

Well, look at the website: https://www.redhat.com/en/technologies/linux-platforms/enter.... That won't appeal to anyone outside of an enterprise chair.
+1 Syncthing is super handy for my core files (~10GB) synchronized between all my devices.

It more convenient than cloud storage in that I don't have to worry about sensitive information being stored on remote servers, but obviously is restricted by the storage capacity of each device.
Not going to share my details on github, but I registered as a bone marrow donor here in Australia a few years back. Yet to hear anything of it, however if there's ever a match I will be very happy to potentially save someone's life. Am also a semi regular blood donor; every drop helps.

Seriously hope you find a match mehrzad!
My read of it (as someone in the Debian/Ubuntu world) is that the CentOS split meant new sysadmins and users tended more towards Ubuntu.

RHEL/CentOS is still around, but you don't hear about it too often.
Or even when the gain/cost ratio for attacking YOUR site is greater than the one for other sites. (You don't have to outrun the bear, you have to outrun the other people.)
Turd cookie = Floss (Free, Libre, Open Source Software) project. You're not supposed to complain about anything free and so you don't. Meanwhile there are many turd cookies that could be edible if one would feel more free to complain and Turd-cookie bakers would draw lessons from the complaining, instead of moaning about how "one should not be complaining about free cookies".

The Turd-cookie baker could be having a full restaurant if he was not insulted so easily and willing to change his recipe.

Still, one should be free to bake Turd-cookies if one wants to. But I agree one should not be whining when someone spits it out and vents a bit of rage after having eaten a Turd-cookie. Also, if the praise from a sentient fly (your audience of 1 happy user) feels good to you, by all means, bask in it.
Slack as a playground for new products
It wasn't the case here, but Oracle effectively treats empty string and null as the same value.
Debian is fairly stable, has been around for ages but is still active, is completely free and community-driven, and most people are familiar with the package management and config file structure on Debian (or Debian derivatives).

On top of that, it was already a pretty popular distribution. The more people use it, the more documentation becomes available, and the more new people will pick it up.
Maybe how tech companies behave. Some parts reminded me about Google. How they'll not listen to customers and instead focus on a big fly (management? someone else?) and abandon products. Google+ may be an example!

Or broadly, just companies listening to flies (advertisers etc) and service us turd.

The whole respect thing also reminds of how internet communities work. This is written close to reddit fiasco, so maybe that! Reddit is listening to advertisers. Or maybe they are listening to bad users who say shitty things but when you discuss something with them, they hide behind all this.

I think I am as confused as anyone here. Maybe zed can explain better!
I really cannot see Qualcomm using 3rd party IP for cellular radio. It's their core business, and they are the leader in LTE modems.
Some of the other commenters suggest adding git-dir and work-tree to the git commands, but there's a better solution: use the --separate-git-dir option when cloning the repository.

For example:

git clone --separate-git-dir=<repo dir> <remote url> <working copy>

where <repo dir> is outside of any directory served by the web server and <working copy> is the htdocs root.

This option makes <working copy>/.git a file whose content is:

gitdir: <repo dir>

The advantage is that all git commands work as usual, without the need to set git-dir and work-tree, and that there's nothing special to add to the web server configuration.
"We have designed Google to be scalable in the near term to a goal of 100 million web pages. We have just received disk and machines to handle roughly that amount."

http://infolab.stanford.edu/~backrub/google.html#a
> Why Ubuntu?

PPAs.
Indexes on GUIDs – Not Only Fragmentation
Imagine you find a typo or bug on some site that you use daily and it really annoys you. How awesome would it be able to just `git clone http://www.microsoft.com/`, fix the issue and then either host your own version of the site or submit a pull-request. Seems like it's already possible on 600 websites :) (well they probably didn't run `git update-server-info` ).
Among all the definitions I found, that was the only common theme.

I've been discussing this with others in the "DevOps" space and in recruiting terms a "DevOps engineer" seems to mostly mean an "Ops engineer". True Devops (in the sense of developers who also care about and perform all of their own operations) is a culture, not a job role and one that seems quite rare in the wild.
Are Night Shifts Killing Me?
Part of the problem is that there's a dozen cookie shops, and overzealous FLOSS people will glibly recommend one simply on the basis that they've heard of it, rather than admit that they don't know, or that there isn't a good FLOSS cookie shop in town. Then when you complain that every cookie shop sells turds of some flavour or another, they'll say you should be grateful for all the choices you have.

btw I'm a somewhat zealous FLOSS person myself, which is why I've encountered this problem.
Poltergeist Room problem.

Back in the CRT monitor days, I was working for a computer repair company. There was this particular client (in the defence industry) who had monitors that started flickering and having a greenish hue at its sides after a week.

Every week, we had to go to his office to swap the monitors and bring the faulty ones back to recalibrate (it was costly, but hey, its a Defence contract and those pay big bucks)

It didn't matter whether the monitor was brand new or recalibrate ones, it just started flickering and had greenish hue after a week, and it only happened in that room. Other monitors outside that room and in other levels were fine, thus the room was dubbed the Poltergeist Room (as they blamed spirits for messing with it).

One day after the monitor exchange, I returned to the office and my supervisor queried me as to why I didn't reply to his multiple pages (we were using pagers back then). I realised I was in the Poltergeist Room when the pages were sent and therefore did not receive any page. It then dawned on me, "Could it be some electro magnetic interference from another level directly above or below that was playing havoc".

I went back to the client the next day to tell him what I thought and he (being electronics trained) realised that above him was a defence lab carrying out EMF experiments, which could have caused the monitor problems. He got to work to build a simple Faraday cage to prevent EMF from getting to the monitor. Since then, the monitors worked perfectly.
> much faster then my current gig's much smaller Gradle based Java 8 project

> I call BS on that [...] Java compiles at least ten times faster

Then it must be Gradle that's slow, probably the Groovy in it.
Versioning of an Object in Hibernate
Do 33% of high school grads never read another book for the rest of their lives?
And so is any part of the full word (s, st, ste, stea, steam)
I disagree

It may be possible that gitdir is still accessible through a misconfiguration or security issue (and you're giving them exactly where to look)

Production servers have no business having the .git directory anywhere.
Your example looks similar to what ReSharper does: http://blog.jetbrains.com/dotnet/2009/12/11/resharper-50-pre...
Oh. Obviously for internal libraries you should do whatever you like, including bundling. I thought you were talking about open source libraries.
Everything is almost always a trade off.
Most software on Windows only erases files that it installed, and leaves the directory in place if there are any other files remaining. Sure it may be annoying to clean up if you mind orphan stuff, but it's way better than the alternative.
Welcome to the club! I've tried thinking about this for many many years...

You best bet is to run your workstation in a VM and put your data files on a mount to the underlying file system and then run Unison file sync across the two file sets (the VM image(s) and the files).

Putting all your files inside the VM will work as well - but copy times will be longer because the whole thing will be bigger.

With your bandwidth limitations anything magical is out of the question; live file sync is an attractive idea but it's too slow for large file sets - Dropbox, Lsyncd, Git Annex - all suffer when dealing with a lot of files across low bandwidth. Unison, on the other hand, works well with a USB key as the transport mechanism - and only runs when you ask it to - so it doesn't keep transferring files as you change them (which seems like a good idea - but is really a PITA when you're not actually sharing files with other people).

Going a bit fantastical here - but IMHO the gold standard is block level sync with DRDB - which will keep two or more systems identical at all times; but it's too heavyweight for your purposes.

More practically, just install the same software on both your workstations and sync your data and dot files (e.g. .home) with Unison.

This is what I have been doing for over 5 years - and it works really well.
> Safer languages is a good place to start.

Could (and should) a safer language pre-empt that you should first check strlen(str) != 0 before doing strcmp? I know of no language which does this.

> Input validation can be made to be machine-verified

Likewise, can you elaborate on this? How does the machine know what type of input this is? If input is tagged by the developer, what's to stop the developer from forgetting to tag the input correctly?
Double organic app downloads
There was an article recently on the BBC that shareholders there are only holding shares for an average of 6 months. Their motivations then become extremely short term. The Bank of England's chief economist has warned that this is slowing growth.

http://www.bbc.com/news/business-33660426
I see this being useful in court when project A accuses project B in stealing major portion of their code and relabeling it as created by B + changing the license to incompatible.
That's a very important point. As an unexperienced developer, you can learn C in a few weeks. Then spend another few weeks on learning how to write clean, maintainable code. I wouldn't want to work with people who don't even want to do that. You already named the most appropriate tools (Assembler, C, C++, and Forth), and learning at least one of them is very easy.

Pick the right tool for the right job. That's what I read all the time. The current approach of 'the industry' is porting JavaScript to just about everything, which is insane. But, you know, learning JavaScript is simple and that's what matters! Well, JavaScript isn't that simple. But writing insane, ugly code and making it run by accident is easier in JavaScript, for example, than in one of the more complex languages.

I've seen things. Things I couldn't imagine in many other (static) languages, because it wouldn't even compile. Things that let me ask 'how did you even get this job?' over and over again.
My daughter is no 8 months old, and is sleeping better than average. I still lose out on almost all of my project time which used to be weekend mornings before my wife woke up.

My first surprise came during paternity leave: I heard new-borns sleep about 20 hours a day. I should have plenty of time to work on projects, and work from home some. None of that worked out at all.
Some exist already:

http://www.harukizaemon.com/simian/
http://dickgrune.com/Programs/similarity_tester/
https://github.com/silviocesare/Clonewise
I believe that documenting anything with comments (be it code or a PostgreSQL database) should only be done for more complex pieces of code or to elaborate on something that could be misinterpreted.

Misguiding or incorrect comments caused by "Comment Rot" will actually cause more harm than having no comments at all. In fact, your code should be self explanatory (if you do it correctly) in terms of what it is doing. Adding extra comments to elaborate on "why" something is being done may be more useful - i.e. When the semantics of the code are not as easily deduced from the syntax.

For more information on "Comment Rot": http://blogs.msdn.com/b/ericlippert/archive/2004/05/04/12589...

However, I do find documenting database tables interesting and will consider doing it in the future under very specific circumstances. Thanks for sharing!
We don't have beta ready, but we do have wireframes. Should we post them instead in "If you have an online demo, what's the url? (Please don't password protect it; just use an obscure url.)" question?