Oracle Asks Apache to Reconsider Java Committee Departure - <AUTHOR> http://news.idg.no/cw/art.cfm?id=D0CBFE66-1A64-67EA-E4FB1D830180257C

<comment><USER2> Let's sum this up.

        Apache states that if java 7/8 has non-open licensing, they'll leave.
        Oracle votes for java 7/8 to have non-open licensing.

Apache leaves. Oracle looks Apache in the eye and asks "Are ethics and morals really that important?"

Makes perfect sense to me why Apache left. I'd do the same in Apache's position.

<comment><USER3> It's more a courtesy call so they don't look quite like saying "Good riddance!"

<comment><USER4> That is exactly it, I think.

</comment></comment></comment><comment><USER5> It's frankly bizarre that Oracle would sue Google over Java licensing, and then expect an organization with Google employees on the board and deeply involved at many levels to gladly accept their stewardship of Java.

Oracle seems to think that everyone should commit code to independent Java repositories, improving the Java ecosystem, and furthermore pay Oracle for the privilege of improving Oracle's IP.

Oracle not only fails to grasp the point of open source, they have it completely backwards.

<comment><USER6> Oracle's position is understandable. An Apache licensed Java runtime would possibly deny them of a substantial amount of profits it currently derives from J2ME licensing (it comes with _every_ phone).

Oracle is not as prone to underpants gnome-like business plans as Sun was.

Too bad their product line is the antonym of cool.

<comment><USER7> Both positions are understandable. I'm just surprised that Oracle thought that they could play both sides like this. Pre-Sun they were all "yeah, what ASF said! Open licensing!". Post-Sun they take all of the historical Sun positions.

Again, it's understandable, but why are they so surprised that the ASF would respond like this? They are asking everyone to play a game using weighted dice. If you don't like Oracle's rules, you can go home. So how can they be surprised that ASF actually left?

<comment><USER8>
           it's understandable

No matter how awful a certain action gets by moral standards, everybody has understandable motives or urges ... rape, murder, backstabbing allies, you name it.

What isn't understandable is how companies can act hypocritical and get away with it, when your friends wouldn't.

That's a huge and hurtful double standard, especially since in the US companies have the same legal status as people, which is a huge advantage for them.

Would you trust to do business with, or be friends with, or just tolerate a person that acts like Oracle does?

<comment><USER9> > What isn't understandable is how companies can act hypocritical and get away > with it, when your friends wouldn't.

Maybe because the company is not your friend? You are paying them money (in general) for services and you are getting services. If they do 'bad things' to you, you should consider switching to something more appropriate.

> especially since in the US companies have the same legal status as people, > which is a huge advantage for them.

Corporations don't have same legal status as people (irrespective of the meme). They probably have more rights than you want them to have, but that doesn't make them a person

<comment><USER8> > _If they do 'bad things' to you, you should consider switching to something > more appropriate._

Well yeah, that's what I'm saying: there's some trust involved when dealing with companies, like will Oracle pull the plug on the platforms I'm building my business on? And it makes perfect sense to switch to something else in such a case.

So when Oracle acts a certain way, then backs away when in control forgetting their own complaints, how can you trust them after that?

</comment></comment></comment></comment></comment></comment><comment><USER10> From the actual Oracle statement, and left out of the linked post:

 _Earlier this week, by an overwhelming majority, the Java Executive Committee voted to move Java forward by formally initiating work on both Java SE 7 and SE 8 based on their technical merits. Apache voted against initiating technical committee work on both SE 7 and SE 8, effectively voting against moving Java forward._

So overall, just an amazingly sincere request from Oracle, wholly indicative of a good faith effort to work this out with Apache. [Edit: </sarcasm>]

[http://blogs.oracle.com/henrik/2010/12/oracle_response_to_ap...](http://blogs.oracle.com/henrik/2010/12/oracle_response_to_apache_departure_from_jcp.html)

<comment> brown9-2 Interesting that they don't mention Google's vote "no".

The official comments of each party in the JCP on this vote are pretty interesting, even a large number of the "yes" votes clarify that they are voting only on the technical merits and they have deep concerns with the licensing.

<http://jcp.org/en/jsr/results?id=5111>

<comment><USER11> The Credit Suisse comments are particularly interesting:

On 2010-12-06 Credit Suisse voted Yes with the following comment:

Credit Suisse's vote is purely on the technical content. We strongly demand open standards and an active community around Java as we selected Java SE & EE as primary pillars for our application development (as many others in the industry do). The current battle around licensing term, however, reveals that Java never actually was an open standard. FOU restrictions clearly discriminate open source implementations and prevent competition, and with that, innovation in that space. While Java had a considerable head start, it lost a lot of momentum over the last years. Fragmentation (or a fork) of the language and its platforms are clearly not desired. But today, customers are already facing competing models for developing enterprise applications (e.g., Spring, OSGi, Java EE). The main problem, in our view, is the lack of modularization, clear delineation of Java IPs owned by Oracle and truly open standard extensions, and the ignorance of developments outside of the JCP (even though OSGi has a JCP blessing). The OpenJDK framework is not sufficient for all aspects of the language. Java must be kept interesting for researchers and universities: researchers not only contribute to the standards (e.g., Doug Lea for concurrency or Michael Ernst for type annotations) but also decide on the languages (and paradigms) that are taught at universities -- and this in the end determines the knowledge and mindset we acquire with our software engineers. While we recognize Oracle's intellectual properties around Java, we strongly encourage Oracle to re-think its current position around licensing terms. We strongly support open source as a licensing model for contributions in the JCP.

<comment><USER6> Can anyone explain clearly why OpenJDK is not enough?

<comment><USER12> I was under the impression it was the TCK that caused the issues. OpenJDK could be certified, but you weren't allowed to then run the "certified" version on a mobile device.

Which is an additional restriction onto of the GPL.

<comment><USER6> Since Sun distributed OpenJDK under GPLv2, they waived that restriction. GPL'ed software cannot have FOU restrictions. AFAIK, however, OpenJDK does not include J2ME, so, you would be able to run, say, NetBeans on your phone, but not Hexic.

</comment></comment></comment></comment></comment></comment><comment><USER13> I can't wait to read the long list of what the ASF would like Oracle to reconsider.

<comment><USER14> It may not be that long: "do what you contractually said you would and open the TCK"

The rest, I have zero doubt, Apache can handle on their own.

</comment></comment><comment><USER15> [unenthusiastically] Stop. Don't. Come back. -- Willy Wonka

</comment><comment><USER16> Aside from leaving the JCP, is there anything _more_ Apache could do? As long as Apache keeps contributing to the Java ecosystem through their various open source projects, Oracle still wins.

As a Java developer, I really do not like what Oracle is doing, but I am not really sure of the best course of action. Should I simply boycott Java and start looking for another language? It's not that simple, for practical and economical reasons. Plus, aside from Ruby, the languages I would be most interested in run on the JVM (Scala, Clojure), and heavily depend on Java libraries.

Let's say I keep using Java, and want to open source some Java code. Would it be possible to use some sort of open source license that has an exception to forbid its use by Oracle? Or would this defeat the purpose of Open Source? What if I want to contribute, but do not want to help Oracle's business?</comment>


FCC Broadcast TV Transition - gjsman-1000 https://www.fcc.gov/TVrescan <comment><AUTHOR> Here's a nice resource that shows exactly who's moving and to which channel.

[https://rabbitears.info/repackchannels.php](https://rabbitears.info/repackchannels.php)

</comment><comment><USER2> Kind of OT: if you want to see what should be available at your location, check out tvfool.com. They have a tool that lets you enter a location (address or long/lat) and based on the topography and propagation models it predicts what broadcast stations you can get and how strong they will be, and whether for each you will need a simple indoor antenna, an attic antenna, or a roof antenna.

<comment><AUTHOR> Unfortunately, tvfool is no longer being maintained and doesn't show correct information for post repack channels. An up to date replacement is here.

[https://www.rabbitears.info/searchmap.php](https://www.rabbitears.info/searchmap.php)

</comment></comment><comment><USER3> I'm amazed that this is only the first time since the introduction of ATSC. "Rescanning" your TV is something that happens once every couple of years or so in the UK, to pick up new channels or update changed ones.

<comment><AUTHOR> It's the second time. First time was in 2009 when the 700 MHz band (channels 52 through 69) was reallocated to mobile.

</comment></comment><comment><USER4> Not necessarily related but I'm a bit disappointed in the lack of ATSC 3.0 tuners available (are there any?) in US. Phoenix is a test market and I can't even find a tuner to test.

</comment><comment><USER5> background info: [https://en.wikipedia.org/wiki/Spectrum_reallocation](https://en.wikipedia.org/wiki/Spectrum_reallocation)

<comment><USER6> Specifically this is moving TV channels out of the 600MHz UHF spectrum, with the new licensees being mostly cellular carriers.</comment></comment>


Huawei staff CVs reveal alleged links to Chinese intelligence agencies - <AUTHOR> https://www.telegraph.co.uk/news/2019/07/05/huawei-staff-cvs-reveal-alleged-links-chinese-intelligence-agencies/ <comment><USER2> Also see:

[https://vancouversun.com/news/world/smoking-gun-huawei- staff...](https://vancouversun.com/news/world/smoking-gun-huawei-staff- employment-records-link-them-to-chinese-military- agencies/wcm/c37b14c0-99bf-4326-9f42-abee50f62132)

So out of 25,000 employees, 11 came from a military academy and 100 have military or intelligence connections? How do those ratios compare to the general population in the area, and to other companies?

</comment><comment><USER3> I wouldn't be surprised. For example some of the military academies have excellent eecs programs, would be stupid not to recruit them. Working on military projects are pretty normal too. However I'd like to see the MSS link.

</comment><comment><USER4> Is there a non paywall link?

<comment><AUTHOR> See Twitter thread: [https://twitter.com/BaldingsWorld/status/1147259303268454400...](https://twitter.com/BaldingsWorld/status/1147259303268454400?s=19)

And paper: [https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3415726](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3415726)</comment></comment>


Apple's iOS7 now available to Public - <AUTHOR> http://www.apple.com/ios/?20130918

<comment><USER2> The most intriguing thing from the new iOS is the same thing I can't find detailed info anywhere - iBeacon.</comment>


Kaboom: An Unusual Minesweeper - <AUTHOR> https://pwmarcz.pl/blog/kaboom/ <comment><USER2> The uncertainty rules makes me think you could take this project even further into quantum land.</comment>


Show HN: Core Data Editor 4 (for OS X) - <AUTHOR> http://christian-kienle.de/CoreDataEditor

<comment><USER2> That looks pretty cool. Basically it lets you browse and modify Core Data persistent stores. I've been doing this with Base, which is SQLite-only. Will there a be free demo made available?</comment>


Friend of a Friend: The Facebook That Could Have Been - <AUTHOR> https://twobithistory.org/2020/01/05/foaf.html <comment><USER2> A better comparison would be with telephony companies of the old days. We now have the Telecommunications Act [1] that does for telephony what the article is suggesting for social networks.

Quoting from Wikipedia:

> Since communications services exhibit network effects and positive > externalities, new entrants would face barriers to entry if they could not > interconnect their networks with those of the incumbent carriers. Thus, > another key provision of the 1996 Act sets obligations for incumbent > carriers and new entrants to interconnect their networks with one another, > imposing additional requirements on the incumbents because they might desire > to restrict competitive entry by denying such interconnection or by setting > terms, conditions, and rates that could undermine the ability of the new > entrants to compete.

So either social media companies should be classified as telecommunications companies (imho not far-fetched), or we need something similar to the Telecommunications Act but for social media.

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

<comment><USER3> Great idea, except for the fact that this didn't work at all. The 1996 Act encouraged lots of outside investment in telco competition, but all of that is gone now. Unlike in more civilized parts of the world [0], USA regulators have not fostered competition in telecom. That's why we have 2.5 national telcos.

[0] [https://www.engadget.com/2011/06/28/why-is-european- broadban...](https://www.engadget.com/2011/06/28/why-is-european-broadband- faster-and-cheaper-blame-the-governme/)

<comment><USER4> Having followed the question in France pretty closely, most of the progress in both broadband and mobile telephony came from mainly one slightly less greedy ant later comer: Free Telecom. Before that, it was basically 3 operators with several trials for illegal agreements on prices. Once Free was granted a license, France entered the 21st century and prices fell. Unlimited plans starting appearing.

The difference in terms of policy is not huge: the only difference is a slight difference in terms of corruption and outrage. The process in France was clearly corrupt, but a few institutions still do their job and users made it a political issue.

Getting that mobile license was a short call and it changed everything.

<comment><USER5> It seems usa telco is many Time worse than the worst period in France. Not that i don't appreciate free policies.

</comment></comment></comment></comment><comment><USER6> I'm pretty familiar with FOAF, LinkedData, RDF and all of the rest of the Semantic Web standards. But saying that all of these can replace a system like facebook is a bit unintelligent. Facebook brings much more to the table that users need which semantic web has never been able to accomplish like near- instant response times, UX that even my grandma can use and 99% availability... just to name a few.

Asking ever day users to create a site (buy a DNS and all that) and create a FOAF file and host it is kind of ridiculous.

Facebook is a centralized monopoly I agree, but a bunch of standards isn't going to replace the stuff that Facebook built.

I believe the problem of centralization can be solved by looking at the problem differently: what if we continue using these giants for hosting our data (with all the amazing benefits that that brings) but we urge them to provide us with ways to control the way they show us this data. We need better ways to explore our "connection graph", not just a static feed of people we know and things they post.

For instance I'd like to be able to change the algorithm that generates my main feed. I want to grab the "political liberal" feed from github (as an open source example) and load it onto facebook; then grab the "climate change biased" feed and load that and test how that works. I want to change the variables of the algorithm, test it for a few days see how that works and change it to something else if I see it's only reporting fake news.

This to me seems the problems we need to face this decade when it comes to social networks; building p2p networks from scratch, or using other decentralized standards is cool but isn't inherently solving the problem imho. There's nothing inherently wrong with the social media giants if they prove to us they can show us different views of the graph without getting in the way.

<comment><USER7> > Asking ever day users to create a site (buy a DNS and all that) and create a > FOAF file and host it is kind of ridiculous.

It could work like email, where your ISP provides you with a FOAF (or more generally Social Linked Data) store as part of your Internet access package. Or you could buy federated hosting from your preferred 'cloud' supplier.

<comment><USER8> Does anyone remember Geocities? It was almost a rite of passage in learning The Internet to set up one's very own Geocities webpage.

<comment><USER9> > It was almost a rite of passage

... in the US.

<comment><USER10> parts of Europe as well.

</comment></comment></comment></comment></comment><comment><USER11> > Did Facebook simply get there first, or did they instead just do social > networking better than everyone else?

Isn't that kind of obvious? The article kind of answers that itself:

> In the beginning, way back in 1996, it was SixDegrees. Last year, it was > Friendster. Last week, it was Orkut. Next week, it could be Flickr.

Friendster, Orkut, Myspace, Google+ (ironically, I had to Google the latter, as I couldn't even remember its name). Many social networks have come and gone.

That's not to say Facebook hasn't likely done unsavory things to perpetuate its dominance. But it was better, in one or many ways, than all that came before it, and all that have tried to succeed it. Many haven't even tried. Twitter and Instagram don't even attempt to replicate your real-life connections. Hell, I can't even remember what pseudonym my real-life friends are using on these other networks. They're playing a different game.

This is a strength for those networks, in some ways. For those who care about what "influencers" say, or in what opinions are shouted the loudest by the folks followed by the most loud-shouters. If you care about both a footballer's opinion on a match as well as what he ate for breakfast; what a Kardashian wore as well as what she was paid to say.

In many ways, the various social networks aren't attempting to compete, they're attempting to 'win' their own niche.

<comment><USER12> It is very hard to gain traction now when Facebook already has a near monopoly for most but niches. That wasn't the case back when Facebook started.

I'd actually think you can say that Facebook simply got there first, and with first I mean to first capture the large swath of people that wasn't techies nor young people. They had great timing with when the mainstream started to get pretty _comfortable_ and curious about the Internet (which was a pretty huge deal considering how big the barrier to computers and the Internet was for many/most people).

<comment><USER13> Facebook was absolutely not first.

MySpace had a HUGE lead. Facebook came in with a superior product and won on its own merit. If you want to claim first person advantage, you should definitely point to Friendster though in the US or Orkut in South America.

However, for all the dozens of social networks trying to unseat the behemoth MySpace, they all collapsed under their own weight. Turns out building a scalable network of social connections is a very hard problem to solve.

<comment><USER11> I think parent's point still stands. They're saying it's hard to compete _now_

I don't think it was intentional on Facebook's part, but in retrospect it would have been a brilliant strategy. MySpace was largely populated by a high school/shortly-post-high-school crowd.

Facebook came along and your college had to be added/invited (since residence halls and class schedules were curated). Nothing drives demand like exclusivity. Now all of MySpace's former demographic was clamoring to get in -- either by graduating HS and moving to college, or by having their existing college added.

And then the floodgates opened.

<comment><USER13> College-only Facebook would have died after everyone graduated and it really took off after they decided to compete with Twitter's feed. The model of having a stream of news of people complaining about what they had for breakfast allowed grandparents to get massive FOMO and join to see what their grand kids were up to.

Zuckerberg for all his flaws has always had an eye for what the next big social media wave is and went after it.

<comment><USER11> Agreed, but I think a(n unintended) side effect of college-only was to drive the demand.

Things we utterly hated, like turning a pull-only format of "let me view my friend's profile" (which later became "what's changed is in yellow") into the push style "newsfeed", and requiring real names, really made it what it is today. Obviously there are still fake accounts, and people aren't all using their real names anymore, but it's so much closer to a "real" profile than anything else out there.

But yeah, especially the newsfeed. Making users poll friends' profiles never would have resulted in the engagement they require. Frankly, the platform would have died because user interest/engagement would have gone elsewhere.

</comment></comment></comment></comment></comment></comment><comment><USER14> On the subway tangent, Tokyo does continue to have multi-company competition in its transit system, yet has continued to build out its network, including new lines through the middle of the city in 2008! (Fukutoshin)

There's a lot about why the system works, but it goes to show that network effects aren't insurmountable

It's a bit more costly then some alternative systems, but it's better to have an expensive line that exists rather than a cheap line that doesn't.

<comment><USER15> As does Singapore (MRT and ComfortDelGro compete), which is arguably one of the most effective and cheapest systems in the world. There isn't infrastructural problems, (as I understand it, I could be wrong) as a part of the operating contract, they are required to have interoperable fares.

</comment></comment><comment><USER16> We should own our friends lists... which we used to call our address book.

</comment><comment><USER17> The piece starts with an analogy about the MTA, but I find it a rather weak one. The NYC government could have imposed a regulation that any subway built in the city must be built by certain standards for tunnel size and the ability to interchange. That would have helped provide some ability for the two systems to interlink. Moreover, the city government intervened significantly into the operation of private train and subway businesses. The article even notes the city tried to compete directly. Government-run businesses often use the law to squash competitors. Then, when the competitors go out of business, they say it's a natural monopoly and everyone forgets about it.

</comment><comment><USER18> > This issue of identity was an acute one for FOAF. (...) there does not exist > and probably should not exist a "planet-wide system for identifying people," > (...)

> Do we trust the homepages and conclude we have two different people? Or do > we trust the email addresses and conclude we have a single person? Could I > really write an application capable of resolving this conflict without > involving (and inconveniencing) the user?

It seems the author identifies identity online as a major problem.

Interestingly, the last years have witnessed significant efforts towards a concept called "self-sovereign identity" [1, 2] that tries to solve exactly this. Emerging standards at the W3C [3, 4], open source software at the Hyperledger Foundation [5], and even non-profits [6] are working globally on the technology and governance of such a system.

Eventually, I think, self-sovereign identity will happen. I wonder what will be the impact on decentralized social networking.

      [1] http://www.lifewithalacrity.com/2016/04/the-path-to-self-soverereign-identity.html
      [2] https://sovrin.org/wp-content/uploads/2017/06/The-Inevitable-Rise-of-Self-Sovereign-Identity.pdf
      [3] https://www.w3.org/TR/did-core/
      [4] https://www.w3.org/TR/vc-data-model/
      [5] https://www.hyperledger.org/projects/hyperledger-indy
      [6] https://sovrin.org/

</comment><comment><USER19> Around 20 years ago, friends in college used this French social networking website Zdarmanet. We mostly used it as a distributed contact list. I often wonder what it could've been if they had been a bit more aggressively commercial.

Realistically though, the strong (at the time) French database and computer privacy laws likely would've prevented it from every doing the slow-boil takeover that Facebook accomplished. In the end, even those laws were ineffective in handling the foreign behemoth that Facebook became.

Edit: website is now closed, displaying " _After more than 15 years I am stopping this service. Sorry... in case you would need anything related to that please see notojo.cz for how to contact me._ " and I guess it was of Czeck origin, not French?

</comment><comment><USER20> Distributed things are more resilient, but centralized competitors tend to scale faster.

Once a given centralized competitor has scaled sufficiently they will achieve a monopoly due to network effects and predictably abuse that monopoly to reduce future competitors. Tale as old as time.

</comment><comment><USER21> Here's an idea: Plaid for social networks, built on the FoaF standard. The first vertical could be a personal website built from your social data.

</comment><comment><USER22> Friend of a Friend: Boy was the internet a different place in the pre- Cambridge Analytica era.

Seriously, I can't see how something that revolves around the assumption that everyone would just merrily broadcast their entire friends network to the whole internet would be able to fly nowadays.

</comment><comment><USER23> Legislating natural monopolies way after they were obvious has been a problem for more than a hundred years. It is probably a case where the free market leads to a problematic situation and hence it is hard to discuss for ideological reasons.

</comment><comment><USER24> Note that the social network Hi5 used (still uses? not sure) FOAF. So it can live harmoniously with centralized networks, if the networks choose to make use of it.

</comment><comment><USER25> it's amazing how much quiet your life becomes after you unfriend 99,9% of your social graph, bit similar to noise canceling on the airpods. give it a try :)

</comment><comment><USER26> I think the reason these ideas never took off (exception of rdf) is that they were too focused on specs and not enough on systems implementing them.

</comment><comment><USER27> Don't forget Solid-Server. Sir Tim's war rages on.

</comment><comment><USER27> Don't forget Solid Server- Tim's war rages on.</comment>


Show HN: Burnout Barometer – A Slack tool to log and track your stress and mood - <AUTHOR> https://github.com/ljvmiranda921/burnout-barometer <comment><AUTHOR> Hi everyone,

I just want to share burnout-barometer, a simple open-source tool that I use to track my mood throughout the day. You can find the link here: [https://github.com/ljvmiranda921/burnout- barometer](https://github.com/ljvmiranda921/burnout-barometer)

It also fetches the latest tweets from tinycarebot, and gives some random encouragement through the week!

To be honest, it's still a work-in-progress, but I've been dogfooding it for the past few weeks and it has helped me be mindful a lot. Hope you find some interest in this work!

Let me know if you have any questions!

<comment><USER2> I'm not super comfortable with information about my emotional state being hosted on a third-party's servers. I suppose this might be a moot point (with email, text, and so on). I hesitate to try this out specifically because of that fact.

Is there another way/path/tech stack to the core fucntionality?</comment></comment>


Flex your computing power! - <AUTHOR> http://Suchflex.com <comment><USER2> There seems to be a fundamental issue with this model. If it's economically viable for a user to use this service, there's no reason why the company wouldn't just do it themselves. The only exception is the cost of the hardware, but over the long term this is a relatively small factor compared to the cost of electricity and bandwidth. Especially considering that the company could use much more efficient hardware than the typical home or gaming computer.

I understand the 'sharing economy' desire to make use of underutilized resources, but this doesn't seem like an economically feasible way of doing so. The model works for Uber/Lyft: cars are a relatively high upfront cost compared to the cost of gas, but computer hardware is often less expensive upfront than the electricity costs of running it for a year. Additionally, much of the economic value in a service like Uber or Lyft is provided by the driver, not just the use of the car. In this service, the user doesn't provide any value, in fact, they're using up cycles/space that could otherwise be monetized.

<comment><USER3> _> The only exception is the cost of the hardware, but over the long term this is a relatively small factor compared to the cost of electricity and bandwidth._

My electricity rate is is 15.7 cents per kw-hour. During typical usage (MS Office, web browser, programming), my Intel 6-core desktop (without LCD monitor on) draws about 150 watts.

For back-of-the-napkin estimates, let's round the kwh cost up to 16 cents and the wattage to 300 watts (to cover scenario of some of cpu cores being 100% pegged). The electricity cost of 24x7 for one year would be ~$413.

What remains would be bandwidth costs -- if any. I like many others have Verizon FiOS and even if others have Comcast or ATT, there's no obvious residential bandwidth costs I can think of to calculate. Maybe... if the homeowner wants to upgrade the speed from 75GB@$99/month to 150@$199/month because the he wants to download the datasets faster. That extra $100 wouldn't have been spent for plain web browsing. So conceivably, that would be $1200 per year. What we don't know is how big the datasets are that must be downloaded. I assume the upload size would be minimal because the compute tasks appear to be variations on _" y_output = computecombinationsmontecarlobruteforce(x_input)."_ The y_output answer would usually be order-of-magnitude(s) smaller than x_input.

Assuming there are no extra bandwidth costs, it would be hard for a company to buy computer hardware for less than a homeowner's $413/year electricity cost.

Perhaps suchflex's particular business model is financially wrong. However in general terms, it does seem possible to find a monetizing sweet spot of computing tasks that takes advantage of the _idle and wasted_ resources of _existing_ home computers. However, if the homeowner has to buy extra hardware that was only dedicated to suchflex, that's probably where the economics won't make as much sense.

<comment><USER2> > _During typical usage (MS Office, web browser, programming)..._

That's the issue though, this wouldn't be similar to your typical usage. Instead, if they're using your GPU to train neural networks, it'll be running close to or at full capacity.

I realize that you rounded the costs up, but lets just look at the costs of a GPU often used for machine learning - Nvidia GTX 980 TI. According to Nvidia, it draws 250W under load which according to your figures would result in a yearly cost of roughly $344. That's just for the reference card, a typical card that a consumer would purchase would draw even more. You can buy a 980 TI for a little more than $400. That doesn't even begin to look at hardware actually designed for commercial and research applications.

I think that it's possible to find a way of monetizing computer resources, however, I think it has more to do with arbitraging differences in electricity costs. Suchflex's model certainly wouldn't work where I live (electricity costs in NYC are roughly 20 cents per kw-hour) but parts of the US are under 10 cents. I could see a company attempting to profit from these differences by setting up hardware in a cheap state and negotiating a favorable electricity rate. Heavy computation could then be done on these networks for significantly less than it could in New York or California.

In summary, the value of a consumer's unused computer has more to do with their electricity rate than their hardware.

<comment><USER3> _> In summary, the value of a consumer's unused computer has more to do with their electricity rate than their hardware._

I don't see how the calculations support that.

For example if we use your worse case scenarios of an entity (such as Suchflex) that had its own datacenter in a 20 cent kwh region and the crowdsourced homecomputers in a 9 cent kwh region, that's a difference of 11 cents.

If we round up the energy usage to 600 watts (pc + GPU), that 11 cents is an annual difference of ~$578. However, for Suchflex to even run computations at all on their own hardware -- whether its 20 or 9 cents -- they have to spend capex of ~$1500 of motherboard+cpu+gpu. That's the $1500 the homeowner already spent for his own purposes. Therefore, Suchflex can redirect $1500 to pay commissions/awards/etc towards pure computations instead of buying their own depreciating hardware (which includes buying/renting the physical datacenters to hold it all).

It seems like the homeowner's hardware is a very significant part of the arbitrage/monetization equation. Yes, there is _also_ potential arbitrage in regional differences of electricity rates. However, the greater arbitrage (at least the first 3 years) is the _unused time_ on residential pc that would have been wasted. That "unused time" arises from computer hardware that was already purchased for other purposes than Suchflex.

<comment><USER2> > _crowdsourced homecomputers in a 9 cent kwh region_

My suggestion was not that an entity use crowdsourced home computers, rather that it would be more efficient for a company to setup their own hardware and rent CPU cycles that way. The big difference is that Suchflex is limited to using hardware that consumers regularly purchase, whereas a company could use significantly more energy efficient setups and negotiate a better electricity rate. This is essentially what AWS already offers. Additionally, if you already have to transmit everything remotely, there's no need to stay in the US. Iceland offers rates around 4.3 cents. I chose the 980 TI for my example because it's about as close to perfect as you can find for this scenario while sticking with consumer grade hardware, average setups would be much worse.

My general point is that I don't think Suchflex's model is viable unless, as _pliny_ mentioned, you have access to free electricity through some less-than- legal means (or you live in Iceland).

<comment><USER3> _> it would be more efficient for a company to setup their own hardware and rent CPU cycles that way. [...] This is essentially what AWS already offers._

I think it's _theoretically_ possible for electricity costs to overwhelm hardware costs but so far, I haven't seen any numbers that make this disparity obvious. Some example AWS costs[1]:

      g2.2xlarge is $0.65/hour
      g2.8xlarge is $2.68/hour

Notice how 65 cents and $2.68 costs _significantly more_ than the Iceland electricity rates of 4.3 cents/kwh. The _hardware capex_ is "baked" into the AWS rates. The hardware capex for residential home computers is $0.

More analysis would be required to see if particular computation tasks can done 15x faster on AWS optimized instances than the unoptimized residential computers ($0.65/$0.043==15x).

Without concrete spreadsheet of tasks, performance runtimes, and cloud costs, I still don't see obvious evidence that AWS (or Google Cloud) will be more cost efficient than unused home computers.

[1][https://aws.amazon.com/ec2/pricing/](https://aws.amazon.com/ec2/pricing/)

<comment><USER4> those are _guaranteed_ instance prices that you can do anything you want with. A distributed home computer cloud would be much more like AWS _spot_ instances, which can be turned off whenever and you lose your data (unless it's backed up to an EBS).

Spot instance prices are typically far less - for g2.2xlarge they average around $0.1/hr - [https://ec2price.com/?product=Linux/UNIX&type=g2.2xlarge&reg...](https://ec2price.com/?product=Linux/UNIX&type=g2.2xlarge&region=us- east-1&window=3)

And note that customers can't run _arbitrary_ or secure workloads with this proposal - they just want to mine crypto on your hardware and give a small percentage of returns to you as rent.

When theDAO was launched, I toyed with the idea of an etherium GAPP similar to Flex but for anything - but it would be a hell of a lot of effort to build, and I'm not sure there is demand - people won't bother for $10/week, especially if it takes up a lot of their HD space, bandwidth and makes their GPU take off (noise).

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> The pricing seems odd.

$480/year for a $400 video card? $240/year for 3TB of disk space?

No discussion of bandwidth.

No discussion of security.

No discussion of liability.

<comment><USER6> If you cut through all the abstractions, in the end what you're selling them is electricity, right?

<comment><USER7> And, depending on where you live, most probably at a loss. Here in Spain electricity is so expensive that this is probably a very bad idea.

<comment><USER8> So teenage gamers who live with their parents and don't pay for power.

<comment><USER9> Or people using company workstations to siphon dollars out of electric bills. This is why bitcoin mining quickly became uneconomical unless you can get energy free or on the super cheap.

</comment></comment></comment></comment></comment><comment><USER10> You can order backup dedicated server for 155 USD/month with contain 5 x 6TB SAS drives. It seems that the price is about 6-7usd for TB So I should get for it 5 x 6 x 6usd = 180USD per month

Other concern is that price for storage isn't linear and multiple small packages are more worth than single big. So I could use my 1tb to get 2x 500GB and get 10usd instead of 8usd.

joining it with above server I should be able to get 10usd per TB, so 5 x 6 x 10 = 300USD per month - 155 USD for server = 145USD profit monthly?

PS: site is hosted on heroku

ps2: you can find extra page in google cache: [http://webcache.googleusercontent.com/search?q=cache:PpTl0nt...](http://webcache.googleusercontent.com/search?q=cache:PpTl0ntxD- sJ:www.suchflex.com/compute+&cd=2&hl=pl&ct=clnk&gl=pl)

</comment><comment><USER11> What I always wonder about those kind of projects is why you never find any specs about the software they use. Not only that it is closed source (what I expect) but they don't give any information about how big it is and what you would need to run it. You have no control about what is executed on your PC (possibly as root?). In my eyes it completely destroys the integrity and trustworthy of any computer it is installed on.

I also wonder how they calculate the money you get just for having certain hardware. It says a 6 core 3.2Ghz CPU pays out $28/month but what if I have an average of 70% CPU usage the whole time (unrealistic, but still what if)? Do they pay me still $28 even though they only get 30% of what they could get or do they reduce the payment or even worse does the software just take the whole CPU for it self and make the rest of the computer unusable?

I've seen some similar projects (don't remember the names) but none of those actually answered only one of these questions.

<comment><USER12> I don't think they pay you just based on hardware specs. It's a factor of time that you allow the program to run for, and how much usage of the hardware it gets. Their estimates are probably some middle ground of 50% of the day and 70% usage or something, with the $28+ meaning you could get more for longer/higher usage. It's unlikely that the average working person, with only a couple hours in the evening with their machines turned on (and also actively using them), would earn nearly that amount for the limited time. Especially gamers, where they have significantly better hardware than the average home pc but likely have much higher usage of the hardware. I doubt my pc with a gtx 970 would earn close to the $32 it mentions as I only use it for a couple hours an evening, and in that time the card is working really hard playing modern games in 4k resolution.

</comment></comment><comment><USER13> This consists of two different parts, the first is just mining cryptocurrencies, but for that you need ASICS in order to be competitive.

The second part is based on Gridcoin, a cryptocurrency that rewards BOINC computations in a decentralized way. So you do all kind of BOINC projects like SETI@home, Rosetta@home (folding proteins),... and the newly generated coins by inflation get distributed according to research done by each user. Again, the important part is that there is no central authority giving out the coins, but each client queries the Boinc projects individually to find out how much research each user has done and the clients then come to a consensus about this, which is stored in the blockchain and is then the basis for the reward each client gets when staking the next time.

Suchflex is basically just a platform built on top of the Gridcoin platform for these "earn money by doing research" projects and simple cryptocurrency mining on the other hand.

<comment><USER4> Some cryptocurrencies (like ETH) can't be mined with ASICs, due to large (2gb and rising) RAM requirements

<comment><USER13> Yes, but suchflex is only about those that you can either mine with ASICS (PoW) or CPUs and GPUs (in this case Proof of Research with Gridcoin).

Pure PoS cryptocurrencies cannot be mined by suchflex.

<comment><USER4> ETH is currently PoW

<comment><USER13> ah yes, true that.

Then I was wrong, does suchflex also mine ETH then?

<comment><USER4> Looking at the site, I don't think they mine anything yet, it looks super early. But ETH would probably be the best candidate in terms of profitability. Maybe a couple of other alt coins.

It's pretty easy to set up ETH mining yourself and pocket all the money, but that's probably not the audience this software is intended for (Windows users with access to "free" electricity).

<comment><AUTHOR> We're early, but we're not that early. We have over 4k users and 300-600 daily users.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> It looks like (although not obvious) that you get paid for running this?

If so, I'm pretty certain that it won't be economical due to the power usage. Great for teenagers with gaming machines that their parents are paying the electricity bill on, and that's about it.

<comment><AUTHOR> Our current Private Beta users earning $10+ per week communicated that they have not noticed any significant changes in their electric bills.

<comment><USER15> I find that INCREDIBLY hard to believe. I guess I'll have to wait to see.

</comment></comment></comment><comment><USER16> For 96$ Yearly you give 1TB and for 99$ yearly you can buy Dropbox with that amount of storage.

I don't get how they set such a big price for that.

<comment><USER6> I imagine Dropbox are overselling and banking on most users not using 1 TB. Amazon S3 charges $30/mo for 1 TB of storage.

<comment><USER17> Still doesn't make sense you can find $60 1TB drives.

<comment><USER6> And then what does it cost to rent a datacenter, power the thing and the server it's in, and pay for bandwidth?

In any case I do agree their numbers look really high (they need to factor in redundancy and their own margin) and could very well turn out to be either a VC cash grab or an outright scam (malware)

</comment></comment></comment></comment><comment><USER18> I guess you wouldn't want to perform any mission critical computation on this type of system, unless you can verify the results you obtain using it are accurate, as I can imagine its fairly easy for people to tamper with your data. But I imagine theres a number of types of tasks it would be really good for.

I'm curious how the technique presented in "Reusable Garbled Circuits and Succinct Functional Encryption" [https://eprint.iacr.org/2012/733.pdf](https://eprint.iacr.org/2012/733.pdf) could potentially be utilised in such a system. I'm assuming it currently isn't possible due to computation overhead?

<comment><USER19> I think the general use case for this is the same as for most crowdsourced computing projects - problems that are hard to solve but whose solutions are easy to verify.

<comment><USER18> Yeah, that'd definitely make sense. I still really like the idea.

</comment></comment></comment><comment><USER20> Some of the "Get Started" links don't work at all and the one at the top only asks for an E-Mail. It hasn't even launched publicly yet.

On a side note: I found the website on my phone really annoying to read since lots of paragraphs are animated and it keeps slowly sliding from left to right/right to left every time you scroll over it again.

EDIT: Talking about this [http://i.imgur.com/JVtcTKg.gif](http://i.imgur.com/JVtcTKg.gif)

<comment><AUTHOR> Could I inquire which browser you're using? All "get started" links should be working. We are publicly launched, however we are onboarding everyone in batches. The next batch will be onboarded by this weekend. Flex on!

Just to confirm, regarding your second point: you found the subtle animation unpleasant? Thank you very much for your feedback.

<comment><USER20> Yeah I found the animation distracting since it is so slow and keeps sliding in every time you scroll over it.

I'm used to sites having transitions or animations as you scroll, but usually that's only happening once.

<comment><AUTHOR> ok, we decided to change it to more traditional configuration: animates only first time you scroll over it. cheers

</comment></comment></comment></comment><comment><USER4> As others have noted, once you deduct the cost of electricity, there isn't enough money in this for people to bother to "rent" their hardware

<comment><USER21> Lots of people have access to other people's electricity, often in conjunction with access to other people's hardware.

<comment><USER4> Great. A distributed theft network

</comment></comment></comment><comment><AUTHOR> Wow, posted this before going to bed and woke up to lots of comments and interest. Thank you very much for your excitement and support!

</comment><comment><USER22> They're mining cryptos

<comment><AUTHOR> Our system is a hybrid of blockchain technologies and a distributed computing marketplace.

</comment></comment><comment><USER15> Has anyone else noticed the paid membership tiers?

"Maximize your earnings with a SuchFlex Pro Account"

Couldn't sound like a sketchier pay money to get money scheme if they wanted it to.

<comment><AUTHOR> How so? The reasoning here is: If you're earning $50 / month, the 20% commission results in a $10 commission fee. Since Pro Account is $9.99 / month and Zero commissions, a user earning more than $50 / month (and we have a few users approaching $100 / month in Beta) would make the financially reasonable decision to pay the monthly Pro Account fee instead and then forgo any other commissions.

</comment></comment><comment><USER23> Signed up for this and minutes later got notifications from LogMeIn with failed login attempts from Russia. Never had this happen EVER before.

<comment><AUTHOR> That's quite unusual. At the moment your email simply goes to a Mailchimp email list. We will onboard current signups by this weekend.

</comment></comment><comment><USER8> 20% commission for the service of not running your bitcoin miner in a terminal window, wow. I wish these guys luck!

<comment><AUTHOR> We never mine bitcoin. Our system is a hybrid of blockchain technologies and distributed computing marketplace. Thank you for wishing us best of luck! :D Flex on

<comment><USER8> Yeah yeah, Eth is pretty much the same thing, but with a turing-complete script. Anyways looking forward to see what happens to you guys going forward.

</comment></comment></comment><comment><USER24> Get Started button did nothing.

Was curious to see what operating systems are supported.

<comment><AUTHOR> Hi tux1968, could you please let me know the browser you're using? The "get started" button should take you to an email subscription form. We will onboard current signups by this weekend.

Currently, Windows OS is supported. Mac and Linux support will be released early this Fall. Thanks</comment></comment>


Show HN: Open Source Policy for employees in a proprietary software company - damian-h https://github.com/eVisionSoftware/OpenSourcePolicy <comment> damian-h I'm submitting this because of some of the comments "The Impact Github is Having on Your Software Career" submission mention the fact that IP clauses in contracts prevent people from contribution to oss i.e. [https://news.ycombinator.com/item?id=13706091](https://news.ycombinator.com/item?id=13706091)

I feel that it is unhealthy that the majority of organisations (appear to) have such clauses yet at same time often they wouldn't be in existence if it were not for the OSS they build their products and services on.

I built this policy for my org and blogged about it here [http://dhickey.ie/2014/11/our-open-source-policy-at- evision/](http://dhickey.ie/2014/11/our-open-source-policy-at-evision/) . I feel is strikes a balance between the business concerns and contributing to a healthy ecosystem. I would like to see more organizations take a similar approach; your feedback appreciated :)

<comment><AUTHOR> Your policy doesn't make any distinction between open source licenses that do grab any and all patent rights in scope; and those that don't. If your firm has no patent IP and doesn't plan to get any, fine and dandy. That's not the usual case for large firms, and you can't let every employee make legal judgments on behalf of the whole firm, that might severely affect the firm. Hence a firm rule. Fortunately, licenses which appropriate patent rights as punishment for daring to contribute are getting rarer.

Note - these clauses also seize relevant hardware patents, they make no distinction between hardware and software patents. Will a court say otherwise? Pardon me if I don't bet my company on that question.

Discouraging work for anyone else at all can have other motives of course. Businesses often want legal rights to all inventions an employee may come up with during employment even if unrelated to their business in any way, for example.

<comment> damian-h > If your firm has no patent IP and doesn't plan to get any, fine and dandy.

This is currently the case. We are also Europe based. However, good point and I will re-examine the schedule of permitted licences. We are also not involved in hardware.

> Discouraging work for anyone else...

I understand this, and we're not encouraging work for anyone else, instead encouraging contributions to the foundations that made it possible to be in business in the first place. We also mention "does not compete with eVision's business." which may be interpreted broadly.

Good feedback, thx.</comment></comment></comment>


Why must you laugh at my back end? - <AUTHOR> http://blog.pud.com/post/9582597828/why-must-you-laugh-at-my-back-end <comment><USER3> This is great. Seriously. I cut my teeth in the early 2000s writing the type of PHP code that would make your eyes bleed. Global variables everywhere. HTML/PHP/MySQL in the same file. Career-wise I ended up going down a backend/database developer path, so if I do anything with consumer-facing web applications, it's on my free time.

I'm working on such an app now, and right now the fastest way I can get anything done is writing similar code to what I wrote in 2003. It's not quite as bad, but I continually succumb to doubt. Shouldn't I be using a framework? Wouldn't Python or Ruby be a better language to use now? Is it 'cheating' if I just throw these form elements in an HTML table? Shouldn't I be using something more scalable for the backend than a default installation of MySQL 5.1?

And yet, every time I try and address any of the above, it just gets frustrating to me. I have a limited of free time to work on this web application each week. So I want to spend that time actually DOING things with my web application, not just ramping up on learning some stuff so that I can maybe do some things a few weeks from now. This web application is getting a bit of traction with users. I always figured that I would eventually "code myself into a corner," and that making these suboptimal technology stack choices would result in me hitting some local maxima that would bite me in the ass and I'd have to basically rewrite everything.

But after reading this blog post, I feel a lot better about my choices. If this guy can make his web application work with the technology stack he prefers, then so can I.

<comment><USER4> That's not a bad strategy. I also believe in "Just get it out and done ASAP and brush it up like heck afterwards". Worry about injection attacks, efficiency issues, scaling after you gain some traction. You can always rewrite later when it becomes an issue.

<comment><USER5> Can you please list out the applications you've created? I'd like to add them to my "never ever register on these sites" list.

If you're only worrying about injection attacks "...after you gain some traction" or "...when it becomes an issue" you're already too late, and I don't ever want to trust any of my private data with you, ever. This is the 21st century. Scrubbing and validating user input is _trivial_ now, framework or no.

Please, please, please, everyone who reads this, spend a day reading the OWASP guidelines, and _use_ their sample code. This isn't difficult, and it makes your applications a million times more secure _on_ _day_ _one_.

<comment><USER4> Oh please. I'm not building anything that requires a credit card, or anything sophisticated. When you have literally just a hundred users, YES I will skip paying lots of attention on injection attacks because the chances of that happening is very low. To you techies, it sounds like a huge deal, but the priority in any business to make profit first.

<comment><USER6> Sorry, but this is bull. If you take _any_ information, even if it's an email and password, data security is either tops on your list or you're abusing your users (even "only a hundred"; _one_ is too many!). There is literally zero middle ground on this: you _do it_ or you shouldn't be building web applications. And given how utterly trivial it is to provide proof against injection attacks in any modern language and toolkit, choosing not to do so because it's "hard" as irresponsible as you can get.

This sort of behavior is why the rest of us get a bad rap.

<comment><USER7> > Sorry, but this is bull. If you take any information, even if it's an email > and password, data security is either tops on your list or you're abusing > your users (even "only a hundred"; one is too many!). There is literally > zero middle ground on this: you do it or you shouldn't be building web > applications

[http://blog.moertel.com/articles/2006/12/15/never-store- pass...](http://blog.moertel.com/articles/2006/12/15/never-store-passwords-in- a-database)

Needless to say, almost 5 years have passed and they're still around :) their traffic probably a couple of orders of magnitude higher. I was there when it happened, and yes, probably some Russian hacker or whatnot has my password from there, but that's not such a big deal because reddit doesn't know my name, doesn't have my CC number or any details related to my life.

Now, were this to happen to a company that has a lot more information available about each and every one of us stored in one central place (think Google or FB), then things could get really nasty. And I'm not talking about stupid mistakes like the one from above, I'm talking about MITM attacks orchestrated by (vicious) Governments, or cyber-warfare, or just plain old NSA not having to bother to collect information from a myriad of places anymore, when they can just go directly to the source.

<comment><USER6> I'm unclear why you replied to me, because you didn't say anything meaningful.

I did not say you _couldn't_ build web applications if you were a jerkass who was cavalier with the security of his users' data. I said you _shouldn't_.

<comment><USER7> >I did not say you couldn't build web applications if you were a jerkass who was cavalier with the security of his users' data. I said you shouldn't.

That would have left us without reddit, I don't know about you, but without it the Internet would have been a lot less interesting.

<comment><USER8> Compromising user data isn't a prerequisite to building something cool. Negligence is still negligence. Drunk drivers make it home without killing anyone more often than not.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> In computing, there is an emphasis on the tools, rather than what you do with them.

It's worth noting that it's not limited to computing either. Countless amateur photographers spend their time discussing hardware, rather than techniques and other aspects that would benefit their craft to a much greater extent.

Personally, as much as I'm fascinated by the tools, I'm much more curious about what you do with them. So I'm always glad when I see someone succeed and create something useful with an odd stack of technologies. It reminds me to focus less on the tools and more on the creation process.

<comment><USER10> >Countless amateur photographers spend their time discussing hardware, rather than techniques and other aspects that would benefit their craft to a much greater extent.

You see the same thing among firearms enthusiasts. It's fairly common to find people that spend (tens of) thousands of dollars chasing the best gear, but won't spend $2-400 on training from a reputable instructor.

<comment><USER11> And snowboarders. People spend probably minimum $1k for clothes, boots, board and bindings; plus $70+/day for a lift ticket; but won't spend $50 to go to a group class and actually learn how to do it. And they're dangerous to everyone around them because they can't dismount a goddamn lift without falling down and probably knocking down their neighbors.

<comment><USER12> And climbers. Nothing like wading through a gibbering horde of prana wearing gumbies topropting with their $350 shiny new 70 meter bicolor ropes first thing in the morning at the crag.

And kayakers. I've lost count of the number of times I've had someone's shiny new boat (closely followed by an expanding slick of random gear) float past me on class III+ runs.

And hikers. Ever see a day hiker doing a mile and a half loop trail wearing a $350 hydration pack, $150 trail shoes clad head to toe in North Face gear?

And blacksmiths. Endless are the rants on why a $800 Beverly throatless shear is infinitely superior to an identical model from Harbor Freight that costs a mere $90.

And car enthusiasts. Ever see a $90,000 sportscar dinking around in traffic on a Saturday afternoon?

See a pattern forming? People (mistakenly or otherwise) attach prestige to the latest expensive gear, regardless of the activity in question.

<comment><USER13> Good point, with broad examples. Seems like you've led an interesting life - not many people would pull out "blacksmiths" as an example :)

<comment><USER12> I'm a man of many parts. :)

</comment></comment></comment></comment></comment></comment><comment><USER14> (1) I have respect for people who can put a project together and get revenue flowing through it.

(2) This technology stack sucks.

(3) That your technology stack sucks does not mean you suck.

(4) Maslow's Four Stages of Competence starts with Unconscious Incompetence. You don't even know you are unskilled. (<http://en.wikipedia.org/wiki/Four_stages_of_competence>)

(5) This isn't a popularity contest. ([http://www.ribbonfarm.com/2009/10/07/the-gervais- principle-o...](http://www.ribbonfarm.com/2009/10/07/the-gervais-principle-or- the-office-according-to-the-office/)) Being cool and being in the in-crowd has nothing to do with your technology stack. That goes for nerds too (<http://www.paulgraham.com/nerds.html>)

(6) The tone of this article is defensive. The issues relates to identity, not technology.

(7) Relax, people.

<comment><USER15> 1-3 remind me of a great "I Can Has Cheezburger?" anecdote about being a successful CTO: [http://www.scottporad.com/2010/11/12/what-it-really-means- to...](http://www.scottporad.com/2010/11/12/what-it-really-means-to-be-a-cto/)

<comment><USER16> I wish more people knew about FreshBooks' rewrite. They had horrible code. And they slowly morphed it into a php-python-ruby mix which is (from my dev friends there) pretty damn good now. It's ok to have a setup or tools that are fucked, but FB would never be able to hold onto developers or iterate quickly on their product if they hadn't sunk at least 9 man-years on the clean up. A million bucks for a slow rewrite is worth the price when it mitigates the risks of a failed from scratch rewrite.

<comment><USER14> You ever played Weiqi? (Otherwise known as Go).

Unlike chess, stones don't move once played. They can only be captured. On a 19x19 board, you have to balance short-term gains with long-term gains. Since there are no left-right or top-bottom orientations, you often have to reimagine where you draw the lines of territory as you play. Sometimes, you can kill your shapes by playing too many stones. Better players can see where things will go, identify "dead shapes," and stop wasting time trying to rescue them. Sometimes you trade off bad moves for bigger gains. Sometimes you simply have to work with mistakes you made in the early game.

This is very much like writing code and getting it to market. You're trying to build something despite disruptive opposition even as the clock winds down.

<comment><USER17> Ah, but in Go there is the concept of good shape - you can play along similar strategic lines with both good and bad shape, but if you play your stones clumsily (write your code in PHP?), you will be vulnerable to many forcing plays and clever tesuji that may transform the position into an unwinnable one. It could happen during the middle game - bad shape may allow a group to be cut in half or have its eye shape pounded out of it - or in the yose, where you may need to make a very large number of moves to defend very few points (long development cycles to add features to a poorly written product?).

Therefore the analogy of Go justifies spending time making good shape with your code as you go along.

<comment><USER14> See (4) about unconscious incompetence.

<comment><USER17> Don't take the fun out of this! But that was a nice write up about Go and I enjoyed the analogy

<comment><USER14> :-D

I'm glad you said something about shape. It's something I'm stumbling through right now.

<comment><USER17> You might find "Making Good Shape" helpful, as it is one of the few shape focused go books available in english:

<http://www.gobooks.info/k73.html>

The problems are very challenging, but that shouldn't stop you from thinking about them and then enjoying the enlightenment of the answers after a minute. Very helpful material! Best of luck in your pursuit of a better game

<comment><USER14> Funny you should mention that. Right after you talked about shapes, I browsed through Sensei's Library and saw that too. Thanks for the recommendation.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER18> Some weird part of me loves this, and I don't know why.

That said, I'm very confused. The post says these sites are running off of your "awesome" backend:

      * http://www.pud.com
      * http://adhdinc.com

But those are just pages with links to other services? Furthermore, while some of those services (TinyLetter, FaqMe) do seem to be produced by ADHD, others (Blippy, AdBrite) do not seem to be, though it seems you claim to have participated in them in some way, shape or form.

I don't really care one way or the other, but my real question here is: Which websites in your list are _actually_ running off of the backend described here?

<comment><AUTHOR> On this stack: TinyLetter.com, FaqMe.com, and many of the other sites listed on pud.com and adhdinc.com. (and more importantly, not-yet-released stuff I'm currently working on).

I co-founded both Blippy and AdBrite but did not have technical roles there, so they have nothing to do with this stack.

<comment><USER19> Congrats on selling TinyLetter to MailChimp!

[1] <http://tinyletter.com/>

[2] <http://blog.mailchimp.com/mailchimp-acquires-tinyletter/>

</comment></comment></comment><comment><USER20> Customers don't care what you code in.

Or what your backend is like as long as it works.

They just want their lives to be easier.

Use what you know, use it well, and make a difference.

\---

Most techies who have a negative opinion about any technology do it with hearsay and not first hand experience.

For examples, all web languages pretty much do the same stuff, and you'll rarely come across a web app that uses a language in a novel way that actually makes a difference which language you use. They all have their pros and cons, it just depends on what you want to coo / boo over.

To be fair many haven't accessed the tools that may require money to use. Alternatively others might not have had the luxury of free time to learn something on their own. It's not better, or worse, just different. Sadly a lot of devs build wizardry to make their own lives easier and avoid tackling making their users lives easier, and that shouldn't happen in any language.

All that matters is can you deliver a result that works well. If techies spent as much time obsessing over improving their skills and finding way to build valuable solutions than which tools to use, they'd know this.

For those who hold a holier than thou attitude in believing the only way one can correctly create and innovate with a computer (software included) need to be from narrow list of tools/education fields, they forget that smart people can often learn to be great at more than one thing:

"I was lucky to get into computers when it was a very young and idealistic industry. There weren't many degrees offered in computer science, so people in computers were brilliant people from mathematics, physics, music, zoology, whatever. They loved it, and no one was really in it for the money." (Fortune) Steve Jobs

Get building.

<comment><USER21> "Most techies who have a negative opinion about any technology do it with hearsay and not first hand experience."

You'll find that even when you _have_ first hand experience, you'll often be met with "well, you didn't do it right". Or "you need to do XYZ first - <USER2> one_ ever does foobar with XYZ first - are you stupid?". And so on. Even first hand experience isn't enough for some fanboys when you choose to reject their tools/languages.

<comment><USER20> Lol, good point. It's kind of _ironic_ that _geeks who were picked/excluded/ostracized in school_ turn on each other in their adult lives and become snob/hipsters, instead of breaking the cycle.

 _Love and power to anyone doing anything good out there with the tools that enable to do them._

As for the _fanatics_ who _can't change the topic_ (to keep bashing) or _change their mind.._ I hope you can see the forest for the trees one day.

 _Imagine_ what it would feel to be supported by a developer of any language and doing the same for others. We should _cheer_ accomplishments, not berate, belittle and attack others without a track record of our own.

When it comes to getting opinions, I learn a little more every day to ignore anyone who is a perfectionist and hasn't accomplished/launched/profited. It's the enemy.

Scaling/rebuilding/whatever you're afraid of is okay when you're growing and profitable. _No business built itself in one version._

Remember, In 10 years you might have forgotten about the tools you're so passionate about today.

<comment><USER22> " It's kind of ironic that geeks who were picked/excluded/ostracized in school turn on each other in their adult lives and become snob/hipsters, instead of breaking the cycle."

This is more a result of our tribal tendencies which manifest themselves in a number of ways: including xenophobia, racism, nationalism, religious discrimination etc...

edit: Tarsems

<comment><USER20> Lol, Tarsemity is something on another level..

No talking until the food is walking!

</comment></comment></comment></comment></comment><comment><USER23> I don't hang out with a lot of programmers and I guess this is the reason. This "laughing" the op alludes to. This endless discussion of what language or back end is the best. I find it impossible to talk about programming with people who would rather indoctrinate me on the benefits of their chosen language than talk about, say, data structures. It's like arguing about what colour is the best. It's pointless.

So big ups to pud for his post and his peculiar stack. In its own way, it's a very cool and imaginative stack. And it works, which I think is the only thing that matters in the end.

<comment><USER24> Talking about the differences between, say, assembly language and Ruby is very different than arguing about what color is the best. I guarantee that some projects will be successful if written in one of those languages, and not the other (webapp in assembly? bootloader in Ruby?).

Also, in your view, how is talking about data structures any better than talking about languages? Wouldn't that just be "indoctrinating me on the benefits" of your chosen data structure? If the only thing that matters is that the program works, then why does it matter what kind of balanced binary tree is in use behind the scenes, any more than the language matters?

Tools do matter. Maybe you're not interested in incremental improvements in your productivity as a programmer, but those who are will probably spend time talking about their tools (hopefully balanced by spending even more time actually using them).

<comment><USER23> I don't think you read me right. There's nothing wrong with debating the pros and cons of a language (or whatever else), but there's a difference between discussing and preaching. I'm always open to a nice chat, but I've got little patience for preachers. That's all I'm saying.

<comment><USER25> It's hard to understand your point if you change it. Of course no one likes preachers or endless discussions or anything else that's clearly bad: that doesn't have a whole lot to do with programming languages though. If that's all you're saying, it doesn't amount to much.

What you actually wrote (and what this article partially argues) is that the only thing that mattered was that it worked, which is a statement people can disagree over. Working isn't a binary switch that flips when you launch, any discussion of the value of something as complex as a piece of software has a lot of different dimensions. After all, bubble sort "works" too, but you'd be a pretty terrible computer scientist if that was as far as you investigated the issue.

</comment></comment></comment></comment><comment><USER26> _As long as Xeround sticks around and does what they say they can do, I'll never have to worry about scaling my database_

Never heard of that database/company before so I clicked on the link out of curiosity and guess what, their server is down. Not very reassuring for an "infinitely scalable solution".

<comment><AUTHOR> Well damn, you're right. Looks like they were Hacker News'd. Fortunately Xeround's database servers are still up, but this is a bit disconcerting.

<comment><USER27> I wanted to give them a try but if a scalable database company can't handle HN traffic, it makes me think twice.

<comment><USER28> They may be using something cheap for their homepage because they (understandably) don't expect to get hit hard there.

</comment></comment></comment></comment><comment><USER29> I don't understand what's so difficult about holding the following facts in your head at once:

1\. Better tools make you more productive and make larger problems tractable. Using outdated or subpar tools seriously limits your options, especially if you need to compete with professionals. The simpler your problems, the less this matters.

2\. It's easy to get sucked in to constantly learning the new language/framework/toolset when you enjoy learning these things, finding the balance between the diminishing returns of trying out new tech and being highly productive is difficult. Welcome to life.

3\. Some people on the internet loudly engage in ignorant fanboyism, especially if they see smart people using their new piece of tech and figure they got onto a good idea early.

4\. That same fanboyism defends crappy tools because it's human nature to feel that kind of tribal defensiveness when you've invested a lot of time learning and using something, this is especially strong when someone has all or most of their experience with a single tool or set of tools.

Here's an idea: in the real world tools and productivity are tied in a complicated way.

The comments "it doesn't matter what you use, just keep getting things done!" is just as stupid as "stop working on things and upgrade your skillset immediately!".

Since this is aimed more at the commenters than at pud's submission I will say to him: You are impressively productive with that tech stack, it really doesn't look like it would be difficult for you to move to something more powerful than cold fusion at least. You seem like a pragmatic guy who can see the future payoff from that investment. You also look like a young guy who should not be ignoring the kind of commitment to life long learning necessary to compete in this industry.

</comment><comment><USER30> What sort of traffic do you push through this infrastructure? Micro instances only have ~600MB of memory and I found them to be severely over-sold cpu-wise -- doesn't windows require like ~300MB of RAM to just boot?

And Windows is only a penny more per hour on micro instances (although that is 50% more than Linux) -- but quite a bit more on larger instances should you ever have to scale up: <http://aws.amazon.com/ec2/pric..>.

Re database choice -- <http://xeround.com> is totally down right now... Thoughts?

I dunno, just seems like a world of hurt should you actually have to scale up -- but presuming you do, perhaps you'd have the funds and/or resources to cover it anyway.

Additionally, How on earth do you hire people to work in this stack?!?

</comment><comment><USER31> Is that the same pud that did fuckedconpany? It was a hilarious site where people made fun of over valued companies during the first boom. Unfotunately the site eventually became overrun by nazis (not kidding) and had to be shut down.

<comment><AUTHOR> Indeed.

<comment><USER32> Wow! Blast from the past! You might need to resurrect that site if the current bubble continues ;)

</comment></comment></comment><comment><USER33> I've built my product on CFML as well and I can't understand why it doesn't get more love from the developer community. It's a solid, productive language and the only language available in both commercial and open source (free) versions with tremendous support forums on both fronts. I personally use Railo for the CFML engine. Again, very productive and it enables me to get products to an MVP stage quickly.

<comment><USER34> Bob,

If you're not on 'CFML entrepreneurs' on Facebook you should be.

<comment><USER33> Thanks I'll check it out.

</comment></comment></comment><comment><USER35> For those of you that were not around during the dot.com implosion in 2000-2001, pud (the author of this blog post) ran the notorious site <http://www.fuckedcompany.com> which gave an awesome view into companies that were going down the tubes during that time.

good times... good times..

</comment><comment><USER36> I wonder if some of the laughing isn't so much at you and your stack, but at the laugher's experiences with those (or similar) technologies.

We've all worked with technologies that cause us pain in our development process. Sometimes, the pain becomes so great that we look for, and find, something that we like better. Changing to this new techonology eases said pain, and allows us to be (or at least feel) more productive.

I believe it's possible that some people laugh because they remember when they used one or more of those technologies, and the pain they felt while using it. They laugh and suggest other technologies because they assume you have the same pains they've had, and they'd like to offer you what they consider a better alternative that might ease some of the pains. After all, it worked for them!

It appears that you've had some pains with this stack, but that you've found ways to deal with those pains that don't involve leaving your current technologies. Good for you. You've built successful applications on them. Also good for you. These are, of course, the things that _really_ matter.

</comment><comment><USER37> Cold Fusion? No, no... _no_.

> CFML. I really like programming in CFML (a programming language, "ColdFusion > Markup Language," as opposed to ColdFusion, a commercial CFML interpreter > made by Adobe). I know it's not "cool" like Node.js or Clojure or even RoR.

Doctors used to bleed people with leeches to get out the "bad humors". They stopped using that "tool" for a reason. It was a _bad tool_ , and better "tools" came along.

Not only is CFML not _cool_ , it is hard for most people not familiar with CFML to understand [1]. The syntax mixes in with HTML markup in such a way as to make it very difficult to distinguish the two apart. _With_ a syntax highlighter your mind still has a hard time as there isn't enough of a difference to make a subconscious context switch easy. Also, the need to cram logic constructs into HTML/XML-like syntax makes for some screwed up code. My understanding is that you can put the attributes for the tags in any order, and that means that things you'd always expect (in other languages) to appear in a certain order, like conditions for statements, are instead a matter of style [2].

> It's got an old vibe. Not just because it was the first made-for-web > programming language (tho it's modern & updated frequently), but because > whenever I meet other CFML coders, they're always old dudes.

My experience with CF developers is similar. This is not a good thing. This is _nothing_ like the C and C++ graybeards you occasionally meet and develop immense respect for. These old CF developers are, in my anecdotal experience, the kind people that learned one type of development and stuck with it for a long, _long_ time. They've not really improved their skill sets beyond what was popular practice when they first learned Cold Fusion. These are the kind of people (I kid you not) that think HTML tables are a _great_ way to get your page layout _just right_.

Why did the OP take an entire blog post to say what could have been posted to Twitter ("you darn kids and your twittin'!")? The whole post boils down to what appears to be proud, willful ignorance.

A lot of "you're a developer, but you really should learn about business" stuff gets posted to HN. This case looks to be turned around and we have a business person doing double-duty as a developer. My advice is to learn something more current, and not because it's cool. More current technology has business value in that it's easier to find people who can work with/on it, and you will be able to find more of those kind of people for longer. The underlying tech will also (usually) be supported for longer, and by a wider range of companies. The reasons are too many to comprehensively list here.

I wasn't laughing at your back-end, by the way. It made me a little sad.

[1] <http://www.quackit.com/coldfusion/coldfusion_tutorial.cfm>

[2] [http://www.quackit.com/coldfusion/tutorial/coldfusion_loops....](http://www.quackit.com/coldfusion/tutorial/coldfusion_loops.cfm)

<comment><USER34> What I find sad is people making judgements based on twelve year old information. Like most languages CFML has evolved.

People writing CFML today use MVC frameworks, use ORM and the cloud. Yes it is still easy for beginners to write bad code, I think that may be more true in ColdFusion than in other languages. But getting started easily can also be a virtue.

You might be surprised but a lot of the ColdFusion community don't have tunnel vision and are familiar with a lot of other languages.

[http://www.bennadel.com/blog/2061-Seven-Languages-In- Seven-W...](http://www.bennadel.com/blog/2061-Seven-Languages-In-Seven-Weeks- Ruby-Day-1.htm)

<http://corfield.org/blog/post.cfm/learning-clojure>

Sometimes another language is a better choice for a given task. We write CFML because we like it and are more productive in it, even if it isn't cool.

<comment><USER38> Yet the OP mentions the <cfquery> tag, which is exactly the problem. It's mixing of the presentation (view) with a DB call (something that should be in a model and routed through a controller).

<comment><USER39> No if you write in a CFC... N00bs. btw, that's the standard way; use CFC's for db logic, separate out logic & db functions from presentation

</comment></comment></comment></comment><comment><USER40> As a ColdFusion developer looking for a job in the valley, I also faced all the negativity associated with the language. In fact, I ended up barely mentioning the language on my resume. If the language was renamed to something else and totally re-branded, it would probably gain more respect. Most people still think of the older versions when it was built in C. But since the conversion to Java, it has been able to benefit from a lot of the Java enhancements while still functioning as a duck-typed language.

Another advantage is that, it has a very short learning curve. But like with any tool, it can be used by amateurs to produce amateur looking code. Using a framework (eg. FW/1) encourages better structured code and OOP approaches.

You can meet most of your web needs with ColdFusion and some highly specialized items may be more complicated. But that is the case with just about any language. The only part where I havent found sufficient documentation or user experiences related to scaling applications. That is not to say, it hasn't been done.

Given the relatively high price of Adobe CF (compared to Ruby/PHP etc), it is not really an option that startups (in the Bay area) will consider. There are open-source CFML engines like Railo as the author notes, but unfortunately, it lacks publicity.

<comment><USER33> Which is very unfortunate because Railo is a great product and, in several ways, superior to the Adobe engine. You're right about the branding aspect.

</comment></comment><comment><USER41> If you don't mind working alone, work with whatever you like. If it's important to your business to attract the best talent, you need to use the best tools. I'm leaving my job largely because of tools & tech, and passed on a lucrative offer to pursue a different job with better tech.

</comment><comment><USER42> I'm not laughing, I run several sites on a similar stack and it all runs very well. I do run Railo though just because it runs circles around the native CF server (and I don't use any of the "high level" stuff Railo doesn't include), and I use mySQL 5.5, but all under Win 2k8 Server. I have dabbled in several other frameworks as well but I simply keep coming back to CF to get things done. Be it personal familiarity or platform flexibility or a combination of both, it's never come up short or failed to perform very well and _that's_ how I judge something to be an acceptable platform.

<comment><USER39> Do you blog about Coldfusion at all?

<comment><USER42> Not I. I have debated starting up a blog a few times but lack of time is one issue, and I'm also not sure anyone really cares to hear what I have to say :)

<comment><USER39> What resources do you read about cold fusion? (i'm new within the last 1 year to CF).

</comment></comment></comment></comment><comment><USER43> I didn't even know CFML was an open standard. Check out cfwheels.org before you comment. It's a RoR like framework, and from 15 minutes of tutorials - it's actually pretty good. It handles APIs better than Django and deals with AJAX in a smart way.

CFML verbosity and the entangled html is a downer though.

</comment><comment><USER44> At the end of the day, making stuff work is all that matters. I would never have considered CFML or IIS or Windows as a webserver, but if it makes your stuff work and helps you make stuff work, why would I laugh at it?

</comment><comment><USER45> The synchronizing with Dropbox is pretty clever. Had never thought of that. Probably some latency issues--it wouldn't suit all cases but definitely would be a simple fix to a few problems I've had in the past.

<comment><USER46> Do you (the plural you) really trust Dropbox Inc. enough to give them access to all your application files on your servers?

Personally I don't use Dropbox for anything minimally sensitive (basically, anything that I haven't downloaded from the web) without putting it on a Truecrypt container. Maybe I'm just paranoid, though.

<comment><USER47> I'd use tarsnap.

</comment></comment></comment><comment><USER48> So, he's got:

* rapid development tools (at least for him) * scalable, low-maintenance backend * affordable infrastructure * automated deployment * automated backups

This is almost a Joel Test for web startups.

</comment><comment><USER49> I wouldn't laugh, but I am surprised it works. I have abandoned Cold Fusion in the late 90's - it kept hanging up, to the point of someone (me) having to write a program that detected the lockup and proceeded to restart the service. It may have become more reliable over the years, but I wouldn't know. CFML also has several drawbacks as a web programming language - the way it mixes presentation and application logic makes it hard to test properly and reminds me of what is wrong with a lot of PHP and JSP code out there.

I am also surprised someone claims it's faster to work on Windows than it is on a Unix-like OS. Most of the things I do on servers are moving files around, installing/updating packages and occasionally restarting a daemon. For that, clicking and dragging on a remote GUI is much less efficient than issuing equivalent commands in a shell.

I also read IIS progressed a lot since I last had to automate virtual server creation. Again, Apache runs on Windows and spitting (usually rendering from a template and adding custom values) a new config-file and doing a graceful restart appears simpler than right-clicking, form-filling and manually copying settings from one place to another. Windows doesn't even offer the courtesy of select/middle-button operation (unless you are operating IIS from the console).

Like someone else said, unless your infrastructure fails miserably (and CF/Windows failed me long ago) your app won't suck because of the technologies it stands upon. A good idea implemented in CF, PHP or ASP is just as good as a good idea implemented in Django or Rails or Node or Lisp. It's just that it may be harder to evolve it over time, or make it scale, or deploy it in the first place.

</comment><comment><USER50> I'm little late here but I can't stop but write my response to this.

I know the problem to laugh about code, backend or infrastructure. I know a lot of people are opinionated and if they don't like something you can't stop them firing on you. I'm very happy for you that you found a stack which works for you HOWEVER this doesn't mean that it works for others. A lot of programming languages, paradigms, frameworks and infrastructures just work for one guy on his greenfield project but while getting bigger things get lot harder and crappy cause it isn't modular enough or no-one understands "the legacy code" ect.

At beginning it seems like you can't run into such problems but after a couple months of development this happens nearly in every project. You learning from these mistakes and get better with every project. There are a lot of things in software development people are talking about but you can only truly understand it when you came to the point where you have this problem people are describing to fix.

For example a lot of my old colleagues are in love with PHP. They get stuff done with it and somehow they get code shipped but they don't go for elegance and having less code smells. They just go for "it works what you want more?". Software development is not only "it works" it is far more than that! Maintainable code, readable code, performance, architecture, elegance (for example: less readable code which covers the same as before) you name it.

I found my self learning a lot from different languages, paradigms, people and different systems. For example what I love about linux is: I could write a automatic shell script to do anything. With Windows you can't! You just can't write for every step a shell script a lot of things are only available through the GUI. This bad. I don't like that. And I also don't like to run the GUI on a server. You are wasting a lot of resources here.

</comment><comment><USER33> Typical posts against CFML. "It's old." Well then so is Java, PHP, you name it. Actually, of all of those languages, CFML has the latest iteration (which is the most important stat). Railo and Adobe both have new updates ariving soon. Hey, how bout that JSTL huh? Morbid since the late 90's.

</comment><comment><USER51> What sites are running this hilarious back end?

<comment><AUTHOR> Several of these: <http://adhdinc.com> and <http://pud.com>

<comment><USER52> [i]Please[/i] tell me that these animated GIFs and background MIDI on pud.com are parts of the joke.

<comment><USER53> My guess is they are, considering the footer says "This site is best viewed with Netscape Navigator 2.0 or above".

It's a cool domain though, how many three letter .com domains out there?

</comment></comment></comment></comment><comment><USER54> I don't get it. Would anyone argue that you couldn't launch successful sites this way? Tools are made to improve the process and enable new possibilities; that's why use good tools.

</comment><comment><USER55> You need elastic load balancing for iPhone Apps, do they call your web servers that often? How many users are you dealing with currently? Wondering if my single server in my house will be enough to launch a new web service shortly..the server is currently a quad core dedicated Ubuntu LAMP Server with 2gigs of ram that I built a little over a year ago, currently hosted off of residential cable

P.S. That's a nice looking backend

<comment><AUTHOR> Several of my iPhone apps interact with a web service.

As for your situation, my cable company's upstream is so slow that I wouldn't host anything on it. But if yours is fast and you like dealing with your own hardware, go for it. Maybe you'll be the next Rackspace :)

</comment></comment><comment><USER56> The web page at <http://xeround.com/> is currently unavailable. It may be overloaded or down for maintenance.

HTTP Error 503 (Service Unavailable): The server is currently unable to handle the request. This code indicates that this is a temporary condition and that the server will be up again after a delay.

</comment><comment><USER57> The only piece that made me cringe was CFML. I promise that a better life awaits you if you have the courage to break free.

<comment><USER20> Cringing aint so different than laughing ;)

I work in 7-8 languages, was just wondering referring to my post: \- What was your experience with CFML that made you cringe \- Is it possible the same can happen in any language \- What is better, in what way?

Always looking to use better tools if they really get more done with less effort :)

<comment><USER57> I will admit that my CFML experience is limited to studying it for an interview (that made me not want the job) and learning it well enough to read old source code for a new application based off the old. (The app was MX 7)

My primary complaints were (as everyone) the verbosity - I've never seen a more verbose templating system, which led people to copy and paste all around. While there were some CFCs, those were mostly for tying to java backend. All this _could_ happen in ASP, for example, but CF seemed to make it painful to do the right thing.

Of course it could happen in other languages, but my experience let me to cringe whenever CF was mentioned.

The OP used Microsoft already, so I'd look along those lines for him, even though my professional life is in java (95% javascript/HTML application with minimal templating from JSP)and my current weekend project is in rails. Razor looks like a nifty templating engine in ASP.NET MVC, for example.

<comment><USER20> Verbosity is totally a pain.

Interestingly, I didn't know ECMAscript (aka Javascript) is too verbose for folks out there.

It turns out that CFML has two syntaxes, script and tag.

The tag based html-type that's being discussed here, and and cfscript.

Cfscript is is nearly identical to javascript and based on ECMAscript. Several languages follow ECMAscript.

In a way, if you know HTML and Javascript, any language should be easier to pick up than a language that looks completely different from HTML and Javascript, no?

Googled and found: [http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0...](http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec22c24-7ebf.html)

ECMAscript: <http://en.wikipedia.org/wiki/ECMAScript>

<comment><USER57> I thought that the CFML was the tag language and CFscript was considered separate, and this particular project didn't take advantage of CFscript, but looking around, people aren't too keen on the interfaces given to CFscript, even today.

[http://www.clearcrystalmedia.com/pm/full-cfscript-cfcs- not-w...](http://www.clearcrystalmedia.com/pm/full-cfscript-cfcs-not-where- they-need-to-be/)

[http://www.forta.com/blog/index.cfm/2011/2/4/I-Am-Not-A- Fan-...](http://www.forta.com/blog/index.cfm/2011/2/4/I-Am-Not-A-Fan-Of- CFSCRIPT)

I can speak to a similar adobe product, Flex (and MXML/ActionScript) and at least there, Adobe tried to figure out what would make most sense in MXML, and then the ActionScript interface fell out of that, rather than what made sense for an ActionScript interface. Then, Adobe pointed everyone to the MXML as documentation, rather than having a separate documentation for ActionScript. However, things didn't work exactly the same.

Perhaps life is better in CFland, but Adobe has seemed to have "good enough? Then ship! Our devs will figure out workarounds." in their DNA. Looking at this thread -- <http://forums.adobe.com/thread/507720> \-- it seems ColdFusion is no exception.

</comment></comment></comment></comment></comment><comment><USER58> Why must you laugh? If it works, why not?

</comment><comment><USER59> I'm not surprise people would laugh at this back end, it's sort of a who's who list of frow upon technologies, it's amazing how popularity contests are so prevalent in tech ...

</comment><comment><USER60> For a webapp written and maintained by one person it does not matter what tools you use. Just like it doesn't matter what tools you use to build a doghouse.

</comment><comment><USER61> I've killed a potentially great startup by trying to get the "code perfect"

</comment><comment><USER62> Not using source control.

</comment><comment><USER63> I'm laughing at your front-end, actually.

<comment><USER30> LOL! Is that a geocities page?

</comment></comment><comment><USER64> Because it's big. And dirty.

</comment><comment><USER65> I laugh at your backend because you need to exercise!

(Just a joke, nothing more.)

</comment><comment><USER66> aren't micro instances heavily throttled?

<comment><USER67> Yes. Their main use is for really wimpy applications, or for apps that need occasional bursts of CPU -- the throttling allows bursts up to 2 compute units, but you get very little on average.

</comment></comment><comment><USER68> this stack is... interesting. but the real problem, i think, with what he's saying, is that it is basically "i refuse to learn anything new that is not tightly bound to what i already know".

it's true that the laughter is unnecessary, and the trends and hype can be obnoxious, but it is somewhat about the excitement of always learning new things and new ways to think.

</comment><comment><USER69> It's less laughing and more "first world paternalistic concern for a third world nation trashing about".</comment>