Create your own dysfunctional single-page app - <AUTHOR> https://tinnedfruit.com/articles/create-your-own-dysfunctional-single-page-app.html <comment><USER3> IMHO the whole advantage of single-page apps is about separating the UI and the data + using the browser as a cross-platform UI toolkit, runtime and deployment engine. The reason for SPAs to exist is that browsers are the only way to deploy an app that runs on every OS, looks pretty, automatically updates in an instant every time you run it and can be discovered and ran by everybody in a single click. Just imagine a world where something like WPF was made a truly free standard with full-featured 100%-compatible open-source implementations available on all the major OSes (Windows, Mac, Linux, Android, iOS) from the beginning and packed with efficient support for apps to be ran straight from a URL.

<comment><USER4> I imagined a world of apps designed with xaml /me shudders

<comment><USER5> Interesting, i've had the exact opposite feeling with XAML. I've written a bunch of Silverlight and WPF, and always felt it to be probably the best UI framework i have worked with. Certainly beats all the web frameworks, and imho it was also better than Swift and Interface Builder.

<comment><USER6> I mostly like WPF (and use it a lot), but there are a few design issues that drive me nuts. The most common one is ObservableCollections--if I have a List in the model that is going to update as something happens, how do I bind that to something in the view? Does my model throw events that trigger the Viewmodel to update an ObservableCollection?

In Angular it's trivially easy to bind to an array and have it update. In WPF, it's hard enough that I architect my applications around that one single problem.

</comment></comment></comment></comment><comment><USER7> I love when people try to point the finger at a technology when in reality it is 100% the people who are using and implementing the technology. It's their fault. 99% of developers I know who create terrible SPA's have a long list of terrible things they've created. It's a mixture of incompetence, laziness, and poor management.

<comment><USER8> It's not that people are writing SPAs badly so much as it's often unnecessary complexity. Like the "microservice all the things straight away" trope.

Sometimes a CRUD form should just be a CRUD form.

<comment><USER9> This is the problem 90% of the time. I hate the resume driven development nature that is almost encouraged in our industry.

The last few maintenance programming jobs I have worked on seem to have been written by people who have used a framework at peak hype cycle, without actually having a good knowledge of the framework.

Job ads never say "writes elegant code with a simple yet effective design". No they want "experience with React, Vue, Rails, Docker, etc".....

</comment></comment></comment><comment><USER10> I like the hybrid approach - sprinkle SPAs where page reloads should be avoided. Have many SPAs in your product. Just keep them small and assign each SPA a distinct use case or area.

Let's take a CMS as an example. The "Edit blog post/page" function can be its own SPA avoiding page reload when the post is modified. Managing the list of posts/pages can be another. A page reload in between steps is fine. Nowadays internet speed is fast and latency is pretty low. Browsers are also very efficient and vive caching. If you keep your SPAs small, the user won't see the lag going from one page to another.

Multiple SPAs also allows you to keep things modular. Different teams can own different parts.

Do not however bundle the entire CMS into a single SPA. It will most likely contain a lot of code and resources to load. That will kill performance and slow down development over time.

<comment><USER11> I like what you've described but how different is that from just including jQuery to add some dynamicism to your page? Which, BTW, is what I think JS should really be used for.

<comment><USER10> Its no different. React/Vue are modern evolution of jQuery. They allow you to organize front-end code with strict conventions and best practices. You can achieve the same result with jQuery and Backbone for example. But you'll need to discipline yourself a lot and good luck hiring developers (they all want to work on React and Vue).

<comment><USER12> > React/Vue are modern evolution of jQuery.

I disagree. They are whole frameworks taking a completely different approach than jQuery, which is basically just a helper library.

jQuery is useful as a tool for operating within an externally organized application (or otherwise mostly static DOM tree). It simplifies low-level operations like DOM element manipulation.

Frameworks like React or Vue take a top-down, more declarative approach on how the DOM is built and updated. It's in many regards more powerful and more productive, but comes at a certain cost (setup complexity, total page size, certain aspects of performance).

So, which tool is best for your project really depends on the individual use case.

<comment><USER10> jQuery plugins are extremely powerful. Look at fullcalendar.io as great example. Web 2.0 was entirely built upon that. I hate to see people dismissing jQuery and its legacy as just a library. There is a huge community built around jQuery and thousands of plugins.

It ain't new and shiny but you can build anything with it. In fact, today jQuery is used on 97% of websites* while React and Vue are around 0.2%. I imagine that will change over time.

* Top 10M Alexa ranked: [https://w3techs.com/technologies/overview/javascript_library...](https://w3techs.com/technologies/overview/javascript_library/all)

<comment><USER11> Yeah, the minute you start reaching back to the server for a significant update to the client data model in order to support a view transition I think the benefits of SPA are lost.

Granted I've only deployed one SPA to prod and that was an Ember application but I'm not feeling the love based on that project.

</comment></comment></comment></comment></comment></comment><comment><USER13> I think SPAs fail because a lot of teams just don't know what they need to do. It looks like a web page but needs to handle complex interactions/workflows and probably maintain state as well. The people with web dev expertise are used to dealing with pages and forms, and the people with experience developing sophisticated UIs (either complex or elegant) are used to working with UI frameworks that are knowable and predictable.

<comment><USER14> He mentions this in the article. I agree that building a SPA can be a bit hard and it is not very wise to use in-experienced develpers (without mentoring/lead) to do it all.

I have started to think about frontend development as at least two different types and sometimes business people and organizations mixes the two with bad results. I see some devs coming from html+css with a little js background and then a need for devs with more experience of data structures, state management, async code, good architecture etc. Some devs has this but comies from the backend and might instead lack experience in js and js frameworks/ecosystems. I think more organizations need to look where they are, which devs they have and how they can help getting everybody getting better at advanced frontend programming.

</comment></comment><comment><USER15> While I appreciate the commentary, I do disagree on a few points.

Starting towards the end. The comments about JS Framwork cadence doesn't nearly apply today as much as a few years ago. I mean Backbone was released in 2010 (8 years ago) and was probably the first JS SPA "framework" to gain significant traction. There have been many since then. Angular and Ember were also in 2010. React was first released in 2013 (over 5 years ago) and Vue was 2014.

Those have been the heavy hitters imho. All of which are pretty mature at this point. There are many others, of course, but that's been true of even desktop platforms. Yeah, Angular 2 was a big shift, but React, Vue and Angular are really the main players in this space. Most others take some queues from those three. Given that, it's a poor argument, and the language is more dated than the frameworks in question at this point.

Personally, I find SPAs are great for Line of business apps that need more complexity than a typical CRUD app can offer. Also, front end development _IS_ DEVELOPMENT. Many snobby backend developers turn up their noses and feel it doesn't deserve the same level of consideration as backend development. They don't follow the same practices, consider use or lean on application designs already established in a number of toolkits.

Personally, I currently lean on React + material-ui. For the most part it has me covered, and I can find third party controls that at least match the styling. Read the Material Design guidelines. It isn't that hard and just try to follow the rules. Think about other applications you've used and push back on all features, punting as much as you can for as long as you can.

Avoid complexity at all costs. Break stuff apart into smaller pieces, and write code that's easy to replace.

Everything said and done, I think I'm just cranky at these types of articles that just indicate to me a point of view of someone unwilling to learn new things, or try new tools. I keep an eye on so much, and have for over two decades in dealing with web-based applications. I'm surprised how much the attitudes of some haven't changed in two decades.

<comment><USER16> > Many snobby backend developers

They are still "web". Try working with C++ hard-heads. Everything from Jenkins, cloud services, application release over the web, to SPA visualising 3D point cloud is a "stupid HTML website". All they want to know is WHY IS IT TAKING SO LONG?! At least that was the case in one of my workplaces.

<comment><USER17> > WHY IS IT TAKING SO LONG?!

Kind of how I feel waiting for C++ to compile

<comment><USER16> It's the linker.

</comment></comment></comment></comment><comment><USER18> Great read! There's a lot of truth to this, but in my 18 years of being a dev, the major reason _anything_ fails usually comes down to poor understanding and miscommunication from the higher-ups. Customers either don't know what they want or are too lazy to articulate it. Management is usually technology- clueless and, as the article points out, has no idea how much time, money, and effort is truly required to build a high-quality maintainable app. Add to that the sea of frameworks, libraries, "tech stacks", standards, and trends, and you have a recipe for disaster.

Technology is also becoming increasingly layered and interdependent on brittle infrastructure. Abandoned projects can be a huge time waster as well, especially when they break. For example I've been working on trying to fix an abandoned web application written in an odd combination of languages and frameworks with a testing suite filled with old libraries and test scenarios that no longer make sense.. This thing is not broken, it's shattered. It's taken our team two entire sprints to get it somewhat working again. That's the reality of modern software engineering.

</comment><comment><USER19> My go to point on this subject is even if you have the perfect front end it won't save you from a slow DAL. I'm not sure why we aren't allowed to be full stack developers anymore because having a say in both the front and back end is a great way to prevent frivilous work from being done.

<comment><USER20> All we need now is a MySQL client written entirely in JavaScript.

<comment><USER19> Then it will be everyone's fault.

</comment></comment></comment><comment><USER21> I'm convinced SPA are the future -- they're more than about fitting all your stuff on to a "single page", the concept of a page doesn't go away in SPAs, it's just the implementations and strategies for loading and state management that are different. A better way to think about them is as "client side rendered" applications. The reason I think SPAs are the future, the premises are simple:

\- Processing power of client devices will only grow, compute will cheapen but communication costs (speed of light/fiber/etc) are cheapening at a much slower rate.

\- Repeatedly sending layout is wasteful, given site architectures that render the same page repeatedly

\- Separation of UI and data is generally a good idea

\- Sufficiently advanced SPAs offer Server Side Rendering (SSR), which makes them almost equivalent and yet more reusable than the alternatives (Java's JSP stuff, ASP.NET's ASPX mess, Ruby's ERB + layouts + partials stuff, Django's Jinja + layouts + partials stuff)

Mark my words, when wasm is widely accepted and lots of languages start compiling to it, people are going to start porting the SSR alternatives (JSP, ASPX, etc) to run on the frontend to achieve this same exact goal. I can't wait to see someone post on HN about "JSP in the browser".

There are of course a few things to keep track of, If sophistication in quantum communications grows faster than everyone expects, the landscape changes drastically. As a complete layman it seems possible to me to imagine arrays of entangled atoms being used at ISPs (possibly forced to be closer together) to reduce RTT to effectively near zero which fallback to regular over-the-wire communication for error correction or whatever else.

Almost 100% of the problems I've seen expressed with SPAs is from tooling or developers doing it wrong. Maybe that's it's biggest weakness, along with being an approach prone to accidental complexity.

</comment><comment><USER22> For the most part all you need to ask yourself is this:

Must full page reloads be eliminated?

(That's the real defining characteristics of SPAs)

For 95% of businesses a PWA with occasional full page reloads will be fine.

But for 5% of (mostly large) businesses, a kick ass SPA will be necessary.

<comment><USER23> That's a great technique that I prefer - full page reload for links that have large screen changes i.e. page navigation - spa for page-specific interactivity i.e. filters, edits, updates

Not having a client-side router strips out so much spa complexity.

maybe for apps where you really need persistent state i will use a router/full-spa, but a lot of apps don't need full persistent state across all page navigations.

<comment><USER14> In a way you are just moving the complexity back to the server code. I am not sure that helps in any way.

The server will now have to have state or reload state on every request and that state could include many things that are not obvious like

\- what page are you on \- which links should be shown in the menu \- are there other things on the page that needs to be shown that has little to do with the current request-path

<comment><USER9> A lot of that complexity belongs on the back end.

Every front end page is likely to have a separate number of REST endpoints, so the code is effectively duplicated.

In my experience keeping as much of the code on the back end eliminates a lot of complexity, though I am far more competent with backend technologies, but I have yet to see a SPA app that reduced complexity.

</comment></comment></comment></comment><comment><USER24> Summary: inexperienced developers create bad software. Who knew.

Our SPAs are thouroughly tested (TDD, near 100% coverage). We make them mobile-first offline-first so they can be embedded in a phone app as well.

For CRUD, things that need to be searchable and things that need to work withoutJS, we usually have a rails/node app that renders views the classic way: server-side.

For static websites, we try to use static page generators like jekyll

<comment><USER17> > inexperienced developers create bad software.

A vast number of websites suffer from these problems. Therefore - <USER2> definition of "inexperienced" must apply to ~70% of web developers.

Maybe when the problem is this extensive it's time to stop blaming individuals and look for systemic problems.

<comment><USER25> In my opinion a large percentage of web developers really are unskilled. I blame the prevalence of those three week development bootcamps, you have a lot more of those for web development than backend/application stuff

</comment></comment></comment><comment><USER26> Again? Single page apps refresh and respond faster than their HTML counterparts. Sounds like a mad backend dev posting hate for the evolving front-end world because they don't want to learn new stuff.

<comment><USER27> Nope, he is a "Front-end web consultant and coach": [https://tinnedfruit.com/](https://tinnedfruit.com/)

</comment></comment><comment><USER28> I'm building something that's very single-page app for the first time. A project to use flask, sqlalchemy, and ajax and really just do some fun flashy things, not necessarily practical things, but I do feel like the SPA space is much better than last I'd looked. I definitely see how it's easy to create something bad in a SPA doing it all yourself. My code right looks like that horse, with 500 lines of jquery full of repeating functionality still in snippet form. But really, the horses face is just as ugly as his ass.

</comment><comment><USER29> Last year, I wrote a small single-page app engine that takes a JSON representation of HTML, and writes it to the DOM to build the page in the browser. The entire app is described in one JSON document, so it's quick to download and needs no network to change pages. I'm slowly starting to develop it again. The demo site is still up (with a SPA builder) at [https://sparational.com](https://sparational.com) and you're welcome to suggest any improvements.

<comment><USER30> Either masterful satire or, ahem, you may want to check your server.

<comment><USER31> Breaks without www: [https://www.sparational.com/](https://www.sparational.com/)

<comment><USER32> Seems to break on browsers older than last week too.

</comment></comment></comment></comment><comment><USER33> What about using an iframe and refreshing it with links targeting it ? Use <link rel="preload" ...> to make it really fast. Do so for any subcomponent of your page that can be updated independently of the rest of the page. Use browser caching for code assets/dependencies.

Pros: cheap & fast (?)

Cons: obviously the logical structure of your app must (somehow) follow the structure of nested iframes in the page.

<comment><USER26> I think iframes are inferior to the JS approach for a few reasons, one is usability for people with screen readers / etc - others would be standards compliance, bookmarking, managing state when pieces do need to talk to each other, etc.

</comment></comment><comment><USER34> The problem is that there is a lot of immaturity within the JS world at the moment. And that makes the complexity go "BOOM".

Thing about it. Should things really get more complex just because we are moving more of the computation to the client rather than having it sit at the server? Done right it remains the same.

<comment><USER26> State management is hard. It goes boom because lots of things are going on, not because browsers are naughty.

</comment></comment><comment><USER35> My ability to rationalize and manage SPAs dramatically improved once immutable data and functional programming techniques were introduced.

But that can probably be said for any programming environment.

<comment><USER36> Learning ClojureScript w/ Reagent and re-frame made me feel for the first time like my sanity is not under constant attack when doing web work.

Still, building SPAs where a reloading site would suffice feels bad, and upgrading to CLJS is like adding a filter to a cigarette. Still not good for you or your surroundings.

</comment></comment><comment><USER37> Going from little jQuery scripts to full JS applications is difficult. People with desktop UI experience know this, but many JS devs don't.

Another problem is that we still haven't figured out the best way to write JS SPA applications. Even the React team is improvising as they go along. If you need any more proof just look at the new hooks api.

</comment><comment><USER9> This describes the monstrosity I am maintaining just now incredibly accurately.

</comment><comment><USER38> This remembers me the timeless "Do Things that Don't Scale" by @pg.

[http://paulgraham.com/ds.html](http://paulgraham.com/ds.html)

<comment><USER39> I don't see the connection to the article, what do you relate to it?

<comment><USER38> Why create a framework when you just want to display html?

</comment></comment></comment><comment><USER40> >Single-page web applications damage businesses.

plus some good points

p.s. I thought vue came before react, but it's the other way around. Interesting

<comment><USER41> Vue arguably began while it's creator was working on Meteor, a monolithic full-stack platform for making reactive SPA's with thick clients sending data over the wire. This was around the time where app front-ends we're trending more towards data-reactivity as opposed to server-rendered AJAX-style. Vue's creator Evan was part of the Meteor core team, which came before React. Evan left meteor to work on Vue, which was inspired by many front-end frameworks, such as Angular, Polymer, Handlebars, and React. React and Vue are contemporaries.

</comment></comment><comment><USER37> We're experimenting with Jekyll + Vue and it's working great so far.

</comment><comment><USER42> TL;DR: try not to suck.

Seriously, if you're committing mistakes 1, 3, and 4, then your multi-page website is going to be awful, too. "SPA or not SPA" is far down the list of questions you need to be asking yourself.

</comment><comment><USER43> This misses the main reason for SPAs which is separation of concerns. Keep your biz logic out of your UI. Test your tiers independently. Refactor your tiers as required and if you did it right you can rewrite you api without messing with your UI and the same the other way.

Want to change your backend from C# to go? Easy. Want to change from angular to vue? Easy.

But programming is hard, and doing things for the long game is harder, and finding people with the skill and experience to pull it off is harder still.

Or... you could put all your biz logic in stored procedures and wrap it all with a nice .net Razer frontend, throw in a bunch of third party controls and call it a day.

<comment><USER18> "Separation of concerns" is only possible if leadership deems it's necessary. Often times devs are told to just put tbe business logic in tbe front-end because it's easier and scrum masters get a pat on the back for completing more points. Technical debt be damned.

<comment><USER43> "Leadership" should not have any say in what is necessary for a domain they don't understand. If someone wants to sacrifice the quality of their trade then that's their own business. If I tell a plumber I'm OK with cutting corners and he listens, I don't want that person to be my plumber. Devs should take their job as seriously.</comment></comment></comment>


A Checker for Open Source Projects - <AUTHOR> https://wospm.github.io/checker/ <comment><AUTHOR> This is a command-line tool for project owners to measure if their open source project is welcoming contributors or not. The tool checks the repository against a list of metrics and the metrics are mostly inspired by Github's Open Source Guides.</comment>


Need help - <AUTHOR>

I need 2-3 technical partners to start an online based network/website. If you are interested contact me please! Need partners who know webdesign/platform building and coding. <comment><USER2> You're going to need more than 29 words.

What is your idea? Why will people like it? Why would a hacker want to work on it? Is it viable? Is it viable with the economy in the toilet? Where are you? Do you want your tech founders to move to you? How do people contact you? Etc.

<comment><USER3> there is a reason, the username is non-hacker, go easy :-)</comment></comment>


Bill Gates and Paul Allen reprise classic Microsoft photo, three decades later - <AUTHOR> http://www.geekwire.com/2013/bill-gates-paul-allen-reprise-classic-microsoft-photo-decades/ <comment><USER2> Who are they trying to fool? Did they think nobody would notice the Intertec Superbrain replacing the Datapoint 8200 or the Sanyo 555 taking the place of the NEC PC-8001?</comment>


An Intro to the Plan 9 OS [video and slides] - <AUTHOR> http://sse.se.rit.edu/programs/tech-talks/plan-9

<comment><USER2> Every now and then a _really_ new thing comes along, and Plan 9 is one of those things. It's been quietly waiting in the wings for its moment to shine. There are days I wished that Plan 9 had been released as GNU licensed open source back in the days when Linux first got going, or something more along the lines of QnX, lots of things are unnecessarily hard the way they are now.

<comment><AUTHOR> We (the Plan 9 community) figure that not initially releasing it as open source cost us Linux's current place. As it stands, we didn't open source until 2000.

But we wouldn't have put it under the GNU license in any circumstances, we have grievances against GNU :)</comment></comment>


Ask HN: Best books/articles/etc on creativity? - <AUTHOR>

What are the best sources (books, blogs, articles) of information on creativity you've come across?<p>By best I mean likely based on academic research and devoid of fluff/fillers/shallowness? <comment><USER2> I would suggest Creativity: The Psychology of Discovery and Invention by Mihaly Csikszentmihalyi [1]

I have not read the book yet but it is on my reading list. I'm currently going through "Flow: The Psychology of Optimal Experience" [2] by the same author and it is illuminating to see the author examine a simple process such as enjoying a walk and reveal the intricate interplay of our consciousness, attention and self.

[1] [http://www.amazon.com/Creativity-Psychology-Discovery- Mihaly...](http://www.amazon.com/Creativity-Psychology-Discovery-Mihaly- Csikszentmihalyi/dp/0062283251/ref=la_B000AQ1KVM_1_2?s=books&ie=UTF8&qid=1406403969&sr=1-2)

[2] [http://www.amazon.com/Flow-Psychology-Experience-Mihaly- Csik...](http://www.amazon.com/Flow-Psychology-Experience-Mihaly- Csikszentmihalyi/dp/0061339202/ref=sr_1_1?s=books&ie=UTF8&qid=1403718356&sr=1-1&keywords=flow+the+psychology+of+optimal+experience)</comment>


Show HN: LAMB – Local Area Message Board - <AUTHOR> http://getlamb.com/

<comment><USER2> I have to admit that I thought at first when you said this was Local Area that it would be run on a network with no outside of network access (which would be a cool app, I think). Obviously, that is not what this is.

Very nice site though and I do get what you are going for. I imagine though that success will only come with very high adoption rates. Without that there will be no one to post to. And of course, you can't get very high adoption rates without having people to... post to. So it's a bit of a chicken and egg issue. How are you hoping to combat that?

<comment><AUTHOR> Hey! Thanks for your feedback. You're right, it is a bit of a chicken and an egg issue. One way of combating it was to make automated posts in preset areas based on target demographic and population rates. Outside of that, I believe for an app that requires people in a certain area to adopt in order to generate activity, it becomes more difficult to gain popularity all around.

</comment></comment><comment><USER3> Just tried loading the site on my phone, gave up after 30 seconds of the loading spinner - could be that it doesn't like mobile devices or that the site is down but I thought I'd mention it.

<comment><AUTHOR> Loading fine in both browser and mobile. Do you have Javascript enabled?</comment></comment>


Schneier on Security : Fixing Intelligence Failures - <AUTHOR> http://www.schneier.com/blog/archives/2010/01/fixing_intellig.html#comments

<comment><AUTHOR> One point Schneier made is about the "generational gap" in technology. But I think this is wrong - I left this comment:

The real divide is between people who are comfortable with technology and those who aren't. The divide is sharper now for several reasons: first, higher technology is harder to understand so fewer are intellectually capable. Second, even formerly high technology requires effort and fewer seem to be making even the effort to understand how basic electricity and automobiles work, how many people now routinely change their own oil or really do any other maintenance on their own cars (which was normal in the 1970s). Finally, the US (and probably other Western countries) have been picking up the aristocratic and Hispanic disdain for people who do manual work (see the chapter on Feynman's visit to Brazil in "Surely You're Joking, Mr Feynman!" for how this attitude can screw up even academic physicists).

Learning to use the technology, more or less by rote, is not the same as understanding it. And I have seen no evidence that people who routinely use the Web and its accretions actually understand it any better than they do cars or electricity.

Those of you who are younger may not realize quite how things have changed since the 1970s. The majority of men I knew then usually changed their own cars oil, and often did a lot of their own maintenance work. How many of the people that use computers now know _anything_ about how they actually work, can do any programming, or understand the basics of internet routing or how viruses and other malware infect their computer? Judging from what I have read on HN and the Daily WTF even many, maybe most, so-called computer professionals don't understand what they are doing.

Also see <http://news.ycombinator.com/item?id=1056904></comment>


Show HN: built this mini app today for micro-journaling, my favorite new hobby:) - aj-4 https://onelinelog.com/ <comment> aj-4 ps: login feature does not save any user data</comment>


Using neural nets to recognize handwritten digits - <AUTHOR> http://neuralnetworksanddeeplearning.com/chap1.html <comment><USER2> Very well written, and I applaud the effort. But personally I don't care for the "magical" aura that writers tend to give ANNs - to me, they are simply (non-linear) function approximators that have a nice fitting algorithm. They work well for some problems and poorly for others. Also, beware of over- fitting - ANNs tend to be parameter-heavy, although there are approaches to prune the connections.

<comment><USER3> >they are simply (non-linear) function approximators that have a nice fitting algorithm.

Couldn't "function approximator" describe most machine learning approaches? And a nice fitting algorithm is of course the goal.

<comment><USER4> Yes.

I'd go further - the "nice fitting algorithm" is to minimise the error on the training set as a function of the weight parameters, and one obvious way to (locally) minimise that is gradient descent + the chain rule.

The math / applied math machinery is all incredibly general, and a useful way to think about many machine learning algorithms.

[http://en.wikipedia.org/wiki/Gradient_descent](http://en.wikipedia.org/wiki/Gradient_descent) [http://en.wikipedia.org/wiki/Chain_rule#Higher_dimensions](http://en.wikipedia.org/wiki/Chain_rule#Higher_dimensions)

Not to say that applied math is the only valuable perspective to think about, there's clearly also statistical and computational views as well. E.g. we're trying to approximate a function that we can never directly evaluate (error on the samples we havent seen yet)

</comment></comment></comment><comment><AUTHOR> If you liked his first chapter, consider supporting his IndieGogo campaign for the whole book ([http://www.indiegogo.com/projects/neural-networks-and- deep-l...](http://www.indiegogo.com/projects/neural-networks-and-deep- learning-book-project/)).

<comment><USER5> In case the author is reading this thread - might be worth adding a couple more reward tiers, for example an equivalent of the "major sponsor" on an individual level, maybe $30-60 to be named somewhere as a supporter. $15-$200 seems like a very big gap (and of course you can chose to donate in between, but I presume that reward tiers are effective in pushing people to donate more).

Looking forward to reading chapter one when I have time, though I suspect it will confuse me quite a lot...

edit: I see he is, already commented before I wrote this

</comment></comment><comment><USER6> _" The adder example demonstrates how a network of perceptrons can be used to simulate a circuit containing many NAND gates. And because NAND gates are universal for computation, it follows that perceptrons are also universal for computation."_

I think this comment from the article needs caveats. Of course, a neural network would not qualify as Turing Complete just because it's finite. Keep in mind also that neural network, lacking anything like counters, tape, or recursion, couldn't approximate a Turing in the way that a finite Von Neuman architecture machine does. (A NN can represent any given function over a domain if it get large enough, kind of the universality of a finite automaton).

I know this a reference to this generation of NN having overcome an earlier problem of _not_ being able to represent a NAND gate but still, it's worthing keeping mind that an ordinary computer can simulate an NN with just a program but this doesn't work vice-versa, so that NN's in that sense are far from universal.

<comment><USER7> Networks of perceptrons are universal in the standard sense used when talking about circuits --- they can compute any finite Boolean function.

I agree that the relationship between circuit complexity and Turing machines is somewhat subtle, for the reasons you mention. The relationship is greatly clarified by the notion of uniform circuit complexity, which makes it possible to prove an equivalence between a (carefully defined notion of) circuit complexity and Turing machine complexity. Unfortunately, I don't know of a good online treatment of uniform circuit complexity. I learnt it through a 1993 paper by Andy Yao, but that's definitely not a good introductory reference!

In any case, in my book I'm using the term universal in the same way as people usually use it for circuits, i.e., it means the same thing as when people say that the NAND gate is universal for computation. Hope that clarifies things.

</comment></comment><comment><USER8> This is a cool exercise! After completing it, I wanted to find out exactly what each NN hidden node represented. I trained a tiny (10 hidden node) NN on an OCR dataset and created a visualization here: [https://rawgithub.com/tashmore/nn- visualizer/master/nn_visua...](https://rawgithub.com/tashmore/nn- visualizer/master/nn_visualizer.html) .

Can anyone figure out what each hidden node represents?

You can also select a node and press "A" (Gradient Ascent). This will change the input in a way that increases the selected node's value. By selecting an output node and mashing "A", you can run the NN in reverse, causing it to "hallucinate" a digit.

</comment><comment><USER9> What about convolutional neural nets? They weren't mentioned, but that's really what most of the deep learning approaches use...

<comment><USER7> They're discussed later in the book. The first chapter is an introduction, and I didn't want to introduce convolutional nets before (for example) fundamental techniques such as stochastic gradient descent and backpropagation.

<comment><USER9> Great! How far does the book go in terms of advanced approaches? Up to the current state of research?

<comment><USER7> My current plan is to describe some pretty recent results -- most likely, the big breakthrough on ImageNet by Krizhevsky, Sutskever and Hinton ([http://www.cs.utoronto.ca/~ilya/pubs/2012/imgnet.pdf](http://www.cs.utoronto.ca/~ilya/pubs/2012/imgnet.pdf)), which uses convolutional nets. I may also describe the famous Google-Stanford "cat neuron" paper ([http://ai.stanford.edu/~ang/papers/icml12-HighLevelFeaturesU...](http://ai.stanford.edu/~ang/papers/icml12-HighLevelFeaturesUsingUnsupervisedLearning.pdf) ). But at this point things are moving so quickly that I'll keep my options open, and if more exciting things come up, I may change my plans.

Of course, there's a tremendous amount going on, so my broader philosophy is to focus on fundamentals. Readers who thoroughly master the core ideas shouldn't have much trouble later getting up to speed with the result-of-the- month.

<comment><USER10> >some pretty recent results -- most likely, the big breakthrough on ImageNet by Krizhevsky, Sutskever and Hinton ([http://www.cs.utoronto.ca/~ilya/pubs/2012/imgnet.pdf](http://www.cs.utoronto.ca/~ilya/pubs/2012/imgnet.pdf)), which uses convolutional nets.

kernels learned by the first convolutional layer (the figure 3. on page 6) have uncanny resemblance to Gabor function-modeled orientation-selective cells ("bars and grating cell") in the primary visual cortex. Looks like computers are on the right track :)

[http://www.cs.rug.nl/~petkov/publications/bc1997.pdf](http://www.cs.rug.nl/~petkov/publications/bc1997.pdf)

"The discovery of orientation-selective cells in the primary visual cortex of monkeys almost 40 years ago and the fact that most of the neurons in this part of the brain are of this type ..."

The difference here is a "number game" \- visual cortex contains cells whose receptive fields' positions, eccentricities, sizes, orientation, number of excitatory and inhibitory zones (e.g. Fig.1 in the link) make a reasonable coverage for the space of possible values. Ie. the number of these cells is in the millions vs. 96. Of course it is only a matter of computing power to run all reasonable combinations of kernels emulating the real visual cortex, yet it would put immense computational challenge onto the second and next layers until we understand what [should] happens there.

<comment><USER11> FWIW, many vision researchers believe that the resemblance of the first convolutional layer to Gabor filters is perhaps more a case of selection bias than anything else. The argument goes that were they _not_ the output of the first layer, that paper wouldn't get accepted =)

I'm not sure if I fully believe this, but certainly there doesn't seem to be a very principled way to choose your network architecture. Different people propose different ones, and the fundamental justification for each one seems to be: "look, we recreate gabor filters in layer 1 and we get good numbers at the end!"

Of course, NN people argue that that's almost exactly what vision people do as well, except in "feature-land" rather than "architecture-land".

<comment><USER10> >FWIW, many vision researchers believe that the resemblance of the first convolutional layer to Gabor filters is perhaps more a case of selection bias than anything else. The argument goes that were they not the output of the first layer, that paper wouldn't get accepted =)

well, i can see the temptation - the orientation and spatial frequency selectivity are the major characteristics of cells in V1 and the receptive field for the first layer there does look like Gabor

[http://www.scholarpedia.org/article/Area_V1#Receptive_fields](http://www.scholarpedia.org/article/Area_V1#Receptive_fields)

I agree that such a good resemblance of the learned kernels to Gabor is too good, this is why i used "uncanny" :) If it is real then i think it manifests very interesting and, no pun intended, deep emerging properties of the neural net learning process (something along the lines "maximum entropy kernels while still doing the job" as the asymptotic state)

Btw, is it really selection or confirmation bias?

And to expand on previous point of convoluting the input with many-many kernels - happens to be at the order of 40 per "pixel":

"V1 contains a vast number of neurons. In humans, it contains about 140 million neurons per hemisphere (Wandell, 1995), i.e. about 40 V1 neurons per LGN neuron. Such divergence gives scope for extensive processing of the images received from LGN."

</comment></comment></comment></comment></comment></comment></comment><comment><USER12> Ahh, the MNIST database of handwritten digits. I never took an ML course and I was only able to achieve 87% recognition rate 6 years ago for a university software engineering project. I read others achieving 99.9% recognition rates with their ANNs so I wasn't happy with my result. I tried to self-study about ANNs but I found most material to be either too simple or too complicated. I finally found some articles about ANNs ([http://visualstudiomagazine.com/Articles/List/Neural- Network...](http://visualstudiomagazine.com/Articles/List/Neural-Network- Lab.aspx)) with code samples in C#, so I'll finally be looking into rewriting my old code to get a better result.

</comment><comment><USER13> That reminds me of a video I saw about something called restricted boltzmann machines:

[http://www.youtube.com/watch?v=AyzOUbkUf3M&t=24m0s](http://www.youtube.com/watch?v=AyzOUbkUf3M&t=24m0s)

<comment><USER14> Caveat emptor. Geoff's videos are a great way to launch into the field of deep learning, but do bear in mind that they are beginning to age. A lot of the stuff about why things work, what is state-of-the-art, and where the work is headed is now dated (even according to Hinton himself).

</comment></comment><comment><USER15> I'm not sure if I am making a mistake, but I couldn't use the command listed in order to clone the repository. I'm using windows, with git installed, and I received the error: "Permission Denied: publickey"

I was able to get everything by looking you up on github and using the url of the repository.

Edit: Also, you might mention the repository earlier, because it's rather large and I've had to break from the book while it downloads.

<comment><USER7> Thanks for the tip, I'll look into it!

</comment></comment><comment><USER16> I did exactly this for a school project about a year ago:

[https://github.com/bcuccioli/neural-ocr](https://github.com/bcuccioli/neural- ocr)

There's a paper in there that explains the design of the system and my results, which weren't great, probably due to the small size of training data.

</comment><comment><USER17> Isn't that the same material covered on Andrew Ng's Coursera course "Machine Learning", down to the training data?

<comment><USER18> It may well be similar material to Ng's Coursera course, but the table of contents on the right shows that this is obviously going to transition into the topic of deep networks -- part of Ng's research but not his Coursera course.

The training data is the MNIST dataset released by NIST some time ago, anyone is allowed to use it. It truly is no surprise to see it here, as it is very a very commonly used dataset in ML tutorials/books. It receives some discussion in Artificial Intelligence: A Modern Approach by Russel and Norvig, and even in the Theano getting started tutorials.

<comment><USER14> That's right. In fact, for a subclass of image recognition tasks, MNIST has become the standard benchmark. Pretty much all of Geoff Hinton's early work on deep learning used MNIST to track the progress of his (their) methods.

In fact, if the goal of the book is to educate people on the field then I would say it's definitely best to use the standard benchmarks. It lets readers relate what's in the book to the literature, should they desire, and just like in academia, it lends credence to the author's statements. I've seen people take a _lot_ of flak for publishing writings that don't use the standard datasets, but make claims of progress.</comment></comment></comment>


Long-Lost Mozart-Salieri Collaboration Found in Prague - <AUTHOR> http://www.abc.net.au/news/2016-02-13/mozart,-salieri-composition-found-in-prague/7165566 <comment><USER2> The movie Amadeus is about god-given genius versus mere human skill, and Mozart and Saliere are used in the movie as archtypes representing each. It is not intended to be historical, and the relationship between the two composers were totally different in real life.

It's a great movie, but it is not very historical correct, and does not intend to be.

<comment><USER3> It's certainly not accurate, but the characters are totally believable and there's nothing that does not make sense as long as you accept the premise of the movie. And the inclusion of Mozart's score is brilliant from beginning to end.

<comment><USER4> Tom Hulce's portrayal of a cultured, clever, hardworking man as some kind of ethereal buffoon couldn't have been farther from reality. The false picture that it presents of talent would be harmful to those that it might have influenced.

The defense that the characters were meant to be iconic stand-ins is also undermined by the inclusion of so much accurate trivia (in addition to the many inaccuracies)

<comment><USER5> The character of Mozart in Amadeus is more frivolous, more alcoholic and more undisciplined than the real Mozart could have been, given his extraordinary compositional output over such a short lifespan. But the film also shows Mozart taking his art incredibly seriously and with a sense of great dignity. He's determined to make time for working very hard (even as he lays dying in bed), and fights movingly and eloquently for the commission of works he passionately wants to create. And that passion is shown to be driven by a need to express vital things about the human condition, with all its weaknesses and sense of fun and as well as its sublimity. He's not just a buffoon, the character has real depth.

The real Mozart on the other hand, as we know him from his letters, did have a penchant for the vulgar, for the irreverent, for scatalogical humor, for good booze, for pretty ladies, and all the rest of it. Of course that's just one side of him.

Young musicians aren't so incredibly stupid as to be "harmed" by Amadeus – it's clearly entertainment. One of its messages is that you can dedicate yourself absolutely to the development of your art while retaining a sense of playfulness. Another message is simply that this music is incredibly rich and exciting and profound, music you can explore for a lifetime.

</comment></comment></comment></comment><comment><USER6> Is there a more slandered person in all of history than Salieri? This is the man who murdered the world's greatest musical genius in his prime out of jealousy ... except that he fucking didn't, and the notion is ridiculous. The man whose music wasn't performed in many countries as a result of this belief. The man whose name became synonymous with talentless mediocrity - just because we don't listen to opera from his period as much as we listen to some other stuff.

<comment><USER7> I'm taking a guess that you probably weren't a personal witness to the interactions between Salieri and Mozart and thus can't say for sure if he was involved with Mozart's death.

What _is_ a historical fact is that Salieri openly and explicitly prevented Mozart's career from going where Mozart wanted it to go. Mozart's talent won in the end, but Salieri _did_ go to great lengths to try and keep Mozart from thriving. He was well-known to have placed many walls in the path of work for Mozart, and this led to the reputation he has -- a product of his own making.

Whether or not he actually killed Mozart we can never truly know. But that there is this "rumor" that he might have is only due to Salieri's own awful behavior in the treatment of Mozart.

<comment><USER8> >What is a historical fact is that Salieri openly and explicitly prevented Mozart's career from going where Mozart wanted it to go.

Quotes from credible modern historians please. To my knowledge most historians think that there is no concrete evidence of this. There was just competition for jobs. Rest is drama added later.

>Whether or not he actually killed Mozart we can never truly know.

Good example of the false rumor. Salieri seems to even have confessed the murder when he was delirious but nobody believed him even then. Later he took that confession back.

<comment><USER7> If you consider Mozart's own letters to be credible historical sources, he wrote about Salieri's attempts to sabotage his career.

<comment><USER6> There is correspondence between Mozart and his father about a cabal of Italians (especially the court composer Salieri) hindering him. I would say this reflects worse on the Mozarts than it does on Salieri, who spent almost his whole life in Vienna and didn't belong to any Italian cabals. In any case, Mozart established himself rapidly in Vienna and his complaints about Salieri, with whom he had friendly relations, trailed off.

This kind of thing is now a reason to accuse someone of the lowest kind of murder out of jealousy?</comment></comment></comment></comment></comment>


What's wrong with having '.' in your $PATH? - <AUTHOR> http://www.faqs.org/faqs/unix-faq/faq/part2/section-13.html

<comment><USER2> This is more of a tip than a warning. This answer was clearly written when *nix systems were largely multi-user systems. The security reasoning doesn't hold at all on personal computers - in fact I'm going to add "." to my PATH for sure now, hadn't ever considered it. (I'm pretty sure I don't leave malicious executables "lying around" my mac, and if I somehow did that'd be my own dumb fault).

<comment><USER3> A lot of the classic Unix security advice is pretty outdated. For example the idea that someone getting "root" access is worse than someone gaining "ssp" access. Everything interesting is already readable and writable by ssp. The only new thing root can do is destroy stuff that can pretty easily be recreated.

The root account is still useful to prevent ssp from accidentally screwing things up, but as a security measure it's pointless in many cases.

<comment><USER4> ssp oughtn't be able to make arbitrary alterations to the kernel, though. As such it's a lot harder to hide your tracks as ssp than it is as root.

</comment></comment></comment><comment><USER5> Having . in your $PATH isn't a major security issue on its own. I'd classify it at S3. The problem with S3s though, is that two separate S3s can combine to create an S1 or an S0, which can bite you.

If you've had . in your PATH for a long time and never had a problem with it, it's either because there isn't anything else open that makes this an issue (fairly likely), or that no one's really bothered to exploit your system (also fairly likely)

</comment><comment><USER6> I never considered having "." in my $PATH because typing "./" is very convenient in the us keyboard layout.

<comment><USER7> Slightly off-topic but it seems to me that most keyboard layouts but the US seem to be completely retarded—almost bordering a conspiracy—with regard to usability when coding, using emacs and using the unix shell.

When I see someone coding with a non-us layout I smell the humble inexperience and nod with compassion. The difference between layouts can be astonishing if you only bang a lots of []{}|/\?-=+_-*()@#$'s. For some reason, computer languages are full of those.

I use the us layout all the time except when I have to write something in my native language and need the umlauts more easily. I remember the killing pain of trying to write code in it until I realized I can just turn on the US keyboard. Luckily, that was before my career...

<comment><USER8> Actually QWERTY was created to slow typists down. Back in ye olde days, when typewriters were still around, there was the problem where people who typed to fast would jam the typewriters. Thus, QWERTY was invented to slow people down so the typewriters wouldn't jam. Then, when computers came along, everybody knew QWERTY, so they continued using it.

<comment><USER9> That's an apocryphal story, though. QWERTY was said to have been invented, actually, to make it easier for typewriter salesmen to type "TYPEWRITER", all from the top row.

</comment></comment></comment></comment><comment><USER10> I avoid adding '.' to my path because I work on a lot of different linux and unix systems as part of my job, and having a consistent command line I can use without having to remember where I am and how I set things up is more productive for me than saving a bit of time on my personal system.

For the same reason I don't use a custom .vimrc file; it's great when on a configured system but causes problems elsewhere.

<comment><USER11> For years I held a similar philosophy, then I decided, "Screw it, I can just copy .vimrc and .bashrc to whatever system I need, and if that's not possible, I can adapt to the defaults." I haven't done too much customization yet, but after seeing some example .vimrc and .bashrc files online, there's a lot of potential for improving productivity.

<comment><USER12> Even better, keep them in a GitHub repository and include an installation script. All the comforts of home in a carpet bag.

</comment></comment></comment><comment><USER13> I had tried this, and had makefiles fail because of this. It seems that if you insist on saving $PATH this way, you should NOT to `export` it.

</comment><comment><USER14> 'Have had "." in my $PATH for 20 years. It's never been a problem... and probably saved me several hundred thousand keystrokes.

Having to worry about there being an "ls" in the current dir is about the same as worrying whether or not there are multiple versions of _any_ binary elsewhere in $PATH.

This is a non-issue.

<comment><USER15>
        wget http://some.dudes.site/cool_stuff.tar
        untar cool_stuff.tar
        cd cool_stuff
        ls

Oh but whoopsy-doodle, cool_stuff comes with this extra-cool script:

        cat ./ls

        #!/usr/bin/my-favorite-scripting-language

        do_sneaky_things :with => AllOfYourStuff && `rm -rf /`

<comment><USER9> If you're diligent to

      ls cool_stuff

before changing directories, it's less of an issue. And `rm -fr /' is less likely than `rm -fr ~', since most people don't need root access to call `ls'.

But still, I don't add '.' to my path because the only time I directly reference files in my current directory, it's because of a Zsh suffix alias.

</comment></comment></comment><comment><USER16> Fun corollary to this, having an empty element in your $PATH (for example, "/foo::/bar") is the same as having '.' in your $PATH, at least under bash.

This will usually happen when a login script puts the value of a variable in your $PATH without actually checking whether that variable has any contents.

</comment><comment><USER17> _This isn't 100% secure though - if you're a clumsy typist and some day type "sl -l" instead of "ls -l", you run the risk of running "./sl"_

If you're a clumsy typist, even if you don't have '.' in your $PATH, you might still type ./sl (instead of your intended ./ls) and get the "rogue" program to run.

I've had . in my $PATH for the last couple of decades. It's fine.

<comment><USER12> The point is that you would never tpye "./ls" when you meant to type "ls".

Or at least I wouldn't. I just grepped through (several years of) my bash logs and I have never once in my life typed "./ls", accidentally or otherwise. I consider this strong evidence.

</comment></comment><comment><USER18> Makes me think: the exploit he describes is the UNIX-predecessor of today's web's XSS attacks ...

</comment><comment><USER19> I'm really surprised over the complete lack of thought shown by people who spend time writing about this.

The problem isn't really about having . in your path, but the old mistake of having it _AS THE FIRST THING_ in your path, before your shell has a chance to reach its usual important locations (/bin, /sbin, /usr/bin, /usr/local/bin and so forth). Put it as the last thing in your path variable and you won't be having any problems worth mentioning (hey, even the OpenBSD guys finally went with this solution after having banished . entirely for years).

<comment><USER20> What about those of us who aren't 100% perfect in our spelling and/or typing of command names?</comment></comment>


Malware in Ad Networks Infects Visitors and Jeopardizes Brands - <AUTHOR> http://www.proofpoint.com/threatinsight/posts/malware-in-ad-networks-infects-visitors-and-jeopardizes-brands.php

<comment><USER2> ... at this point I think adobe has worn out their welcome. I'm actually surprised that security tools don't just uninstall flash player and acrobat reader preemptively.

<comment><USER3> And the Java Plugin as well. Outside the corporate world it's rarely used anyways (the plugin, not java in general)

<comment><USER4> Click-to-play is the best feature ever for these kinds of things - pick who you trust. I wish it were made the default.

<comment><USER2> Now that Apple has killed flash in so many use-cases, I think it would be palatable for major browsers to start forcing plugins like Flash, Java, Silverlight, and Unity to be "click to activate".

</comment></comment></comment></comment><comment><USER5> This is the reason I use adblock. I don't think blocking ads on websites is unethical because you should be able to decide what your computer does, but I think as long as the ads aren't horribly awful (in which case don't go to that site) I'd like to think having ads on is the right thing to do. Only that would be true in a perfect world were ad networks weren't vectors for malware. So I run adblock plus.

<comment><USER6> This. I think I've only ever once had a serious malware infestation on my main machine, and it was directly from a pop-up ad. Even the internet savvy can get caught out once in a while, or misclick a link, or click through a google result to something with automatically executing code.

I'll stop running Adblock the day not running it stops being like walking through a lion's den with raw antelope strapped to your danglies.

</comment></comment><comment><USER7> This is hardly a new thing.

Ad networks have always had (a very small %, but still there) a problem with people using exploits in flash ads. Especially ad networks for more 'dodgy' sites, that auto enable ads with no checking, no real checking if the advertiser is a legit business etc... (not that the adnetwork that this post is talking about deals with dodgy sites, but just saying its a common-ish problem (when given the 100s of thousands of ad impressions every day by ad networks).

I think i heard that malware nowadays is spread through more ads on adult websites (via 3rd party ad networks, not the sites themselves) than any other method, but i'm not sure on the source for that.</comment>


TheVane: Women's fashion recommendations based on the weather - <AUTHOR> http://thevane.com/

<comment><USER2> This is really cool! Or, weather information is something we typically decode to fit our lives, so its neat to see ideas that convey suggestions based off such data.

If I were a lady, I'd totally use this.</comment>


SF6 – Climate change: Electrical industry's 'dirty secret' boosts warming - <AUTHOR> https://www.bbc.com/news/science-environment-49567197 <comment><USER2> [https://en.wikipedia.org/wiki/Sulfur_hexafluoride#Greenhouse...](https://en.wikipedia.org/wiki/Sulfur_hexafluoride#Greenhouse_gas) _It was reported in 2013 that a three-year effort by the United States Department of Energy to identify and fix leaks at its laboratories... had been productive, cutting annual leaks by 35,000 pounds._ Maybe they should add some kind of smell and/or color so leaks are more noticeable.</comment>


New Material to Make Lithium Ion Batteries Self-Healing and Easily Recyclable - <AUTHOR> https://www.goodnewsnetwork.org/new-material-makes-lithium-ion-batteries-self-healing-and-recyclable/ <comment><USER2> Good ol disclaimer

> Although the researchers acknowledge that more work is required before the > material could be used in batteries that are comparable to what is in use > today, the team probed the conductivity of the new material and found its > potential as an effective battery electrolyte to be particularly promising.

<comment><USER3> Right.

Somebody should have a site which shows 1, 2, 5, and 10 years ago in battery technology announcements. There's at least one major battery breakthrough claim each month. These guys should shut up until they can at least light up an LED in the lab.

Could be worse. Remember uBeam, the ultrasonic power people? They're now called "Sonic Energy".[1] Still doesn't really work.

[1] [https://liesandstartuppr.blogspot.com/](https://liesandstartuppr.blogspot.com/)

<comment><USER4> My god, uBeam is still alive? By now, that _has_ to be the longest running joke in the Silicon Valley.

<comment><USER5> Longer than Duke Nukem Forever?

<comment><USER6> Duke Nukem Forever shipped eight and a half years ago...

<comment><USER7> Thus beating their target ship date of forever by infinity years.

<comment><USER8> On the contrary, they nailed the "when it's done" release target perfectly!

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> More discussion on [https://news.ycombinator.com/item?id=21919347](https://news.ycombinator.com/item?id=21919347)

</comment><comment><USER10> > Lithium-ion batteries are notorious for developing internal electrical > shorts that can ignite a battery's liquid electrolytes, leading to > explosions and fires.

That seems a little like scaremongering to me bearing in mind the number of batteries that are now deployed.

The use of the word notorious seems a bit over the top.</comment>


Predictors of mental health in employed adults with autism spectrum disorder - <AUTHOR> https://onlinelibrary.wiley.com/doi/full/10.1002/aur.2064 <comment><USER2> _" positive well‐being can be understood to encompass the hedonic experience of subjective happiness and life satisfaction, and the eudaimonic perspective of psychological functioning and self‐realization"_

I had never heard the term "eudaimonic" before and it is an interesting idea.

[http://positivepsychology.org.uk/the-concept-of- eudaimonic-w...](http://positivepsychology.org.uk/the-concept-of-eudaimonic- well-being/)

</comment><comment><USER3> From an outsider's perspective, it seems like an obvious hypothesis that increased happiness is negatively correlated with depression.

My question is, is this work assessing whether an existing, confirmed hypothesis (e.g. happiness counters depression) holds true for a different population, or is it assessing whether this hypothesis holds true at all [0]?

The paper appears to focus entirely on ASD subjects, so this delineation was not clear to me, at least on an initial skim of the paper.

Also, I feel like a more detailed treatment of hedonic and eudaimonic happiness from the perspective of ASD would have been beneficial in providing a better context to the reader. Maybe this is well-known in the domain?

[0] and happens to focus on this population for access, funding, or other ancillary reasons

<comment><USER4> From the paper, apparently this is entirely consistent with the general population:

"These results are consistent with research in the general population [Teismann, Brailovskaia, et al., 2018; Teismann, Forkmann, et al., 2018; Wilhelm et al., 2010] that shows well‐being functions as a buffer or protective factor against depression."

</comment></comment><comment><USER5> "We studied mental health and well‐being in newly employed adults with autism who were participating in a supported employment program."

Is the study trying to show that people with autism get brought up to the general population's base-line when there is a supported employment program?

<comment><USER6> Yes.

</comment></comment><comment><USER4> "Our findings suggest that positive well‐being may protect against symptoms of depression in people with autism."

Wait, so the theory is that if you're generally happy, you're less likely to be depressed? I know that depression and sadness are very different things, and happy people get depressed, but... it sure seems like you'd expect a correlation.

Not only does this seem a little bit obvious, it also doesn't seem immediately useful. And further down it notes that this is entirely consistent with research in the general population, so this result is... also totally unsurprising. Is there a reason _at all_ to believe that this would be true for people generally but not for people with ASD?

<comment><USER7> As far as I can tell, "well-being" specifically refers to the 14-item version of the "Warwick-Edinburgh Mental Wellbeing Scale", which contains items like "feeling useful" and "dealing with problems well" (things that you'd expect one would rate higher if you have a job).

[https://warwick.ac.uk/fac/sci/med/research/platform/wemwbs/](https://warwick.ac.uk/fac/sci/med/research/platform/wemwbs/)

You literally self-rate the fourteen items on a scale from 1 to 5: [https://warwick.ac.uk/fac/sci/med/research/platform/wemwbs/w...](https://warwick.ac.uk/fac/sci/med/research/platform/wemwbs/wemwbs_14_item.pdf)

<comment><USER8> What does it mean to score very poorly on this?

My therapist uses a different questionnaire that has more negative questions like "Little interest or pleasure in doing things" or "Poor appetite or overeating". I tend to do alright on that one.

However, I score over 2 on only a few of the items on the list you posted, and a lot of them are solidly 1. There's a feeling of tension, anger, and frustration I just can't shake.

There's a big difference (to me anyway) in the wording between "Feeling bad about yourself – or that you are a failure or have let yourself or family down" and "I've been feeling good about myself"

I wouldn't say that I feel like a failure (and I have nobody who cares enough to let down), but I sure haven't been feeling good either.

I don't know quite how to express this doctors and mental health professionals in a way they understand, though, and this scale really kind of illustrates it for me, so I'm wondering what that means?

<comment> master-litty I don't have specific advice regarding the score, but I do suggest any advice provided here be taken with a grain of salt. Not because of the community (I like to think we're all well-intending here, it isn't about that) but because we're simply strangers, and we don't know enough about you to provide an accurate answer.

Find a good mental health professional who will take the time and care to understand you, and show them the same thoughts you've shared here.

You shouldn't have to change your vernacular with a mindful professional. There's plenty of leads they can follow here -- And if you want effective answers about your feelings, that's who should be doing it! A true professional dedicated to figuring these things out with you.

</comment></comment></comment></comment><comment><USER9> i think theres lot of mis self diagnoses going on right now.

99% of people who are self diagnosed ASD, are 80% more likely to self diagnose.

This means that for the vast majority of engineers going around wearing their Aspergers badge are _not_ on the autism spectrum disorder.

<comment><USER10> You know, I'm not sure why people get so snooty about self-diagnosed ASD. (Speaking as some who was formally diagnosed as a child.) Our definition of autism is based on symptoms. This isn't like someone with a rash deciding it's caused by imbalanced humors. It's more like someone noting that their skin is red, itchy, and has little bumps on it, and deciding that they have a rash.

Also, the study specifically dealt with people who had formal diagnoses already, so I'm really not sure how your comment is even relevant.

<comment><USER11> > Our definition of autism is based on symptoms. This isn't like someone with > a rash deciding it's caused by imbalanced humors. It's more like someone > noting that their skin is red, itchy, and has little bumps on it, and > deciding that they have a rash.

No, it's not. A rash is a symptom, not a disorder diagnosed from a complex combination of symptoms; it's more like self-diagnosis of AIDS prior to the discovery of the role of HIV, and the use of HIV testing.

<comment><USER10> Our definition of autism, like many psychological conditions, is based on symptoms--behavior and development--not causes. We're learning more about the underlying reasons why brains work the way they do, so that may change eventually. But right now, if you have a large number of autistic symptoms, you most likely meet the diagnostic criteria for ASD.

In young children, the visible symptoms of autism may mimic other developmental conditions, so a professional diagnosis is important. An intelligent adult can make the distinction for themselves, given enough information. (Though they'll still need a diagnosis to seek treatment or accommodations.)

<comment><USER11> > Our definition of autism, like many psychological conditions, is based on > symptoms--behavior and development--not causes.

That's also true of many physical conditions with unknown causes, hence the comparison to pre-knowledge-of-HIV AIDS as a more apt comparison than a rash.

> But right now, if you have a large number of autistic symptoms, you most > likely meet the diagnostic criteria for ASD.

By DSM 5 criteria, you need either two or three symptoms (depending on exactly where you bound así for symptom) symptoms, manifesting by a particular time, with specific social impact, and all the potential symptoms (and the impact) are defined in a way that even an intelligent layman in a position to be objective rather than applying a bias from their own position is likely to have trouble applying them well.</comment></comment></comment></comment></comment>


InfoWorld Noise - <AUTHOR>

Since I cruise the New page fairly regularly I've noticed that one user is submitting a lot of InfoWorld stories that rarely get voted up. (See http://news.ycombinator.com/submitted?id=ccraigIW)
There are some gems there, but perhaps we should encourage this user to slow down a bit and submit less stories after considering which ones are likely to be a hit.
For example, there's a story on New right now about haptics (http://news.ycombinator.com/item?id=400944) which reads like a press release that's been reformatted into a story.  This has little value to HN.
In fact, it is a press release reformatted into a story: here's the press release http://www.sensable.com/pr_20081216OH3/news-press-detail.htm. <comment><USER2> I hate it when people register here and just start spamming submissions without ever commenting on _anything_. It seems like the people who actively participate in the community here are the ones most likely to have solid submissions.

On the other hand, this submitter seems like pure SEO BS.

</comment><comment><USER3> The best way to handle bad submissions is to simply ignore them, which is what seems to be already happening. Don't comment on them or vote them up.

<comment><AUTHOR> Not true if the volume of submissions is high. The New page is fairly short and knowing that x% is automatically rubbish is very annoying.

<comment><USER3> Its certainly annoying, but telling a spammer to stop spamming is unlikely to work.

</comment></comment></comment><comment><USER4> I find most InfoWorld content worthless. Either it's shallow or formatted over multiple pages you have to click your way trough and the site as a whole just doesn't seem to have much of substance at all.

Good job on confirming the press-release. I've had that suspicion for quite a few "articles" there.

<comment><AUTHOR> Here's my blog write up of the similarity between the article and the press release. It's pretty blatant: [http://www.jgc.org/blog/2008/12/how-to-write- infoworld-artic...](http://www.jgc.org/blog/2008/12/how-to-write-infoworld- article.html)</comment></comment>


Sed & Awk - Still friendly after all these years - <AUTHOR> http://www.itworld.com/operating-systems/100018/unix-tip-sed-awk-still-friendly-after-all-these-years <comment><USER2> I wouldn't go so far as to say "friendly", but sed is considered an absolute system essential by most (all?) Linux distributions and, therefore, is found under /bin instead of /usr/bin. Just like 'ls'.

It's hard NOT to like virtually guaranteed access to the power of regular expressions at any command line.

<comment><USER3> It is required for POSIX compliance.

<http://www.opengroup.org/onlinepubs/9699919799/>

</comment></comment><comment><USER4> +1. Changing the spacing in a file using sed is cool! Never knew this.

<comment><USER5> And a bunch of other things. See my article series on "Sed One-Liners Explained":

[http://www.catonmat.net/blog/sed-one-liners-explained- part-o...](http://www.catonmat.net/blog/sed-one-liners-explained-part-one/)

</comment></comment><comment><USER6> Why is cursory usage of sed and awk hacker news?

<comment><USER7> because I'm so young

<comment><USER3> Get Unix Power Tools and you will grow up in 2 weeks.

</comment></comment></comment><comment><USER8> Shameless pickup from my tweet a week ago:

My haskell programs often end up just like the pipelines I made up with sed and awk 20 yrs ago.

</comment><comment><USER9> Personally I use Perl for these tasks, outside of scripting in disk constrained environments, I have no use for either tool.</comment>


Can we create new senses for humans? - <AUTHOR> http://www.ted.com/talks/david_eagleman_can_we_create_new_senses_for_humans

<comment><USER2> Great talk. I had seen the same video about seeing through the tongue via the electrodes in the stamp sized pad. Its amazing. I think this is the next step in our evolution. Transhumanism.

We'd make a lot of discoveries and a lot of progress as a species if we could feel and interpret a broader range of sensory input directly instead on relying on equipment and reading 3rd party readings.

</comment><comment><USER3> No. But there are actually 6 sensory inputs to the brain. The standard 5 of sight, sound, touch, smell and taste plus the often forgotten sense of balance or orientation from the inner ear. Note it is the only one that is not (directly) dependent on E/M interaction but gravity.

<comment><USER4> Did you actually watch the whole video? The entire point of that video was that input channels (senses) can be repurposed to completely different uses, and the the brain's processing functions are generally undifferentiated. I suppose in the most pedantic sense it is the "same" sense, but when someone starts "feeling" the stock market or "feeling" a factory, it rather strains the language to say they are just "touching" it, or whatever. And certainly someday there will be processes that take an existing brain and grow a new input channel for a direct feed into our blobs of undifferentiated processing function.</comment></comment>


Scepticism's limits: on climate data manipulation claims - <AUTHOR> http://www.economist.com/blogs/democracyinamerica/2009/12/trust_scientists

<comment><USER2> _> So, after hours of research, I can dismiss Mr Eschenbach. But what am I supposed to do the next time I wake up and someone whose name I don't know has produced another plausible-seeming account of bias in the climate-change science? Am I supposed to invest another couple of hours in it? Do I have to waste the time of the readers of this blog with yet another long post on the subject? Why? Why do these people keep bugging us like this? Does the spirit of scientific scepticism really require that I remain forever open-minded to denialist humbug until it's shown to be wrong? At what point am I allowed to simply say, look, I've seen these kind of claims before, they always turns out to be wrong, and it's not worth my time to look into it?_

 _> Well, here's my solution to this problem: this is why we have peer review. Average guys with websites can do a lot of amazing things. One thing they cannot do is reveal statistical manipulation in climate-change studies that require a PhD in a related field to understand. So for the time being, my response to any and all further "smoking gun" claims begins with: show me the peer-reviewed journal article demonstrating the error here. Otherwise, you're a crank and this is not a story._</comment>


TextMate 2 - <AUTHOR> http://old.nabble.com/Release-candidate-p32959420.html <comment><USER2> > Sadly I had to pull the alpha since it's now all over twitter w/o proper > introductionary text, hotfixes, etc.

([http://lists.macromates.com/textmate- dev/2011-December/01465...](http://lists.macromates.com/textmate- dev/2011-December/014651.html))

Maybe something to do with the IMPOSSIBLE TO MISS REQUEST TO NOT RE-PUBLISH THE ALPHA INFORMATION that people can't seem to comprehend.

<comment><USER3> For what's it worth, this was posted on a publicly accessible TextMate mailing list.

Not sure why he would think it wouldn't leak out.

<comment><USER4> Common courtesy? I know it's rather uncommon these days...

<comment><USER5> Common courtesy is typically lost after 6 years of neglect.

<comment><USER6> How is the author taking his time to release a new version neglect?

People that were not happy with the wait migrated to other editors.

He owns us nothing.

<comment><USER5> Yup, we owe him nothing as well.

<comment><USER7> That's why is it called "common" courtesy.

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> Congratulations to Allan for overcoming coder's block and burnout and putting something in people's hands.

I've complained about the wait as much as anybody else, but if I'm still using Textmate 1 after 6 years of waiting, that's something he should be proud of too.

</comment><comment><USER9> First Duke Nukem, now Textmate... it's sad to see the vaporware industry collapse like this, isn't it?

<comment><USER10> Don't forget about the Higgs Boson.

<comment><USER11> The Super Luminal Neutrino business is still doing pretty well.

</comment></comment></comment><comment><USER12> Seriously, who puts

        PLEASE DO NOT REPUBLISH THIS INFORMATION!

on a publicly-accessible mailing list unless they're just asking for the Streisand Effect to occur.

</comment><comment><USER13> _PLEASE DO NOT REPUBLISH THIS INFORMATION!_

.. is probably the best thing to write if you want something _to_ get republished ;-) Nonetheless, all of the reports I'm seeing on Twitter are resoundingly positive so far, albeit with a few complaints over the icon (but what's new there?)

<comment><USER14> Sounds like: "Don't think of a pink elephant."

<comment><USER15> Except the part where people who received the original email have 100% control over whether or not they do tell other people about it.

</comment></comment></comment><comment><USER16> Meanwhile the sublime text 2 guy knocks out sweet new features every couple of weeks like it ain't no thing.

Just sayin'

<comment><USER17> Yeah you have a point there. There are a ton of people knocking out new versions daily. My favorite editor's developer, Chocolat (<http://chocolatapp.com>) has been updating his editor almost daily for the past few days! In any case, why is it so important for TextMate to get to 2.0? This is an honest question. I understand that software needs minor bug fixes and patches so it can continue to be stable, run well despite OS updates, and be secure but what new features is everyone looking for? I just don't get what people are waiting for.

<comment><USER18> It's one of the best editors out there, easily. And it's one of the most stable. The current version is _fantastic_ in almost every way... but it has its hiccups, and I see no reason to deny that they exist.

Top on my list is the fact that doing a find-in-project causes TextMate to freeze for 30 seconds and consume a gigabyte of memory that it's reluctant to release. Then there's its inability to handle very-wide lines, wrapped or not (it crawls after a couple thousand characters, and simply shoves all the characters together after ~10k or so (haven't tried in a while)). Or that its 'find' doesn't highlight all matches, or have a nice shiny highlight-marker in the scrollbar like I've been ruined with by Chrome.

I'm eager for 2.0, to see what it _is_ , but 1 is good and there are alternatives, so I'm not sure what the fervor is for, aside from its delay being absolutely huge.

<comment><USER19> You know about AckMate, right? It's indispensable. (No find/replace, but on the upside, it's ridiculously fast.)

<comment><USER18> Yeah, but the UTF warnings bug me, and I can't use all my nice project- specific ack settings (ignoring compiled assets, documentation, --no-flash etc). I get by with keeping a couple terminal sessions open at all times, it's necessary with Rails coding anyway :)

</comment></comment></comment></comment></comment><comment><USER20> For my personal use, this release falls a little flat because these days being cross-platform is a pretty important editor feature to me. It's great that Find in Files doesn't freeze the entire program anymore, but I need something that works no matter if I'm on my Mac laptop, my Windows desktop or my remote Linux server. I'm currently a Sublime Text 2 user by day, but I'm on the cusp of switching to Emacs full-time.

That said, TextMate was the first scriptable text editor I ever truly enjoyed using, and I'm really pleased to see that TM2 is finally about to be released to a wider audience after such a long development cycle. Congratulations to Allan for finally having something that he can share with the world, and I don't regret what I paid for the license, even if I no longer use it.

</comment><comment><USER21> Download link: <http://www.multiupload.com/VA06QA4MI0> Requires a Textmate 1.0 serial to use.

</comment><comment><USER22> Still no mention of chunked Undos. Undo'ing character by character is why I gave up on TextMate years ago, but I suppose I should be thankful since it helped me find Vim.

<comment><USER23> Character-by-character undo is actually the reason I first started using Textmate. Most of the time, I don't want the editor to guess what I want to undo, I want it to undo each individual keystroke and action I made.

<comment><USER24> Seriously? That's why there are different kinds of Undo for different key combinations in serious text editors.

<comment><USER23> Yes, seriously. It's a personal preference. Is the second part of your comment intended to imply TextMate isn't a serious text editor?

<comment><USER24> Yes, that's my general viewpoint.

TM is just something "good enough" for people not wanting to go full on to either Vim/Emacs or an IDE. People one would call "newbies" back in the day.

<comment><USER23> That sounds awfully like something someone would say if they were trolling. I'm going to assume you weren't.

There are many things I've found I like in TextMate that Vim can't do - character-by-character undo, for example.

</comment></comment></comment></comment></comment></comment><comment><USER25> I really liked the web preview of TM1. But its gone in this version of TM2. :( No other editor has this functionality, except maybe espresso[1], but I don't really like their solution.

Nor am I that happy with <http://livereload.com/> as it only updates on save.

As a front end dev, I want a live preview in my editor that autoupdates on each key press, this makes prototyping so much faster.

I guess its time to start working on a SublimeText2 Plugin...

[1]<http://macrabbit.com/espresso/>

<comment><USER26> Can you please expand on this live preview thing so people can add it to Emacs?

<comment><USER25> Sure.

A live preview window is a web preview window that is attached to another window (or buffer I suppose).

The live preview window is basically a web browser window that auto-updates on each keypress from the attached editor window.

Espresso and Chocolat have this functionality, but it looks like these editors simply refresh the whole page on every keypress. This constant refreshing causes a flicker on each keypress and makes me turn it off because I don't like the constant flickering.

Livereload is similar because it refreshes the entire browser window on every file save. Its not instant so its not an ideal solution for me.

TM1 seems to only update that text that is updated, no flickering, possibly through some iframe injection technique, I find the iframe injection technique[1] much easier on the eyes because there isn't a page flicker on each keypress.

So, on to make some plugins... :)

[1][http://net.tutsplus.com/tutorials/html-css-techniques/how- to...](http://net.tutsplus.com/tutorials/html-css-techniques/how-to-inject- custom-html-and-css-into-an-iframe/)

<comment><USER27> I looked into doing this for Chocolat a50, but I couldn't figure out how to do it. It's clearly possible to update a single resource without doing a full reload, because the Web Inspector does it.

The iframe idea is interesting. I'm not sure why it would be any less flickery, since it seems equivalent to what we do now: get the -mainFrame and call -loadHTMLString:baseURL: on it.

<comment><USER25> I don't know much obj-c (yet), so I'm not sure how similar you say Chocolat is to the iframe injection solution, but you can see it in action here:

<http://jsbin.com/#javascript,html,live>

There is no flickering. If you could implement this into Chocolat I would use it everyday :)

</comment></comment></comment></comment></comment><comment><USER28> Several people have noted that TM2 lacks desired features, such as split screens. My guess (hope?) is that this alpha release includes massively refactored internals to allow new features to be added quickly. In other words, maybe it's a black triangle (<http://rampantgames.com/blog/2004/10/black-triangle.html>).

</comment><comment><USER29> TextMate 1 is r1631 TextMate 2 is r8926

7000 commits, Allan is pretty badass, IMO.

For everyone mentioning sublime vs textmate. Editor holy wars are pointless. Jeez.

<comment><USER30> Holy wars are pointless... but there is value to a reasonable discussion of two competing editors.

</comment></comment><comment><USER31> No split windows yet... still hoping.

<comment><USER32> Be sure to drop by in ##textmate on freenode, the discussion on how to implement and use split windows is not really making progress so far.

<comment><USER33> That is simply depressing. I went to Vim for this alone, and, well now I'm addicted to Vim.

<comment><USER34> Emacs, baby, every single day of the week!

<comment><USER35> Emacs with a vim plugin solved my editing problems.

</comment></comment></comment></comment></comment><comment><USER36> On the surface, his request to not republish seems laughable.

However, I'd guess Alan expected our collective failure to respect his wishes knowing that once it began to spread he could cut off access. His goal of getting a small set of the most devoted users to download and sanity check his pending release was accomplished.

</comment><comment><USER37> <http://instagr.am/p/Yyrjy/>

<comment><USER38> It's beautiful. Downloading now. I scanned the mail, I wonder if they address auto refreshing of network sources.

</comment></comment><comment><USER39> I don't know how Allan figured this release would remain out of the public eye. Yes if you want to alpha release it to a very select group of people but don't send your release notes and download links to a public mailing list. Word will definitely leak out.

</comment><comment><USER40> Hm.. I wonder how many people will switch back to TextMate 2 from Vim/Emacs/Sublime Text?

<comment><USER41> After playing with TM2 for half an hour or so, I don't think I'll be switching back from Vim. I was hoping for some split-screen action and maybe some advanced autocomplete intergration, but it doesn't seem to have either. It's looking to be a great update and improves on a lot of things in the existing version, but if I were honest, I'd have to say I wouldn't bother upgrading if it wasn't free.

That said, it's obviously an alpha release, so who knows what the future will hold.

<comment><USER40> I don't have a license so I don't saw the alpha but it's seems frustrating that in 5 years of "development" so little was added. But, OTOH, it's not the final version.

<comment><USER24> """But, OTOH, it's not the final version."""

That doesn't change much.

Either it will be released soon, so not much will be added in the final version,

or

we wait for more stuff to be added before it's released in another 2-5 years, making it totally pointless as of now.

(And given that it's not like the previous 5 years were well spent, we already know how this will go...)

<comment><USER42> Except that if the guts are there to add features quickly, it could have been time well spent. We just don't know yet, but progress over the next month should be indicative (see progress on ST2 as an example of a seemingly healthy codebase in this regard)

</comment></comment></comment></comment></comment><comment><USER42> Loving the new proportional-fonts-for-headings in Markdown. It seems so obvious in retrospect, but it's the one thing that makes writing longer document painful for me in any text editor.

<comment><USER43> This is already available in Emacs. The Markdown mode is not configured by default to display proportional fonts for headings, however configuring it is easy.

<comment><USER44> Good for Emacs?

</comment></comment></comment><comment><USER45> I am glad to see this, and will likely upgrade, but having moved on to PyCharm, I have very little reason to go back to TextMate for my Python/Django work.

</comment><comment> buff-a I used to use TextMate until fairly recently for anything that XCode, IntelliJ or MD didn't handle natively. Now I use SlickEdit for Mac [1] as it finally has a native version. Though, concretely, I still use TextMate for Octave. =)

[1] <http://www.slickedit.com/products/slickedit-for-mac>

</comment><comment><USER46> Didn't like it that much. After about half an hour using it went back to Textmate 1. Now I'll give a chance to Sublime Text 2 that I've had around for ages but never got to give it a real chance yet.

</comment><comment><USER47> I really hope that's not the final icon.

</comment><comment><USER15> > __PLEASE DO NOT REPUBLISH THIS INFORMATION! __

From the linked email.

</comment><comment><USER48> Does it natively/properly support Japanese?

<comment><USER49> Even more broken than before, in fact. It cannot handle IME input at all (I'm testing with Kotoeri). Trying to type "aiueo" yields something like this (including all the NSUnderline stuff and highlights): <http://cl.ly/0U3c3G3K471c0b341v33> However support for South Asian languages has improved a lot from what I can see, which is a good sign.

<comment><USER50> Ah geez, that's unfortunate. The hack to make CJK input work is the only part of Textmate 1 that I found sucky.

</comment></comment></comment><comment><USER51> Ok, yeah, maybe it was naive to expect the link to not be redistributed but was it too much to ask that people actually honor the request? Especially considering its going to be publicly available in a day. I hope none of you work in national security.

</comment><comment><USER52> sure got hit with an ugly stick:

<http://cl.ly/CZC2>

<comment><USER53> Whatcha writing there? That doesn't look like any JavaScript I've ever seen... enums?

<comment><USER54> It looks to be UnityScript.

[http://www.unifycommunity.com/wiki/index.php?title=Head_Firs...](http://www.unifycommunity.com/wiki/index.php?title=Head_First_into_Unity_with_UnityScript)

</comment></comment></comment><comment><USER55> Haappy user of the constantly updated, fast and never-crashing rossplatform sublimetext2. The atitude and history of textmate forces me to stay with sublimetext.

</comment><comment><USER56> I couldn't figure out how to change color scheme !?

<comment><USER29> I copied my old one, maybe this will help:

Copy ~/Library/Application\ Support/TextMate/Themes/YourTextMate1.x.tmTheme

To

~/Library/Application\ Support/TextMate/Managed/Bundles/Themes.tmbundle/Themes/

Name it, and regenerate the uuid (must be valid). Reopen textmate, select you're old theme from View -> Theme

<comment><USER56> how do i regenerate the uuid? with uuidgen?? I did that and copy the generated uuid and replace in my theme. it doesn't work.

did i do sth wrong?

<comment><USER57> import the theme into the old textmate. then use the file that had just copying it over. no need to do anything special with uuids. works a charm.

</comment></comment></comment></comment><comment><USER58> Has anyone figured out how to stop the font from resetting? I know he said it was in tm_properties, but I'm not sure how to set this.

<comment><USER58> Got it - .tm_properties goes in your home folder, wasn't sure if this was project specific. Example contents:

fontName = "Bitstream Vera Sans Mono"

fontSize = 16

tabSize = 2

softTabs = true

</comment></comment><comment><USER59> Sublime Text 2

</comment><comment><USER60> <http://pastebin.com/aWVQisAm>

<comment><USER60> <http://api.cld.me/CZdZ/download/TextMate_r8926.tbz>

</comment></comment><comment><USER58> Does anyone know how to manually install themes on TextMate 2?

<comment><USER57> cp ~/Library/Application\ Support/TextMate/Themes/* ~/Library/Application\ Support/TextMate/Managed/Bundles/Themes.tmbundle/Themes/

</comment></comment><comment><USER61> How does BBEdit compare to TextMate and Sublime Text?

</comment><comment><USER62> Looks like the Alpha is back up! Just downloaded it.

</comment><comment><USER63> How this could leak out is really beyond me. I mean can't people keep secrets on the internet anymore? He even asked to NOT RE-PUBLISH THE INFORMATION, and then this.

<comment><USER24> I hope you're being ironic.

</comment></comment><comment><USER64> TextMate was just a one hit wonder...

</comment><comment><USER65> But is it better than sublime? :P

<comment><USER66> No

<comment><USER67> The strength of TextMate has always been its powerful scripting interface, something that Sublime currently lacks to extreme.

For me anyway, there are few text editors that can equal the power than TM provides in this domain. Please prove me wrong.

</comment></comment></comment><comment><USER68> Your self-control is just masterful. Congratulations.

</comment><comment><USER69> But how do we download it? The link on that thread is dead... :(

<comment><USER70> Allan pulled the download. It will be officially released tomorrow.

</comment></comment><comment><USER71> For the love... anyone please upload it?

</comment><comment><USER72> <http://www.sublimetext.com/2>

<comment><USER73> The Sublime2 dev builds have slowed as of late so I was wondering if the author was prepping for final release to steal TM2's thunder.

<comment><USER24> What thunder? I don't see much in the alpha release -- and the quality smells of another 1-2 years of waiting...

<comment><USER74> Have you used used it? I.e is this informed or uninformed nonsense?

<comment><USER24> Oh, I see what you did here.

Yeah, I f*n used it. I'm a paying 1.x user, and I downloaded TM2. Not very impressive. Actually, mostly the same.</comment></comment></comment></comment></comment>


Make a List of Blogs Written by the Hacker News Community: Add Yours - <AUTHOR> https://hackernews.hackpad.com/Hacker-News-Member-Blogs-List-Hh7HY04XvZR

<comment><USER2> You need to include Hacker News username / real name with each entry. Additionally, you should clarify (or limit) that each entry is to a _personal_ blog.</comment>


Windows Phone 8 review: Microsoft lays a foundation for success - <AUTHOR> http://arstechnica.com/gadgets/2012/11/windows-phone-8-review-microsoft-lays-a-foundation-for-success/ <comment><AUTHOR> I confess I just do not understand those tiles. I don't want to put my phone down on a desk or restaurant table (well I don't do the latter much anyway) and have other people observe photos and social media feeds. And my current iOS device allows for many more available options from the home screen with the small icons. But horses for courses I guess.

<comment><USER2> It's not so other people can see them, your phone will probably be at lock screen when you put it down anyway. It enables you to quickly glance at your phone and see the crap you care about.

From the home screen tiles I can instantly see if I've missed any calls, any unread emails, status updates on twitter/facebook, chat messages and text messages. Without scrolling, or tapping.

A scroll down the screen gives me other less useful stuff, like whether or not I need my umbrella today and if there is a wreck on my normal commute route.

Each to their own.

<comment><AUTHOR> Fair enough. I'm not too involved in social media (wrong generation :) apart from twitter, and don't feel the need for such live updates but amny perhaps do. I'd rather make a conscious effort to check info feeds e.g email rather than be distracted. It is alreadybad enough at meals for instance when people are constantly checking their mobile.</comment></comment></comment>