The Web Is Unsustainable - <AUTHOR> http://www.shanehudson.net/2012/07/29/the-web-is-unsustainable/

<comment><USER2> _Perhaps we need a way to navigate to websites without requiring the use of a unique identifier such as domain names._

No. I don't care if the identifier is an English word or a SHA512 hash; you need identifier for _linking_. Linking is what makes the Web what it is, not the fact that you can write a company's name and append .com to go to its website.

 _On the other hand, ipv6 (and being a number based system, future versions are possible) will allow us to carry on without domain names, so if you don't mind users needing to use an ip address then there is no problem._

I'm sorry no, that doesn't really work. What happens when you move from EC2 to your own dedicated server, or vice-versa? You lose all your links?

<comment><USER3> Not defending him but ipv6 supports mobile IP allowing you to move but retain your ip by having it rerouted to your new one.

<comment><USER4> For how long? Does the old IP just route to the new one forever?

<comment><USER3> You got to set it up, but there is no reason it can't last forever since there are enough addresses. And when they get rerouted they can advertise that the change is permanent and have people use the new one.

</comment></comment></comment></comment><comment><USER5> Domains operate in a manner to real estate. We've been through the "wild west" land grab of domains at this point and now we're working toward the next stage, whatever that ends up being. Remember that domain names are transferable so the reality is that, of all of the millions of registered domains, only those which are profiting their creators are truly taken without much chance of being reclaimed (probably 1% or fewer).

This is a problem that will sort itself out, there's no cause for concern.

<comment><USER6> I agree with you.. but, then shouldn't we be asking ICANN to raise the registration fees?

Because right now, registration fees are so low that squatters can register thousands of names, and then demand a few thousand dollars if you won't one of those.

Raising it to (say) $25 keeps names affordable for everyone, and would raise the cost to squatters substantially... which should make more names available.

<comment><USER7> Really dislike any suggestion like this.

It won't help much, it'll just price the low end out of the market. Given that a good domain can sell for thousands, you'd have to raise the fees a lot to deter people chasing that one hit.

Meanwhile, you damage lots of small people who have domains for personal things that never were intended to make money. The Internet was meant to be an open place with low barriers of participation.

<comment><USER8> ~$25 probably wouldn't stop the issue, but something ~$100 might. "GOOD" domains will always sell for well over that, regardless of a price floor. Owning a good domain name is like owning any other valuable good. Pricing around $100 helps with the long-tail of domain names. Most domains aren't worth sitting on for hundreds of dollars (in the majority of cases, where there's not an obvious quick flip).

I'd even be for a tiered pricing structure. Domains under ~7 characters could be $100+, domains over 15 characters could be significantly cheaper.

<comment><USER7> > but something ~$100 might

What about the cost to innocent parties? Really dislike this!

> Domains under ~7 characters could be $100+, domains over 15 characters could > be significantly cheaper.

Now that could be good - Charge inversely by the character.

Also has the side effect of discouraging URL shortening services :-)

</comment></comment></comment></comment></comment><comment><USER9> The diagnostic is correct, domain names are not sustainable. The drug prescribed is not.

The solution I thing will come up is again hashes. Now we have hashes for file handling (in git), hashes for users in Google+, hashes for money (bitcoin). I think we are going towards a world full of hashes (pun half-intended).

If we had a single hash used for identifiying a piece of content (eg a given blog post, the home for this blog, a comment to this blog post), then a web site would just be a hash table, you would ask for hash 3ed44a2d38 and get the content. That may include other hashes. Then search engines would just be weighted keyword->hash tables. Content would be passed along servers and proxies in a p2p way. Because hash is unique to a content, you won't care if the bits are served by X or Y, as long as the hash checks.

Then no need for domain names anymore: Wanna go to BBC website? Search for BBC and pray your search engine has it as #1. Wanna bookmark the home of BBC website or an article? Store the hash.

Issues:

\- Over reliance on search engine and links. Answer: we do have this issue already.

\- Authentication of content: is this really BBC website? This can be fixed similarly to current certification system, and you would certify your main home's hash.

\- BS! That's no real hash! What do I mean? Yes, right, the main issue is that content is changing, so a real hash would be changing too. I said google user id is a hash, that's wrong (or is it?), it looks like one though. I have been fiddling too much with git recently. For me the best of the world is when files, dirs, actions, everything is unique, unmodifiable, and identified per its hash. Any modification of the state of the world generates new content, relations, and their hashes. Infinite history for free. But how to apply this to the Web? Can we? Nearing one o'clock in the morning here: I may clarify tomorrow.

<comment><USER10> I suggested two ideas I had, not saying by any means they are correct... just wanted to start a discussion. And it worked! Some very great points in this post and all other comments.

</comment></comment><comment><USER11> _Useful and readable domain names are running out._

This is false as of this moment. Startups in the current batch have been able to find decent names that weren't taken. Maybe there will start to be a problem in the future, but 26^n is big.

<comment><USER12> 26^n is big (for n > 7) but also irrelevant. "Useful and readable" is a tiny fraction of that space.

Edited to add:

While there's obviously some correlation between small n and the usefulness and reasonableness of the name, my point was not primarily related to length - the parenthetical was added as an afterthought. I was simply pointing out that the overwhelming majority of sequences of letters are not going to be easy to use or remember.

<comment><USER11> Dropbox was getdropbox.com for a long time, which is 10 letters.

Prepending "get" (or sticking "app" on the end) always makes me kind of queasy, but it worked well enough for Dropbox. I kind of like Exec's approach of using iamexec.com.

<comment><USER13> Square, SquareUp.com, owns Square.com but still uses the former domain.

</comment></comment></comment></comment><comment><USER14> I think this is a case where someone is trying to come up with technical solutions for a perception problem. Jumping back to the Harry's Chips example, why do consumers have such negative views of URLs like this:

harrys-chips-of-york.com

harrys.yorkbusinesses.com

harrys.chipshops.com

harryschips.info

DNS (as it stands) is a perfect system, but {short name/no dashes or numbers}.com is unsustainable. As soon as people start looking at subdomains/atypical tlds as being just as valuable, the problem will right itself.

<comment><USER15> Short name no dashes dot com is not unsustainable; it's completely over with for those without funding. There's nothing wrong with .info and the like (I use a .info for my personal domain) except perception. My hope is that the new GTLD rules will make the domain extension less important, and if so it will make squatting values go down.

</comment></comment><comment><USER16> Kind of off-topic, I'm slightly reminded of this: <http://xkcd.com/1007/>

</comment><comment><USER17> People have been making claims of this type ("the Web/Internet is unsustainable") for at least the past twenty years, and I've been reading articles to this effect for the past sixteen years. Every single one of them was wrong.

With such a bold claim, and such an awful track record, why should I believe that _this_ time will be different? You can only cry "wolf!" so many times before the only rational thing I can do is ignore you.

Also, why is it a requirement that I be able to get a short domain for cheap? The fact that some names are cheap and others are not is no more surprising than the fact that some real estate locations are worth more than others, or that some people have higher incomes than others. All of those are the inevitable consequence of free choices made to make every individual chooser's life better (to the best of their knowledge and ability), which is a great thing!

</comment><comment><USER7> I don't like any solution that means the user personally has to deal with IPs. The abstraction away from IP's to names is a brilliant feature with all kinds of benefits, and one other areas should be looking at.

I even recently proposed a quick hack for the phone system: <http://jarofgreen.co.uk/2012/07/phone-numbers-in-dns/> :-)

Also just wanted to point out that your solution 1 needs to incorporate the use case that people want to look at local services away from their local areas at times: to take just one example, thousands of theatre people are about to descend on Edinburgh, UK, for the Festival from all over the world, and I'm sure they have checked out the local area online first.

Don't know what the solution is, but then I'm not really convinced there is a problem with this ...

</comment><comment><USER18> _That is one option, allowing people to own the domain names but also allow many websites to somehow have the same name (with the unique identifier being IP or similar)._

I've always been frustrated that the WWW URI doesn't support name-based virtual hosts in the authority section. While a name-based virtual host is usually specified as a domain name, it doesn't need to be. Many web sites share a single IP, so it should be possible to access them without requiring DNS resolution (examples showing name-based virtual host in brackets as one possible approach):

        http://[www.example.com]192.0.2.1/
        http://[www.example.org]192.0.2.1/
        http://[www.example.net]192.0.2.1/
        http://[foo]192.0.2.1/

Or requiring DNS resolution:

        http://[www.example.org]www.example.com/
        http://[foo]www.example.com/

Note that this doesn't serve the same purpose as a subdomain, because it allows one to explicitly specify the name-based virtual host to serve from a domain or IP address, instead of having a single part serve two very different purposes.

Of course there are issues. For example, you could create URIs like:

        http://[www.google.com]192.0.2.1/

And SSL poses a challenge:

        https://[www.example.org]www.example.com/
        https://[foo]www.example.com/
        https://[www.example.com]192.0.2.1/

But from a technical perspective, this opens up a lot of possibilities. Currently, the only way to achieve this is to write your own headers when making a request, so it's already possible, just not supported in mainstream clients.

</comment><comment><USER19> I think you're looking for a problem where there is none. The only case for a "problem in the distribution of domains" would be your "local shops that can't grab their names".

The DNS is a very well thought system, I think it's one of my favorite protocols. ICANN (or any sub-agancy of it) can just decide to take some domains to make the names more "granular". A first approach I thought of in just a few seconds is, with the US as an example, taking over "state code".(com|org|net|...) and only delegate those to small business operating within one state. You get a lot of "domains" for free.

</comment><comment><USER20> ICANN are selling TLDs like .pepsi and .sony - if we really run out can't we just open that up to the general public at a low cost, the same way anyone can get a .com? Then all the chip shops in the world can use harrys.chips, johns.chips, etc. Other companies could register their own TLDs as well, with the added advantage the URL is a single word which is the name of the company. The _only_ reason this is not already possible for all but the biggest companies is ICANN charges such a high fee for a TLD - IIRC it's about $180k, with no guarantee you actually get it.

<comment> T-hawk Well, that just shifts the problem of name resolution into the TLD space. Trying to arbitrate .apple between Apple Computer and Apple Records is no different than trying to arbitrate apple.com between them.

More generally, the problem is that any single namespace containing approximately the entirety of the world's electronic communication will result in name collisions. This already occurs in natural language absent of electronic communications. Monster Park in San Francisco is sponsored by Monster Cable, except that it's commonly thought to be the careers site Monster, or even Monster Energy Drink.

This collision problem will happen no matter what the medium is. .com names will collide, TLDs will collide, top search results will collide, keywords (like AOL's) will collide, all because _natural language_ collides. The best we can do is include an arbitration system to resolve obvious offenses when possible while keeping out the speculators and spammers, which approximately is what ICANN is doing with the new TLDs.

<comment><USER15> You're completely right, but most of today's problems are caused by artificial scarcity leading to speculation.

</comment></comment></comment><comment><USER21> I feel like domain names are difficult to find not because they are really being used up, but rather because there is no system governing them. What if we treated domains like trademarks, so if you don't use it, or stop using it, someone else who is using it can take the domain from you?

The thing is, this is also a problem for company names, and product names, and... well just about everything involving names. Almost everything is running out of names. We need to do a better job of recycling old names if any of this is going to be sustainable across any market.

<comment><USER2> Define "use".

</comment></comment><comment><USER22> This is one of those articles I wish I could downvote.

Soon, companies will be able to compete with gTLD, some have registered hundreds and will push them as the part of the internet for different topics. Google's ".lol" is probably the most obvious example, finally a place for all the funny sites.

After 27 years, people will start to get used to the fact that the internet is more than just ".com" (and maybe one's country's ccTLD).

<comment><USER23> I had to scroll down awfully far in the comments before I found a sane comment.

There are reasonable complaints about the process of producing these new tlds right now, but anyone who thinks there is any solution to this problem other than new tlds has not actually thought about the problem or doesn't understand how the domain name system works.

> Perhaps we need a way to navigate to websites without requiring the use of a > unique identifier such as domain names

Or we add a .suffix to make it unique, like how the domain name system _already works_ FFS.

</comment></comment><comment><USER24> Content-centric networking aims to solve some of these problems: <http://en.wikipedia.org/wiki/Content-centric_networking>

"Content-centric networking (also content-based networking, data-oriented networking or named data networking) is an alternative approach to the architecture of computer networks. Its founding principle is that a communication network should allow a user to focus on the data he or she needs, rather than having to reference a specific, physical location where that data is to be retrieved from. This stems from the fact that the vast majority of current Internet usage (a "high 90% level of traffic") consists of data being disseminated from a source to a number of users.

The contemporary Internet architecture revolves around a host-based conversation model, created in the 1970s to allow geographically distributed users to use a few big, immobile computers. The content-centric networking seeks to adapt the network architecture to current network usage patterns."

</comment><comment><USER25> It is funny that <http://www.shanehudson.com/> is the AdvoCare site, same as <http://www.advocare.com/> registered on: 22-Jul-95(1), and shanehudson.com was registered on 10-Mar-2001(2). His site, shanehudson.net, has been registered since 26 Oct 2007 17:12:02(3), yet the following domain names are still available shanehudson.org, shanehudson.info, shanehudson.biz, shanehudson.us, etc.

Maybe the Web will become unsustainable when those domain names are registered.

(1) <http://www.networksolutions.com/whois-search/advocare.com>

(2) <http://www.networksolutions.com/whois-search/shanehudson.com>

(3) <http://www.networksolutions.com/whois-search/shanehudson.net>

</comment><comment><USER26> This sounds like the argument google etc. are using for making everything "social". You don't type in a domain name for "ham's fish and chips", you just search for it, and google knows which community you're part of and directs you to the correct one.

Obviously everyone here will hate that idea, but "normal" users may welcome it.

<comment><USER27> How would this scheme support hyperlinks from one page to another? You wouldn't want the page that your hyperlink points to to change based on the changing whims of some search engine.

<comment><USER26> Hyperlinks could work as they currently do, pointing to the (hidden, non- human-readable) real URL - but the UI would never show the URL. Or we could just accept that they change - in normal conversation you don't give out unambiguous pointers to specific things, you say words and trust they'll mean the same thing to listeners (at least within your community). If someone's telling me about a concept or a news story, I probably don't want a link to a specific web page.

</comment></comment></comment><comment><USER7> How to stop domain squatters:

Years ago I remember cases where people who were deemed to just be "squatting" on a domain could have it taken away by a arbitration-like service at the registry. There were tests to help them decide if they were truly squatting or were using it themselves. Even so, opponents argued that there were many mistakes, that the arbitration services favored big companies and the process was abused to shut down legitimate comment (like "companyxsucks.com" sites) and the only people who really liked this system were the lawyers.

Is this a route we want to go down? Have some kind of arbitration service who can decide if someone is a squatter and reclaim their domains?

</comment><comment><USER28> Google already solved this problem. Domain names are just an implementation detail now.

<comment><USER29> Are you saying that having an appropriate domain name is no longer relevant because the simple fact that Google is aware of a site, people (read: potential customers) have a likely chance of finding it?

Domain names containing relevant keywords are given a boost in Google SERPs for said keywords. For instance, google "marketing click" (no quotes) -- three of the top four results have the keywords in the domain name (click- marketing.net, clickmarketing.com, click-marketing.co.uk).

While not always true (google "juice fast"; you'll notice that none of the top 10 results have the keyword in the domain name), there is plenty of evidence to support a clear benefit for a domain name to contain relevant keywords.

</comment></comment><comment><USER30> Domain names are just nameplate, people keep forgetting that. Utility lies with search engines. What would really solve end user usablity problem is improving search - and companies improving their standing not through interrupt marketing but via inbound marketing. This name-issue is moot point, because if service is large, useful and popular people will remember it or will easily find it via google. Use bookmarks and what not. Sure it is somewhat important in the startup market if you company depends of VC funds. Business card based advertising of your brand is tenuous at best... my 2c

</comment><comment><USER31> As a couple of others have alluded to, I think the solution here is pretty simple: search. Businesses have had to distinguish themselves by name and brand already for a couple of centuries and I've seen advertisements on a number of occasions use instructions to "Google us" before. Just because search is currently a bit wild west doesn't mean it will always be that way. I can imagine a more standardised search algorithm being provided as an alternative to DNS which would be used both for locating sites and linking to them.

</comment><comment><USER32> Isn't this what the new TLD domains rollout addressing?

<comment><USER33> There already are a large number of mostly ignored TLDs (.info anyone?). Everyone wants .com's.

I would argue that for most users domain names simply aren't important anymore. When I want to go to the website for, say a local bicycle shop, I just Google them, and it doesn't matter if they have companyname.com or companyname-of-burlington.com, the GOOG finds them (not just by my terms but also proximal searching, etc).

To some degree I do think this "problem" will be self-resolving -- the domain landgrab is largely over, and many are stuck with domains that they are costing them yearly for absolutely nothing (when searching for domains I tend to find that the overwhelming majority that are taken are dead-ends or placeholders. At some point people will just abandon them).

</comment></comment><comment><USER12> I think the problem is that our domain name hierarchy is way too shallow and way too contentless. Domains like .info are worth less than .com because I have to remember that it's a .info, and there's no good pattern that tells me I should be looking for foo.info instead of the foo.com for the foo I want.

</comment><comment><USER34> The English language is unsustainable. We'll never find word for all these new things we are inventing. All the simple ones are taken.

And really, how many of these businesses will be around in 50 years? I think there might be some churn.

</comment><comment><USER35> Many of the good domain names are still "available".. for the right price. It just means that companies need to resort to domains like getdropbox.com before trying to acquire the good ones like dropbox.com.

</comment><comment><USER36> Isn't ICANN introducing .anything domain names? Once these become more prevalent, the price will go down and this will be a non-issue.

</comment><comment><USER37> Flagged for the stupidest headline and "problem" I've read in a week.

</comment><comment><USER38> The Earth Is Unsustainable...

tl;dr: All the good land is taken and there is no more free or cheap property available that is appealing to me. PANIC!

</comment><comment><USER39> What this fellow is missing is actual numbers of professional squatters to regular squatters (people like you and me).

Are most unavailable, unused domains being held by a few hundred/thousand pros, or does the long tail of people like me who maintain about 20-30 domains that remain unused out number the pros?

There's a market opportunity here somewhere. We have lots of people wanting unused domains, and lots of domains locked away not making much money.</comment>


The Death of Boredom: Search volume for "boredom" drops from 100 to 34 - <AUTHOR> https://twitter.com/lesspenguiny/status/1126499591363256325 <comment><USER2> This is actually one of the most fascinating things.

I've often thought that smartphones and other devices are in part powerful because they allow us to sort of frack our attention and draw out benefit from all the rounding errors and schedule gaps. Even if you're just looking at memes in the supermarket queue, you are in some sense doing a form of work in a context where you otherwise would not be. (What work? Often: politics, group affinity reinforcement, subcultural literacy improvement, etc.)

Pervasiveness and gameification allow our devices to, as it were, chew and swallow our daydreams.

<comment><USER3> There are some studies that suggest crimes have fallen due to smartphones entertaining people. I'm not sure if any research has over-turned those findings but the authors equated it to there tends to be less crime and murders in Chicago on below freezing temperatures.

<comment><AUTHOR> There's also this folk wisdom round when I grew up that young men with girlfriends are much less likely to get violent than those without.

So in short, fight crime with sex and entertainment.</comment></comment></comment>


Kongregate founder tackles 'dark money' in political campaigns - jim-greer http://www.sfgate.com/politics/joegarofoli/article/Tech-mogul-tackles-dark-money-in-political-5704914.php?cmpid=hp-hc-bustech#photo-6757075 <comment><USER3> Anonymous speech means the speakers compete on message. Banning anonymous speech means if you lose on message, and you have power, you can attack your opponent on other aspects - threaten their livelihood by attacking their employer, harass their relatives, alienate their friends and peers, in short - make their life a living hell without even bothering to actually address their message. This is especially an option when an independent citizen tries to take on a corrupt and well-entrenched opponent, possessing the use of a vast governmental machine. Of course, you can not run in elections anonymously - but you can support a courageous individual who does, without fear of retaliation for the entrenched power, if your privacy is respected. If it is not, it is very easy to cut down an upstart candidate by an entrenched incumbent by just attacking their supporters and intimidating them before the challenger even becomes a threat.

Now, tell me please, how that would be a good thing?

US has a long standing tradition of anonymous political speech, starting with the Federalist Papers. The consequences of getting rid of this tradition may be much worse than the rosy picture the proponents paint.

<comment> jim-greer You seem to think we're trying to stop people from anonymously posting their opinions. We are not.

We are trying to stop people from spending millions of dollars on paid ads advocating the defeat of a candidate they don't like (over 90% of independent expenditures go to negative ads).

That's a little different than the federalist papers, I think.

If someone has a powerful message, they can make a YouTube video and it will spread. If someone has a message that requires millions of dollars to be powerful, then it's not unreasonable to know who is spending those millions.

> it is very easy to cut down an upstart candidate by an entrenched incumbent > by just attacking their supporters and intimidating them before the > challenger even becomes a threat

Can you cite any examples of this happening? Typically the attack is on the upstart candidate, not their supporters.

<comment><USER3> >>> You seem to think we're trying to stop people from anonymously posting their opinions. We are not.

Of course not. You're trying to stop people from anonymously supporting people that publicly post their opinion. That's not much better, in my eye, since in our day and age, you can not effect change alone.

>>> We are trying to stop people from spending millions of dollars on paid ads advocating the defeat of a candidate they don't like

This is an essence of politics - convincing people to adopt your point of view by explaining it to them. Including when your point of view is the candidate is bad. Imagine the worst guy you can think of - truly Hitler incarnate - <AUTHOR> running for your city council. Would you want to be able to donate to his opponent's campaign? What if this bad guy is truly vindictive and sworn than anybody who donates to his opponent would regret that very soon? Would you want to be able to do it anonymously?

>>> Can you cite any examples of this happening?

I can cite a lot of instances where people were attacked and suffered for their speech expressed in donations, Brandon Eich being easily the most recent and prominent. However I'm pretty sure once privacy is gone, attacking the supporters would be as prominent, simply because it would be an effective tactics and there's absolutely nothing preventing its use.

<comment> jim-greer > However I'm pretty sure once privacy is gone, attacking the supporters would > be as prominent

Our country doesn't have a tradition of unlimited anonymous election spending. That only started happening with Citizens United in 2010. So we're not about to unleash some new torrent of attacks on previously anonymous donors.

You value privacy over transparency. I do in some areas, but not in political spending. Seems like we'll have to agree to disagree.

<comment><USER3> >>> Our country doesn't have a tradition of unlimited anonymous election spending.

I'm pretty sure it does - people always donated to causes, and before the current "money in politics" panic campaign, they were anonymous for the most part. All the statutes requiring donor disclosure that I could find were pretty new. Could you bring an example of donor disclosure requirements that would qualify as "tradition"?

>>> That only started happening with Citizens United in 2010

Citizens United decision changed very little on establishing privacy or disclosure. The decision was that the government can not ban a group of people, organized as a company, labor union or any other association. It actually upheld the disclosure requirements of BRCA. Of course, since the group has no obligation to disclose its membership or revenue sources, it can be used as a vehicle for anonymous speech. But that venue always existed, it was just that BRCA unconstitutionally banned companies from political speech.

<i>You value privacy over transparency. I do in some areas, but not in political spending.</i>

It's not the question of my values. I won't be the one who would abuse disclosure requirements. It's not the question of my preferences, it's a question of consequences which would happen regardless of what you and I prefer. Ignoring this consequences because they don't align with your values won't make them go away, they still will happen. Powerful people would still abuse disclosure requirements to suppress their opponents and ruin their supporter base, regardless of what you think about it.

It's like Myspace saying "we value user experience, so we won't implement restrictive XSS filters". Then a guy named Samy comes and writes some JS code and pretty soon he owns their user experience lock, stock and barrel. Did their values help them prevent it? Not really. Now, in this case the effect is a bunch of wrong bits on the internet and a couple of mildly bruised egos. But with political campaign abuse the result would be bad laws passed, bad people elected and lives of people ruined when they opposed some bad candidate.

<comment> jim-greer > All the statutes requiring donor disclosure that I could find were pretty > new

They date back to Watergate. [http://en.wikipedia.org/wiki/Campaign_finance_reform_in_the_...](http://en.wikipedia.org/wiki/Campaign_finance_reform_in_the_United_States)

Since then, monied interests have found various ways around them, like soft money (fixed by McCain-Feingold), and now 501c4s.

The SCOTUS majority in Citizens United actually assumed that there would be full disclosure of the outside spending, since super PACs have to file with the FEC. That's been evaded by having 501c4s and other anonymous organizations listed as the donor.

<comment><USER3> 1970s is not exactly a "tradition". And there were only disclosure requirements for committees, not for every organization that is engaged in speech. And, of course, as you can see for yourself, it did not work - <USER2> all regulation being continuously passed for 40 years, there's more and more money in politics. But I'm sure this time it would be different.

As long as you keep pretending that "money is not speech" you would get surprised when people who want to speak politically would do so despite a myriad of regulations. The only way to prevent it is to restrict political speech. So far SCOTUS has been very skeptical towards such efforts, but this may be not forever, and one day First Amendment may fall. It would be a very sad day for America.

<comment> jim-greer This thread has gone on for a while I'm not going to keep arguing point by point, but you misunderstand election law. Between Watergate and 2010 it was hard to do anonymous electioneering, for any person or organization.

I think unlimited anonymous election spending is more of a problem than the possibility that a big donor might get bad press or be shunned by potential employers. You disagree. That's fine, let's get on with our lives and stop trying to convince each other, which obviously isn't going to happen.

<comment><USER4> Just a question, prior to Watergate, would it have been possible for someone to buy up hours of TV ads nationwide attacking the opponent of the person they want to win? I don't know anything about election law, so I'm wondering if something changed or if attack ads and massive spending just became more accepted.

<comment><USER3> I'm not sure about TV ads specifically (TV ads probably were much less important in the 60s than now) but there's absolutely no reason to prevent somebody from speaking against any political candidate. If the First Amendment protects anything, it would definitely protect that.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER5> I think it is very interesting the kind of crew that he assembled around him to solve this problem - game developers, spam bot algorithm designers.. It is definitely a team with a skillset "outside" of the establishment.

I met Jim Greer about 7-8 years ago when Kongregate was first starting up. He definitely understands marketing and media - so I have no doubt his line of thinking will be well suited into solving this issue.

I'm sure they will "iterate" their message multiple times as they grow and see what works. As much as I dislike Grover Norquist, one can't deny that he proved the power of "pledges." Dark money is just one of many problems in Washington, so I'm glad these guys are taking it on.

</comment><comment><USER6> This doesn't surprise me.

I've met Jim Greer a few times, having done Clicker Heroes and Cloudstone with Kongregate.

He's one of the very few tech leaders who is clearly an honest, genuine, down- to-earth good guy. He obviously wants to do good for the world with this company, and I'm glad for it.

<comment><USER7> +1 I never worked with Jim but almost did and networked a number of times. Your description matches my read exactly.</comment></comment>


Finetuning GPT-2 to Generate Beatles Lyrics - <AUTHOR> https://towardsdatascience.com/generating-beatles-lyrics-with-machine-learning-1355635d5c4e <comment><USER3> His data formatting could be improved here. Title + authors would be better off denoted somehow, like using quotes, and the separate songs should be explicitly delimited using '<|endoftext|>' \- looking at the samples in [https://github.com/EugenHotaj/beatles/blob/master/gpt_2_gene...](https://github.com/EugenHotaj/beatles/blob/master/gpt_2_generated.txt) , GPT-2 does manage to mostly figure out that the songs are separate, but omitting '<|endoftext|>' makes it harder on GPT-2, more prone to runons (already a problem with GPT-2), and also makes prompting less effective (since you can't prompt it like '<|endoftext|>"On The Run" by John Lennon\n' to make it generate lyrics for a specific title & author). Also wouldn't be bad if he had included the specific commands + hyperparameters for the nshepperd repo he's apparently using, even if only the defaults along the lines of the examples in my own writeup ( [https://www.gwern.net/GPT-2](https://www.gwern.net/GPT-2) ).

I'm not surprised that GPT-2-117M has memorized songs by the end of training, it's not a very large corpus of songs. Hard to learn and generalize well from it. If one were working more on this, it'd probably make sense to train on a much larger and varied corpus of song (with inline metadata properly formatted to allow controllable generation); something like RapGenius, maybe?

<comment><AUTHOR> Hi, author here.

Yea I did the delimiting you mentioned when "training" a bigram model. For GPT-2 I was mostly interested in how well the model would be able to pick up signals from the raw data so I didn't do any kind of preprocessing at all (it's also not very fun ;)). I think it's interesting that the model was able to pick up titles, authors, starts/ends of songs on it's own.

I didn't try generating specific songs but that's a good idea. Having the delimiters would probably improve things but feeding in "On the Run\nJohn Lennon" would work as well with the current approach.

Using RapGenius corpus is also something interesting that I didn't think about. The goal of the post was to generate Beatles lyrics not song lyrics in general. To that end, I'd like to see what you get if you first fine tune on RapGenius to learn general things like song structure, rhyme, etc, then fine tune even further on the Beatles corpus. I suspect you'd get much nicer, less memorized songs.

<comment><USER4> >To that end, I'd like to see what you get if you first fine tune on RapGenius to learn general things like song structure, rhyme, etc, then fine tune even further on the Beatles corpus. I suspect you'd get much nicer, less memorized songs.

OT: Is that how fine-tuning actually works with GPT-2? It makes sense that it'd just be strengthening connections on the most-recently-fine-tuned corpus, with previous fine-tunes still around in some way.

Should you expect that first fine tune to pick up and solidify song structure, rhyme, etc, and the second fine tune to keep those concepts in place while muddying up other aspects like the specific lyrics used?

(Hope this doesn't come off as "you're wrong" or too off topic -- I'm just very interested and would love to read more about how all this works. :) )

<comment><AUTHOR> I would expect it to (but I haven't thought about it too deeply so I could be extremely wrong). My thinking is as follows:

At the end of the day, all we're doing is maximum likelihood estimation. So we're trying to find model parameters which define a probability distribution where our observed data is the most probable. In the original GPT-2, this observed data is the text from quality outgoing links on Reddit. Since this data is so diverse, there will not really be any special structure that the model can pick up on, besides whatever structure exists in the English language.

However, when we fine-tune on RapGenius, the observed data is now songs. These songs have a certain structure to them such as stanzas, rhyming, etc. In order to maximize the likelihood of this data, the model must learn to model the structure.

Finally, if we further fine-tune on Beatles lyrics, the model is again trying to find parameters which maximize the likelihood of the data. So the model will try to match both the lyrics and the structure of Beatles songs. It's likely that the structure of Beatles songs is pretty similar to the other songs from RapGenius, so mostly what will change are the lyrics. Also, changing the lyrics seems to be the most straightforward way to maximize the likelihood since by definition we want these particular lyrics to be the most likely.

That being said, this is all just conjecture. It would be interesting to try out both methods and see if you get better results doing this two step fine- tuning vs the original fine tuning (or just fine tuning on RapGenius then conditionally sampling Beatles songs as @gwern suggested).

</comment></comment></comment></comment><comment><USER5> Or any lyrics: [http://billion.dev.losttech.software:2095/](http://billion.dev.losttech.software:2095/)

And the blog article: [https://habr.com/post/453232/](https://habr.com/post/453232/) (also there's no paywall here)

<comment><AUTHOR> Really cool stuff, thanks for sharing!

</comment></comment><comment><USER6> Tricks in beam search to force rhyme schemes, or techniques like constrained markov chains (c.f. [https://redylan.neocities.org/#/how-it- works/](https://redylan.neocities.org/#/how-it-works/) and [https://github.com/gabrielebarbieri/markovchain](https://github.com/gabrielebarbieri/markovchain)) can give really strong results in lyric / structured text generation.

Might be worth investigating if you are interested in this application.

<comment><USER3> Is beam search a good idea? Whenever anyone tries beam search on a neural language model like a char-RNN or GPT-2, it seems to generally either do little or make it much worse (by exacerbating the repetition problem), and get worse the more beams/computation you do: eg [https://github.com/karpathy/char- rnn/issues/138](https://github.com/karpathy/char-rnn/issues/138) or [https://arxiv.org/abs/1904.09751](https://arxiv.org/abs/1904.09751)

<comment><USER7> If I'm interpreting "Tricks in beam search to force rhyme schemes" correctly, the idea is to filter the beams and only keep those which correspond to the chosen scheme. You don't _have_ to use beam search to be able to do that; you could also rollback the generation process whenever it doesn't rhyme and try again with a different alternative.

<comment><USER6> Yes - the crux is just to add some logic and throw out beams which don't match your constraint, _then_ rank candidates based on sequence probability.

You can roll-back the generation process and/or mask the probability distribution using simple secondary logic, but I find beam search gives generally better results, especially when the word I want to _force_ is very low probability - most of my sequence models kind of go off the rails when they are forced into a low-probability sequence ("the man went to the xylophone zebra sdawoqhdjwna"). Also I find this problem gets worse in domains without "reset" tokens like spaces, where there are always high entoropy possibilities (the letter after a space has a lot of good choices) followed by lower ones (after the first letter, there often become less good choices - <USER2> least until you hit another space). Particularly in music generation, models that sample a "surprising" sequence tend to go off the rails. It is also a behavior that seems worse in RNNs, than transformers for me.

</comment></comment></comment></comment><comment><USER8> Tomorrow, anybody?</comment>


You are not lean, stop pretending. - <AUTHOR> http://stephenbelanger.tumblr.com/post/12654898155/you-are-not-lean-stop-pretending

<comment><USER2> Sounds like a recipe for a hectic, unorganized environment. That being said, bureaucracy is waste. I think we all need some kind of balance.

<comment><AUTHOR> Use tools to organize, not people. That's what todo lists and such are for.</comment></comment>


Apple "Just works" - <AUTHOR> http://notes.philipsingh.co/post/apple-just-works <comment><USER2> I don't get this post. It just leaves me with a giant WTF.

It has no content. It has no message. It's just a weird form of worship. And my head is all confused to what prompted you to write this.

I don't mean to be rude or offensive. Just some (in my view) constructive criticism in case you want your readers to return.

I know I wont.</comment>


Show HN: slack-irc – Connect Slack and IRC channels - <AUTHOR> https://github.com/ekmartin/slack-irc

<comment><USER2> Damn it!

I was just starting to work on this, and you already finished it. My (barely started) work is at [http://github.com/captn3m0/slack-irc- proxy](http://github.com/captn3m0/slack-irc-proxy), but I got distracted trying to work on slack-utils.

However, I was planning to allow user authentication as well, which is something I think we need, but this will do the work equally well for now.

Thanks!</comment>


Change Your Old Amazon Password Now To Avoid Cracking Risk - <AUTHOR> http://consumerist.com/2011/01/old-amazon-passwords-have-big-security-flaw.html?utm_source=twitterfeed&utm_medium=twitter <comment><USER2> Is it short-sighted of me to think that a web presence the size of Amazon would have detection measures in place to notice a brute force attack, or are the so busy that one can hide in the noise?</comment>


New Official Facebook Poke iOS Application - <AUTHOR> https://itunes.apple.com/us/app/facebook-poke/id588594730?mt=8

<comment><USER2> SnapChat cloning aside...

I know I'm probably in the minority here, but I really like Facebook's decision to create multiple apps. We aren't good with thinking of apps as having multiple functionalities. Our thought process is more along the lines of "This app is for this, this app is for this, etc."

Having one app means a lot of features get lost in the app, and people turn to alternative apps (like Foursquare, Batch or WeChat) for functionality.

Edit: To put it another way, what if Google had one app and inside it was GMail, Search, Maps, etc? Facebook sees these as products, not features.

<comment><USER3> I hope you're right. I think so too and I'm building a native check-in experience for Facebook as a side-project. It's almost ready to be launched, but I haven't managed to convince anyone I talked to that they needed a separate native app for check-ins. Lets see I guess.

<comment><USER4> Agreed! Please launch this! My favorite Foursquare app is called Checkie, it's basically a one-click checkin app. <https://github.com/tijoinc/Checkie>

</comment></comment></comment><comment><USER5> The level to which this is a clone of Snapchat is kind of astounding. Did FB ever try to buy them, or are they trying to destroy competition before they have to pay big bucks like they did for Instagram?

It's all business, so I suppose all's fair, but it hardly paints Facebook as a hub of innovation. I quit a job a few years ago once they gave me the task of basically cloning a competitor from the ground up. There's no excitement or challenge in that, and I can only imagine some very bored Facebook developers have had a less than notable Holiday season so far.

<comment><USER6> We're talking about something as obvious as taking a photo and sending it to a friend in a streamlined fashion. If this counts as innovation here, I want no part in it. Taking a huge stream of data and figuring out what to show to who might be called an innovation, but this is not. Building the worlds best mapping service with street view is innovation, this is not.

<comment><USER5> It's taking a photo, which self-destructs after a certain period. It's not mind-blowingly innovative, but the idea, time periods (max of 10 secs) and even the UI involved are _exactly_ the same as Snapchat.

If the original idea isn't innovative then Facebook's version is orders of magnitude less so.

<comment><USER6> I rarely defend Facebook, but if you make an app that snaps a photo (which self-destructs) that you can then send to friends, then you knew what you're getting yourself into. The only two options you have is to either make an app that is difficult to copy, or make an easy app but hope for the network effect to work in your favor (i.e. any social media thing out there).

<comment><USER7> He's not arguing it's not going to be copied - he's arguing Facebook copied it / cloned it. Why afraid to just say that it's true?

<comment><USER8> >Why afraid to just say that it's true?

On Internet forums accusations of "copying" are generally used the same as "stealing" with a morality payload attached. For example, when something is copied and slightly modified people say "fork" to make sure it is read positively. _shrug_

<comment><USER7> Well, I think this is assumed, yes. But Facebook would never admit that "Yes, we liked this idea, so we developed our own" - and because of this it shows a feeling of guilt, or at minimum not being honest. But that fits with Facebook's character, and many who are dishonest in fact.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> How are they implementing the screenshot detection on iOS?

I searched and found some stack overflow posts, but they all seem stumped (especially for iOS 6)

[http://stackoverflow.com/questions/13484516/ios-detection- of...](http://stackoverflow.com/questions/13484516/ios-detection-of- screenshot) [http://stackoverflow.com/questions/2121970/notification- of-o...](http://stackoverflow.com/questions/2121970/notification-of-or- detecting-screenshot-being-taken/2122117#2122117)

<comment><USER10> I looked into how SnapChat does it, it's pretty simple: <http://blog.chpwn.com/post/38491252231>

<comment><USER9> Oooh, thanks for the explanation. I figured it had something to do with touches dropping off (the other posts mentioned it, and it's kind of obvious since they ask you to long press to view). But I thought the touchesCancelled would be too unreliable, with push messages, system notifications, incoming calls, or just dragging the finger out of the screen.

How would you detect the lack of WillEnterBackground/DidResignActive to avoid false positives? Just set a timeout and send a "screenshot!" notification if the timeout expires without going to background?

<comment><USER10> Yeah, probably. Anything that gets in front of the app should call one of those two, and do so pretty immediately. A timer for a second or so later should be pretty safe.

</comment></comment></comment></comment><comment><USER11> Can someone explain to me the thinking behind the multiple app strategy for facebook? Personally I find it grossly inconvenient to switch apps when going from chatting with a friend to seeing their Timeline. What am I missing?

<comment><USER12> You're not optimizing for a user session measured in seconds by weakly attached people-who-are-not-technologists. Facebook is.

Slide open phone, one touch to open app, one touch to take picture, as few touches as possible to re-engage 2nd party "user" of app.

<comment><USER11> One touch to open Camera app. One touch to post pic.

Multiple apps to see what the pic looks like on my wall? Multiple apps to post snarky comment about pic on my friend's timeline? May be you are right that this is a use-case tech people have but from my observation, I see this pattern repeated all the time on facebook activity of non-tech friends.

On more than one occasion I have elected to use WhatsApp over facebook Chat app because of the app switch. My thinking is "hey if I _have_ to switch apps, might as well pick the better chat app of the two". If this was built into the main FB app like it used to be, I'd be less likely to use WhatsApp.

</comment></comment></comment><comment><USER13> Maybe it's because my small social network (my extended family) all have iPhones, but we abandoned Facebook about a year ago in favor of iMessage. Group text, photos, and movies fly back and forth almost every day. And when we want it live, Facetime.

I guess Facebook just further validated this mobile multimedia medium.

</comment><comment><USER14> Sure, it's like SnapChat, but isn't that always the dynamic in this industry: the Feature Qua Product (simplicity, focus) vs. Feature Qua Feature (integration)? Some folks, like those who use Buffer, for example, simply prefer tightly-focused, standalone apps while others prefer ones that do more, that integrate many features into a (sometimes) cohesive product a la HootSuite.

Personal note: while I'd have been tempted to compare them to Apple or Google in the past, Facebook's turning out to be a lot more like Microsoft for the web, appropriating features or buying companies to Do Everything, even if they're not the best in each vertical.

</comment><comment><USER15> And just like that, Poke Wars became a real thing!

</comment><comment><USER16> I'm trying to understand what they're going for here. The interesting part is that the "pokes" are ephemeral. Is that special because every other type of electronic message has permanence?

</comment><comment><USER17> Nice rip-off of SnapChat functionality.

<comment> k-mcgrady I don't know much about SnapChat but this is very clearly a feature not a product, and a feature that Facebook's users will probably be happy to get. Trying to build a business around this one idea would be very risky.

</comment></comment><comment><USER18> Do we really need ANOTHER facebook app? At this rate I'm going to have a dedicated folder of "Facebook crap". It doesn't make life easier to have all these things separate. I understand the camera app, but not things like this app or the messenger app, especially since in the messenger app I end up getting notified of new mail there and in the original facebook app...

<comment><USER19> Ah, I was worried too but just found that it doesn't automatically force install itself on your phone. So the easy workaround here if you haven't downloaded it is to not download. If already install google around for how to delete apps.

<comment><USER18> That was very witty. However the point of comments is to have discussions about the posted content whether it be positive or negative. Your comment adds no value.

</comment></comment></comment><comment><USER20> I suppose calling it Poke is a clue for intended use. Though they could have gone for SnatchChat and forgone the ambiguity.

</comment><comment><USER21> Why would you want your message to expire?

<comment><USER22> Beyond sexting, I don't really know.

All the college aged girls I know love Snapchat. Not sure why, but I guess it's just fun.

<comment><USER23> Does anyone here know whether sexting is actually a major use for SnapChat? It's often thrown around as the 'obvious' use-case for the service, but having not tried it I'm not sure if there's any curation/content flagging or banning system.

If it is a popular use, does facebook really want that sort of content? Does facebook think that sexting users would trust them with their photos? If I were to send a sext, I'd certainly consider the (even faint) possibility that the pics could get up on facebook somehow...

</comment></comment></comment><comment><USER24> features aside, it must be pretty satisfying for fb employees to know that internal ideas can become separate apps.

</comment><comment><USER25> So has anyone read the TOS yet? Is there a guarantee that the content is deleted from their servers in a reasonable amount of time?

<comment><USER26> Given their track record, I wouldn't count on it.

</comment></comment><comment><USER27> We're saved! This Poke app must be what averted the Mayan disaster.

<comment><USER28> I hate to be that guy, but we value a pretty high signal to noise ratio here on HN. Comments like this will likely always get you downvoted and for good reason. The guidelines at the top are worth a read from time to time.</comment></comment>


Building a Fast Equation Grapher (Part I) - <AUTHOR> http://rykap.com/math/computer%20graphics/2017/04/11/compiling-shaders-on-the-fly/ <comment><USER2> I'm not aware of anyone else graphing with gpu support. But whether it's new or just new to me, it's a great idea.

<comment><USER3> Thanks! (I wrote the article and just found it here)</comment></comment>


Google Code Blog: Gmail for Mobile HTML5 Series: Using Timers Effectively - <AUTHOR> http://googlecode.blogspot.com/2009/07/gmail-for-mobile-html5-series-using.html <comment><USER2> Someone from Adobe should tell Google that HTML5 wont be ready till the year 2525. The crazy fools are already using it.

<comment><USER3> In case someone doesn't get it: <http://news.ycombinator.com/item?id=662620>

<comment><USER2> It's not just that one post. It's become a real "talking point" for Adobe employees and pops up everywhere.

<comment><USER3> I know, but I linked to that post as a good example.</comment></comment></comment></comment>


Show HN: Everyone Panic – Almost-free downtime phone alerts using Twilio - <AUTHOR> https://doublemap.github.io/blog/2014/05/29/everyone-panic/

<comment><USER2> There are lots of recipes for using UpTimeRobot.com to send you an SMS when your server is down (and it will notify you if it comes back up as well).

[https://ifttt.com/p/saluki](https://ifttt.com/p/saluki)

You get 100 FREE SMS alerts from IFTTT.com each month.

If you run up against the 100 SMS limit you can set it up for iMessage instead of SMS.

</comment><comment><USER3> Another great way to get notifications on your phone is to use your carrier's email-to-SMS gateway. For example, on T-mobile it is email@example.com.

If you don't want to set up nagios, you can create a quick monitoring solution with cron along these lines:

        */10 * * * * nobody curl -sSfm 10 http://www.example.com || mail -s 'www.example.com is DOWN' firstname.lastname@example.com < /dev/null

This assumes you have working email delivery on the machine doing the checking.

<comment><USER4> just yesterday, i was debating between Twilio or this email-to-sms option.

a more complete list is here: [https://discussions.apple.com/thread/5913116](https://discussions.apple.com/thread/5913116)

it's free, but with Sprint for example, it prepends "Subject: " to the front of the text. not great, but i guess might be an ok compromise for "free".

<comment><USER5> since twilio is so cheap, it's almost always better than email-to-sms. For example, you don't need to figure out which gateway to send to, and google voice users won't be prevented from getting sms.

<comment><USER4> depending on the context, and your userbase, it's usually not too much extra work for them to choose one of 7 carriers and saves you a database lookup & maintenance.

if you insist on keeping the huge database (around 30MB), i actually wrote a miner script a couple years ago to scrape the NPA-NXX data as a CSV from 2 different sources [1]. (you'll have to change the $src key and run it twice)

[1] [https://github.com/leeoniya/npa-nxx- miner.php](https://github.com/leeoniya/npa-nxx-miner.php)

<comment><USER5> not sure I understand this. You can lookup which carrier a user uses based on area code and next three digits? what if user ports their number from one carrier to another?

<comment><USER4> good point.

</comment></comment></comment></comment></comment></comment><comment><USER6> pagerduty [0] does this and more. You also don't need to host your own infra for the alert system.

[0][http://www.pagerduty.com/](http://www.pagerduty.com/)

<comment><USER7> We use PagerDuty and couldn't be happier with the product.

Ops in a modern startup (based on my experience at Crittercism) is about 1/3 automation (deploys, backups, cronjobs, etc.) 1/3 monitoring, and 1/3 vendor/product eval (hosting, various consultants for things like database tuning)

The hardest part about monitoring isn't making the tool go off, it's (1) knowing when something is broken and (2) knowing who needs to be alerted when that thing is not working. "Tell the whole team" breeds an attitude of "this is someone else's problem", and also prevents real work/progress from happening during incident response. You have to get away from the "all hands on deck" during an incident once your company gets beyond about 3-4 engineers or your feature velocity is going to get destroyed.

Also, as your company gets larger, you'll find that managing the communication around the incident is just as important as fixing the problem. Customers HATE being left in the dark, so it's important to figure out who needs to know things are broken (internally and externally) and how that's communicated.

Heroku did an excellent writeup on this topic recently: [https://blog.heroku.com/archives/2014/5/9/incident- response-...](https://blog.heroku.com/archives/2014/5/9/incident-response-at- heroku) \-- even if you don't adopt the full system outlined there, at least ensure you're thinking about it, especially the communication part.

</comment></comment><comment><USER8> It's a nice hack, but it's better to use external service for this. We run [https://t1mr.com](https://t1mr.com)

One problem is you need separate infrastructure to host your monitor. You also need to monitor the monitoring service, or it is easy for it to be quietly failing until your real site fails without warning. We run a separate instance that only monitors the public instance of t1mr.

Attention to detail matters and you really want to be focusing on your product. We are quietly handling other stuff, like calling multiple people until someone really answers the phone, or checking if your ssl certificates are about to expire.

</comment><comment><USER9> Why reinvent the wheel?

If all you need is monitoring a single end-point, then just signup to a Pingdom free account. Very reliable monitoring and 20 SMS notifications per month (no caps on email notifications) [https://www.pingdom.com/free/](https://www.pingdom.com/free/)

And if you need to monitor more than one system, then go for Pingdom "Starter" for only £6.99/month [https://www.pingdom.com/pricing/](https://www.pingdom.com/pricing/)

IMO that's fairly cheap and avoid yet another system to maintain..

</comment><comment><USER10> This is easily done with Zapier, too.

Love my Zapier.

<comment><USER11> Uptime Robot has support for Zapier too (in private beta and requires contacting support for activation).

P.S. I'm a developer at Uptime Robot and Everyone Panic is a very handy integration, great job.

<comment><USER12> Apologies for going offtopic, but FYI, SpamAsssassin is marking your registration emails and alerts as spam.

Here's the important positive scores:

1.775 URIBL_BLACK Contains an URL listed in the URIBL blacklist 1.105 MIME_HTML_ONLY Message only has text/html MIME parts 0.635 HTML_MIME_NO_HTML_TAG HTML-only message, but there is no HTML tag</comment></comment></comment>


Need a Study Break to Refresh? Maybe Not, Say Researchers - <AUTHOR> http://www.sciencedaily.com/releases/2010/10/101014144318.htm

<comment><USER2> While I agree that will power is based on your belief of your ability I cannot help but wonder of how effective it is to keep studying without breaks for memory retention and recall. If you read in "Use Your Head" by Tony Buzan there are graphs that show that the longer someone studies for the worse memory retention and recall becomes thus making it totally ineffective and pointless to exert the willpower to keep study for extended periods of time.

<comment><AUTHOR> Interesting Tony Buzan book, just ordered it - thanks; love the videos of him on YouTube.

I agree, taking breaks makes working efficient; I liked the reminder of this article on willpower and pushing ourselves even harder sometimes. Sort of like endurance in running.</comment></comment>


Implore YC: Refactor My Code (uses Ruby and continuations) - <AUTHOR> http://refactormycode.com/codes/83-combinatorial-explosion-with-continuations This is a real (if sanitized) problem that my start-up has, ready for refactoring (on refactormycode.com which I love and am unaffiliated with).
<comment><USER2> I don't know enough Ruby to refactor this, but using continuations to enumerate possibilities seems like using a sledgehammer to swat a fly.

Am I understanding correctly that your goal is just to arrive at the tail call of 'contract_sentence' in two parallel ways? In other words, you don't want to collect the possibilities into an array, and then at the apply contract_sentence() to each in turn? Is this because you're worried about violating the form of a proper tail call?

<comment><AUTHOR> > using continuations to enumerate possibilities seems like using a > sledgehammer to swat a fly

I just want the fly dead.

> Am I understanding correctly that your goal is just to arrive at the tail > call of 'contract_sentence' in two parallel ways?

No, not two ways, dozens, and I don't know beforehand where multiple possibilities will turn up. So, I can't enumerate all possibilities in an array.

Think of it as finding all paths from the root of a tree to every single leaf, where the tree is being made up as you walk it.

My current solution involves a lot of administration and makes my code brittle and hard to extend.

The solution I posted to the toy problem at refactormycode.com works, but continuations scare me and I don't quite trust their implementation in Ruby.

So I was hoping for a third option, or some advice in general.

<comment><USER2> Ok, your notion of walking a graph is not incorrect, but there's a MUCH simpler way to look at your problem: combinations.

You basically have a stream of tokens (x), and some of these tokens (C) are contractible. In other words, they have alternate forms.

So a sentence is something like this:

x1 x2 x3 C1 x4 x5 C2 x6 x7 x8 x9 C3

Now, break it up like so, where the contractible word is at the end of each segment, and create the alternate forms:

1a) x1 x2 x3 C1 // C1 is "do not" 1b) x1 x2 x3 C1b // C1b is "don't"

2a) x4 x5 C2 // C2 is "he has" 2b) x4 x5 C2b // C2b is "he's"

and so on.

Now just find all the combinations of the above segments. 1a 2a, 1a 2b, 1b 2a, 1b 2b. This may look like a nested-loop thing but it's far easier to do it recursively.

I have code that does this in Perl, if you want it. I was thinking of translating it to Ruby as an exercise but it looks like I'm too busy for that right now.

I suggest you take a look at SICP some day. Writing algorithms like this will be second nature once you grok those techniques.

</comment></comment></comment><comment><USER3> I'd rather read a clear problem description and come up with my own solution than infer the problem from the code...

<comment><AUTHOR> I understand, but the problem is hard to describe succintly.

But if you run the code, you'll understand at once what it does.</comment></comment>


Ask HN: What do you develop with? - <AUTHOR>

What tools do you develop with, and in what language (and operating system)?<p>I just want to see what the HN community uses for coding <comment><USER13> I do mostly web-app work and gigabytes of text munging.

My current work box is an underpowered WinXP machine that was the replacement after a tree fell through my office window and right onto my lovely new box. I did snag a nice Logitech laser mouse, as the desks are too shiny for old-style optical mice and the thing is so horribly precise when I need it.

Developing environment-wise, I'm shifting from jEdit to Emacs as I better learn the latter; I'm enjoying this process. Things like Ido have been a revelation. I occasionally have to muck around with Visual Studio, and I _don't_ enjoy that process.

SVN for source control, though I've poked around with Git. Intend to transition there, too. I mostly use TortoiseSVN as the UI.

Executor (<http://executor.dk>) is a huge productivity aid - with a few keystrokes, I can start pretty much anything on the computer without worrying about the mouse or the Start menu.

AltDesk (<http://www.astonshell.com/altdesk>) is the Windows multiple-desktop solution I've been using for some years. Between 2 19" flatscreens and the nine virtual desktops I have set up, it's not hard to keep windows organized.

The Gimp for rare excursions into image-editing.

Outlook for mail because I have no real choice in this Exchange shop.

Python for more scripting uses than I can list, including a program to enforce a long list of email filters/rules expressed in a YAML file. (Outlook has a ridiculously small limit on the amount of rules you can have, and I like to give clients their own folders.)

I've been tinkering with Growl for Windows as an enhancement to my pomodoro- timer program; so far, not bad.

</comment><comment><USER14> Although it's not specifically focused on HN users, <http://usesthis.com/> is a really cool site showcasing the hardware, software and work flow of some pretty successful people.

</comment><comment><USER15> Hardware: Your average desktop PC OS: Emacs Boot loader: Debian stable

Languages: C, Python, JavaScript, Perl (and various others from time to time)

Other tools: git (along with git-flow and git-annex), zsh, gnus (mail reading; emacs), erc (irc; emacs), empathy (jabber), screen (on my various servers), kvm + virt-manager to manage my virtual machines

Frequently used programs from within my own software: glib, django, zeromq, mongodb, flask, jQuery, TAP::Harness

</comment><comment><USER16> 13" Thunderbolt Macbook Pro running OS 10.6.7 and I am using iOS SDK 4.0. I'd rather not have to use a Mac but Uncle Steve has rules.

<comment><USER17> I've been thinking about getting the same MBP for dev work too, mainly for two reasons: to get into iOS development, and unlike the larger models it seems competitive price/feature-wise with most other 13" laptops.

I just hate the thought of giving up Linux as my primary environment. You wouldn't happen to run Linux on it in capacity, either vm or dual- boot/bootcamp?

<comment><USER16> I don't personally, but I know that you can install Linux onto a Mac using bootcamp if you wanted to do so.

</comment></comment></comment><comment><USER18> Hardware - Toshiba Satellite

OS - Fedora Linux (F12) (Yeah, I know, I'm a little behind on my OS updates. So sue me)

Language: Mostly Groovy, some Java, possibly starting to mix in some Scala and/or Clojure in the future. Don't rule out seeing some R and/or Haskell at some point.

Shell: bash

Editor : Emacs

IDE: Eclipse

</comment><comment><USER19> On the left is my personal computer, on the right is my work computer.

Hardware - Lenovo Thinkpad T60 | IBM Thinkpad T40. Both have a 1400x1050 screen and ordinary specs. I tried to get a second monitor, but couldn't sort out the drivers.

OS - Crunchbang Linux 10 ( _just_ upgraded...hmm, maybe I should try dual monitors again) | Crunchbang Linux 9.04

Language - Python, Common Lisp, Clojure | Java, Java, Java, the odd Python script.

Shell - <USER5>

Editor - Vim for Python and Java, Emacs+SLIME for CL and Clojure. (I've finally stopped using viper-mode!)

IDE - Over my dead body. Unless you count Emacs.

Mischellaneous tools - Leiningen for Clojure (I really should learn git / get a GitHub account....) | ant to compile, svn for version control

</comment><comment><USER20> Hardware: A SUN Ultra 45.

OS: Solaris 10 w/ Trusted Extensions

Language: About a 75/25 percent mix of Java and Groovy. respectively.

Shell: Bash. My "compiling!" project at work is to detangle 20 years of accumulated cruft that's been stored in alises, .profile files and other sourced crap and replace it with a sensible yet functionally identical .bashrc.

Editor: Vi

IDE: Eclipse

Scourge of my existence: Clearcase and the idiotic admin team that supports it and claims SVN is an "untested" solution and spreads FUD every chance they get. SVN doesn't force updates to your local drive any more than Toyota cars force you to accelerate uncontrollably.

</comment><comment><USER21> Am I the only .Net Developer here?

OS: Windows 7

Language: C#

Editor: VS 2010

<comment><USER22> Same here .( the second .NET developer in HN)

<comment><USER23> Another.Learning Ruby or Python to work in some web ideas that will help me master one of the languages.

</comment></comment></comment><comment> clark-kent Hardware - Macbook pro

OS - Ubuntu 10.10 (dual-boots Ubuntu and OS X with rEFIt but I always use Ubuntu).

Shell - <USER3>

Language - <USER4>

Editor - gEdit, Nano, Quanta+

Git client - Git Cola GUI, shell

<comment><USER17> I'm thinking about the same setup. Which MBP do you use. Have any problems with Linux video and/or wifi drivers on it?

<comment> clark-kent I use a 2008 MBP. Video and wifi all work fine with no problems. I use VLC for video. Only problem is that the MBP runs hot on Ubuntu.

I've been using this setup for close to 2 years and I'm happy with it.

</comment></comment></comment><comment><USER24> On the left is my desktop computer, on the right is my notebook, both are work machines.

Mostly I do web development and I use to use VM's for Windows testing, but that stopped once I got the notebook.

Hardware - Desktop Hardware(Intel Q6600, 8GB RAM, 2TB HD, 2 Monitors) | Lenovo Thinkpad X200s.

OS - Debian testing (Wheezy) | Windows 7

Languages - Python, PHP, C++, C#, Javascript

IDE - WebIDE for PHP | SharpDevelop for C#

Shell - <USER5>

Editor - Nano, Vim, Quanta+ depending on my mood

Source Control - svn, git

</comment><comment><USER25> Just ordered a t420 that will be running windows 7 but also have virtualbox VMs running Linux for when I'm doing Clojure development, which is all done in emacs with Lein. Also use Visual Studio Shell for F# and Express for C# development.

Home built desktop already running this setup. The biggest downside to not paying for VS for me is the fact I have to run both the IDEs and if I want to use an F# DLL in C# code I have to compile one and then feed the results into the other as a reference.

</comment><comment><USER26> Visual Studio side by side with emacs.

Most of the time on Windows Server 2k8R2 64 bits. Dual Xeon w/12gb of ram.

</comment><comment><USER27> Does no one use VM's?

I"m doing web development in my ubuntu VM. I don't have to worry about linux vs window environment problems and I can still test my local work on windows.

Languages - python, javascript

IDE - <USER8>

Source Control - <USER7>

Hardware - Standard DELL with two monitors

</comment><comment><USER28> Hardware - 27" iMac, Macbook Pro

OS - Snow Leopard

Language - Corona SDK LUA (<http://www.anscamobile.com/corona/>)

IDE - <USER8>

Source control - <USER9>

Graphics - <USER10>

Email - <USER11>

</comment><comment><USER29> Hardware - macbook pro 15", and external 24" 1920x1200

OS - os x, and windows xp via VMWare

Shell - <USER12>

Language - mostly ruby

Editor - emacs with emacs-starter-kit

Git client - CLI, or magit from emacs, occasionally GitX

</comment><comment><USER30> Macbook Air w/

\- Parallels + Win7 + Visual Studio for C# stuff

\- FDT (Eclipse plugin) for ActionScript stuff

\- XCode for Objective C stuff

\- Unity but I haven't really used it yet

<comment><USER31> Any performance complaints?

<comment><USER30> It could benefit from a better CPU and more memory of course, but heat's been the only real issue - when it gets too hot OS X's kernal_task does some stuff to keep the CPU busy doing nothing which really impacts performance a lot.

</comment></comment></comment><comment><USER32> linux (debian) on both laptop on server. Mostly working with Python now. Use the excellent WingIDE as my Python editor, Komodo Edit for editing HTML/CSS. Emacs for everything else. Current tools used - Enthought Python Distribution, ZeroMQ, Django, tokyo tyrant, Postgresql, bunch of python and bash scripts that make development tolerable.

</comment><comment><USER33> Dell M6500 17" (1920x1200) + Dell 27" U2711 (2560x1440) + Linux + GVim + Perl (Catalyst/DBIx::Class) + MySQL + Nginx

</comment><comment><USER34> OS: Arch Linux

Shell: zsh

Stack: nginx + php-fpm + pgbouncer + postgresql

Editor: gVim</comment>


Compressibility of Code - <AUTHOR> http://blog.andrewcantino.com/blog/2012/06/15/compressing-code/

<comment><USER2> Cute, but I don't think it works.

It's similar to saying "terse code is better code". Unfortunately terse, also often leads to "clever". And clever code, as we all know (I hope), is a liability. I'll take verbose and well documented code (speaking of which, you need to strip comments if you want a fair playing field), over "well compressed" code.

Having said that, the less unnecessary ceremony in the language the better. The trick is finding that balance.

<comment><AUTHOR> Thanks for the feedback. I did strip comments across languages, both block and single-line.

And, yes, it's certainly possible that this isn't a useful metric. I just found it an interesting line of inquisition.

</comment></comment><comment><USER3> I feel like this idea should be developed more. What are some possible exceptions to this idea? Is there a type of program, that by its very nature, will be a lot more compressible? Are some languages more suited to that type of program, and therefore seem more compressible, but only because the language caters to those certain types of programs or functions?

</comment><comment><AUTHOR> One thing I'd like to investigate is how compressibility correlates to the author's age or experience. Also how it changes as a project matures.</comment>


Ukraine bank offers 21% interest rate for doing 10,000 steps a day - <AUTHOR> https://www.theguardian.com/world/2018/nov/23/sweating-your-assets-the-bank-that-links-interest-to-exercise-monobank-ukraine <comment><USER2> 1\. _Monobank_ != Ukraine bank

2\. _Monobank_ [0] IS "internet bank"/subdivision of real ukrainian _Universal Bank_ [1] that since 2017 bought and operated by _TAS Group_ [2], affiliated with ukrainian oligarch Sergiy Tigipko[3].

[0] [http://uk.wikipedia.org/wiki/Monobank](http://uk.wikipedia.org/wiki/Monobank)

[1] [https://uk.wikipedia.org/wiki/%D0%A3%D0%BD%D1%96%D0%B2%D0%B5...](https://uk.wikipedia.org/wiki/%D0%A3%D0%BD%D1%96%D0%B2%D0%B5%D1%80%D1%81%D0%B0%D0%BB_%D0%91%D0%B0%D0%BD%D0%BA)

[2] [https://uk.wikipedia.org/wiki/%D0%93%D1%80%D1%83%D0%BF%D0%B0...](https://uk.wikipedia.org/wiki/%D0%93%D1%80%D1%83%D0%BF%D0%B0_%D0%A2%D0%90%D0%A1)

[3] [https://uk.wikipedia.org/wiki/%D0%A2%D1%96%D0%B3%D1%96%D0%BF...](https://uk.wikipedia.org/wiki/%D0%A2%D1%96%D0%B3%D1%96%D0%BF%D0%BA%D0%BE_%D0%A1%D0%B5%D1%80%D0%B3%D1%96%D0%B9_%D0%9B%D0%B5%D0%BE%D0%BD%D1%96%D0%B4%D0%BE%D0%B2%D0%B8%D1%87)

<comment><USER3> So in other words it is a Ukraine bank, just like the title says...

<comment><USER2> No, it's NOT a bank in any way.

</comment></comment></comment><comment><USER4> >People who manage the 10,000 steps are granted a rate of 21% on their savings. Anyone who fails to walk the walk for three days in a row will see their rate slump to 11%.

Does anybody actually expect to get the money when they decide to cash out ?

<comment><USER5> 21% is not an insane interest rate for UAH. Normal market rate is currently around 19%.

</comment></comment><comment><USER6> Is is currently 17%, not 21% (dropping to 15% if conditions are not met) according to what I see in Monobank app.

</comment><comment><USER7> I don't understand how the bank can afford to pay out a 21% interest rate.

<comment> Const-me Probably because local currency. Different currencies have different inflation rates.</comment></comment>


Yellow-Light Crusader Fined for Doing Math Without a License - <AUTHOR> https://www.nytimes.com/2017/04/30/business/traffic-light-fine.html <comment><USER3> The actual order [0] which the article links to is pretty clear about the fine being for describing himself as an engineer and practicing engineering, despite not being a registered professional engineer. The article eventually gets to saying that, but the headline isn't accurate, and most of the article is just making hay.

[0] [http://ij.org/wp-content/uploads/2017/04/OR-Math- Jarlstrom-F...](http://ij.org/wp-content/uploads/2017/04/OR-Math-Jarlstrom- Final-Default-Order-IJ084769xA6322.pdf)

<comment><USER4> The order cited him for calling himself an engineer. It ALSO cited him for doing math. See paragraph 14.

<comment><USER3> I don't think you can separate out the "doing math" bit from the _rest_ of paragraph 14:

"and submitting the critique and calculations for his modified version of the ITE formula to members of the public for consideration and modification of Beaverton, Oregon's and 'worldwide' traffic signals..."

(Edit: Would someone who is downvoting me care to explain why they disagree? Maybe I've been unclear, or something, but it seems obvious that paragraph 14 isn't about doing the calculations, it's about doing the calculations _and_ presenting them as engineering work. The first clause of the sentence doesn't stand on its own.)

<comment><USER5> What you've quoted does not describe anything that a member of the general public should not be allowed to do. Making informed proposals to your government is not something that requires a professional license. It would behoove the government to get a relevantly licensed professional to evaluate proposals before they are enacted, but that's the responsibility of the governing body, not the citizen making a proposal.

The only thing that would make his traffic analysis and proposal fall under any sensible purview for the engineering licensing board would be if in presenting his proposal to the government and the public, he had misrepresented his qualifications. Paragraph 14 does not allege any such misrepresentation; it cites him for doing math and science.

<comment><USER3> I don't disagree with you. But it's still disingenuous to claim that the board is punishing him solely for doing math. Maybe the law should be changed, but the law isn't against doing math.

<comment><USER5> Doing the math and telling anyone about it, then, if you want to be unnecessarily pedantic. They're counting it as a separate offense from anything relating to the use of the word "engineer". It's not disingenuous to claim that the board is punishing him for doing the math. It would be wrong to say that doing the math is the _only_ offense they're citing him for, but it is an independent offense that they're complaining about.

<comment><USER3> The law _is_ pedantic. Perhaps unnecessarily so, but an awful lot of law is there specifically to address issues that have come up due to prior ambiguities. That old saying comes to mind: "Don't tear down a fence until you know what's on the other side."

On that note, I think there is a real and significant difference between just doing the math and doing the math and then telling people about it, especially when you're telling people about it under the guise of your engineering expertise. Similarly, there's a difference between me reading this document, and me reading this document and then writing this comment, especially if I were claiming to have expertise in the law. (Though just to be clear, I am not a lawyer.)

You're right that there are separate offenses: asserting that he is an engineer, and practicing engineering. But the practicing engineering goes beyond simply doing the math. As section 8 of the document describes, it involves "Applying special knowledge of the mathematical, physical and engineering sciences to such professional services or creative work as consultation, investigation, testimony, evaluation, planning, design and services during construction, manufacture or fabrication for the purpose of ensuring compliance with specifications and design, in connection with any public or private utilities, structures, buildings, machines, equipment, processes, works or projects."

So doing the math _is not_ independent. The statute makes explicit that "special knowledge of the mathematical... sciences" must be "[applied] to such professional services or creative work as [examples]."

Again, I'll agree that the law may be more pedantic than it ought to be. But "doing math without a license" genuinely misdescribes the issue in a way that should be clear with a reading of that paragraph. I'd expect better from a news agency that tries to be reputable, rather than trying to simply draw clicks and generate outrage.

<comment><USER5> > especially when you're telling people about it under the guise of your > engineering expertise.

Paragraph 14 of the board's complaint makes no claim that he was presenting his analysis under the guise of engineering expertise. Paragraph 14 is solely about him publicizing an analysis whose _subject matter_ the board claims regulatory jurisdiction over. The board makes no reference to the _manner_ of presentation being a factor at all, either as an aggravating factor or a prerequisite for the publication to be an offense at all. The board also does not feel the need to cite any context that made the publication qualify as providing a professional service or otherwise qualifying as professional engineering activity under their own rules (but this aspect may end up being another Oxford Comma case), nor do they attempt to provide evidence in support of the claim that doing this kind of work (even in this non-professional context) requires special engineering education, training and experience.

The board is claiming broad authority to punish anyone who gets caught doing the wrong kind of math problem in the state of Oregon without a license, whether or not they call themselves an engineer in the process. The _doing of the math problem_ is in the board's eyes sufficient to make the activity fall under their regulatory domain.

They do not recognize the possibility for anyone lacking one of their licenses to legally do the math in question; there's no amateur category, no exemption for a layman to do preliminary analysis prior to retaining the services of a licensed engineer, no provision for a student to do work of this kind for any purpose without professional supervision from a licensed engineer. If you do the math and show your analysis to anyone in any context, you need a license. So yeah, it's not a stretch to say that they're considering it an offense to do the math without a license.

<comment><USER6> _Paragraph 14 of the board 's complaint makes no claim that he was presenting his analysis under the guise of engineering expertise._

Yes they do. Specifically: _to advise members of the public on the treatment of the functional characteristics of traffic signal timing_ \- page 7, lines 3 and 4.

I think the thing is pretty ridiculous, and a result of an over-litigious society. The point isn't so much to shoot this guy down. It is to make sure that next time somebody pretends to be an engineer (and starts building a bridge or designing a powerstation or something) and they want to stop him, this person wouldn't be able to point at _this_ case and say "but he pretended to be an engineer, and you didn't do anything". This organisation must be seen as to uphold their monopoly on deciding who gets to use the terms engineer and engineering.

It is a result of not enough common sense in court cases, and too many frivolous suits.

<comment><USER5> > Yes they do. Specifically: to advise members of the public on the treatment > of the functional characteristics of traffic signal timing - page 7, lines 3 > and 4.

That's only asserting that he communicated his findings. It's not asserting that he did so under false pretenses of being a licensed professional engineer or any other kind of regulated or certified traffic authority. The board could make the same claim against any average Joe who does some math relating to traffic and tells anyone else that he thinks there might be a better solution. There's still nothing in the charge leveled by paragraph 14 that narrows its scope so that it doesn't apply to everyone who makes a complaint about a traffic light that is more specific than "it sucks".

<comment><USER6> _That 's only asserting that he communicated his findings. It's not asserting that he did so under false pretenses of being a licensed professional engineer or any other kind of regulated or certified traffic authority._

Actually, Paragraph 14 specifically states that according to the law, the guy pretended to be an engineer. You can be as obtuse as you like about this, but it doesn't say "you are sanctioned for doing math", it says "you are sanctioned for engaging in the practice of engineering" _to the general public_ ", the rest of paragraph 14 simply explains how they came to that conclusion. It isn't about doing the math. It is about what he did with the math.

Let me explain it to you LY5: If I do some math that calculates the required gauge for wire required to carry a 250A load for 400V, I am not breaking any laws anywhere in the world. I can amuse myself with doing this math all day long, anywhere I like. If I communicate my findings in public, I have again broken no laws. If I communicate my findings, and say "you know, I know a lot about electricity and stuff" I have _still_ not broken any laws. However, should I communicate my findings and state "Here are my findings, fix your inefficient power supply, and by the way I am an engineer" I will be in trouble in most countries (and rightly so).

<comment><USER7> "Here are my findings, fix your inefficient power supply, and by the way I am an engineer"

Should be ok in my mind

"Here are my findings, fix your inefficient power supply, and by the way I am a _professional_ engineer"

Is a problem if you are not registered.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> When the credential becomes more about permission that proficiency, you'll get corruption instead of competence.

<comment><USER9> It seems like "something needs to be done" is the motivation behind most of these licensing/regulations rather than "we should do this to have x result". A vast amount of these debates/flame wars are typically around does something need to be done rather than does this specific solution (centralized administrative oversight) actually help the problem. Not to mention the costs of unintended side effects that may outweigh the benefits of the oversight.

</comment></comment><comment><USER10> "Once the last developer is locked up and the last idea patented you will realise that lawyers can't program."

— Christian Heilmann (@codepo8) [https://twitter.com/codepo8/statuses/79531211327930368](https://twitter.com/codepo8/statuses/79531211327930368)

</comment><comment><USER11> this has been discussed here previously.

tl;dr: he was fined, correctly, for claiming a professional licensure and authority to which he's not entitled. Not for "using math".

professional engineers are real in the same way board-licensed specialists or bar-admitted lawyers are, and you can't claim to be one unless you are one. end of story.

<comment><USER12> This is why the term "software engineer" is very divisive.

<comment><USER13> See, it's not divisive at all to me. There are two types of degrees - <USER2> computer science degree and a computer engineering degree. If you are an engineer - your paper says so. If you are a scientist ... you are a scientist. There is a very BIG difference. Folks that write software can be both engineers and scientists. However, there are key differences in the applications of being an engineer. Just because I write E=mc^2 on a board and apply it to some problem in front of me, doesn't make me a theoretical physicist - it just makes me a guy writing on a board, a formula that a physicist might use. In the case of the story, he's a mechanical "engineer". He isn't a guy off the street calling himself an engineer. He has the education to match the claim. HUGE difference. Software engineers have degrees that state they are. Software / computer scientist can be thrown around more liberally, but a software ENGINEER cannot.

<comment><USER14> Software engineers would typically have Computer Science degrees, not Computer Engineering degrees.

<comment><USER13> Software engineers w/o degrees are just software developers. They are not engineers, by any stretch of the term. Engineering principals applied to software, including performance analysis and validation are done by engineers. There is a big difference. Actually a HUGE difference. This isn't most likely going to be popular here, because a lot of industry folks who are in the epicenter of SF just like the title more than the job .. but it's fact, IMHO. I don't mind having discrediting titles all the time, but it's more ego that pushes it. I could care less about a title, so I'll call it out all the time. Scientists are not engineers.

<comment><USER14> > "but it's fact, IMHO"

That's not how facts work.</comment></comment></comment></comment></comment></comment>