I really like the popup from the url bar. Safari 8.0 on Yosemite already has it, but the one they show in the presentation is more interesting and useful. I already use Spotlight as the only way of accessing applications on OSX (habit most emacs users get from using smex), so I +1 a universal "Search interface"; it's much more useful/productive then moving your mouse and pointing to icons or open an application and look for stuff.
Why don't they sell a locked demo version which hides most of its functionality and ask for a key to be obtained by opening a paid account on their website. They can make a subscription model then.
I am no expert of Python or Javascript, but here's some of what I love in javascript
* first-class functions
this is the first thing anyone would fall in love with when coming from Python. Python do treat functions as first class, but Python follows OOP way more strongly and functions in Python never get that level of authority as they do in javascript. Ability to define anonymous and named functions anywhere, immediately executable, fully or partially is a huge plus.
* highly dynamic: monkeypatch anything anywhere
Javascript is highly dynamic, you can override almost any property of almost any object anytime in the timeline. This opens room for all sorts of hacker. Like I worked on a fairly complex Meteor application and we needed to modify the behavior of some core meteor methods. No, using them through a proxy wasn't a possibility as we wanted to change how the app behaves overall. How would you do it? Fork meteor and roll out other version? No. Just overwrite the functions on Meteor at right time in the timeline. I know it's more hacking than engineering, but not all hacks hurt.
at many places we would intercept the objects being created in one part of the framework that would go to another for further processing and do shit load of operations on them half-way to make them work as we want (like temporarily turn mongodb cursors to model (in MVC terms) like interfaces which are more easier to work and reason with), and then forward them with original interface, properties changed to processed values.
* prototypical inheritance
I like the way javascript does inheritance. Or how we force it to. The prototypical ladder cause many problems but it also open doors for many interesting solutions which won't be that easily achievable in other languages.
* fun of writing code
Once you grok the fact that js is a functional language, accept it and start using it like a functional language, javascript is tons of fun to write. I mean you won't miss (m)any python features if you sue javascript as a functional language and make use of the functional abstractions provided by several js libraries. Just using underscore makes a huge difference.
* flexibility and extensiblity
reading prototype.js code blew my mind. You can beat, bend and extend js in whatever way you want.Yes there are several gotchas (some of the language itself and some because of browser implementations), but despite of that what javascript has to offer is remarkable. I was intrigued to read prototype by js ninja book, and it is indeed mind blowing for someone new to js like me. I am looking forward to desiccate javascript libraries which provide highly functional interfaces and macros. Ability to serialize (almost) any function and modify it and then execute at the runtime opens room for innovative solutions (and all sort of sorcery/hackery).
* freedom
python is quite liberal, but javascript takes it to another level in terms of what you're allowed to do with your code. I don't know how to express it with words, and I don't know how you can not feel it when doing a js project.
I dont agree on this point. Javascript has quite a many gotchas i agree, but once u get over them, javascript is a pretty beautiful language. I've been a pythonist before getting into js about 4 months ago, i still love python but the flexibility js provides is unmatchable. Even python cant beat it.
Where do Django stand in the js everywhere fortresses of MEAN and damn awesome stuff like meteor/derby? I mean it's possible to use django with client-side js, precompiling js templates server side and using Django as REST backend or use websockets layer on it and do stuff the modern apps should (arguably) be doing i.e refresh-less UX, fast native-like apps, but still these major server-side frameworks (django, ror and friends) are so much loved and used by vast majority of "pros".
Most likely I am living in a bubble that making apps same language both sides specially in frameworks like Meteor which revolutionises the workflow is the best way to go.
Please break my bubble and enlighten me why we should still be using these framweworks and not js only alternatives.
I don't mean to start a flame war (or may be I do), I just want my perspective changed. It is sitting pretty stubbornly in my head that meteor like start-to-end pipelined flows are the way to go (read all-sides javascript frameworks).
> (very legitimate) resentment felt toward businessmen, farmers and politicians by salaried Indians
Resentment toward farmers? You gotta be kidding me. I agree with the argument that most of the illegitimate wealth get invested in India in one way or other and most of it might not be present in Swiss banks and several other things from the article, but above comment shows the author has no idea how Indian society is operating internally. I have lived both in village and in the city, I've seen salaried city/village people having many opinions/feelings for "farmers" but resentment was not one of them.
> But if you blunder for words, punctuate incorrectly, spell incorrectly, and express yourself clumsily, I'm sure to believe you mind is cluttered and ill-disciplined.
I write and speak pretty well, but am still ill-disciplined as anything.
> You conceive a big idea, get the whole organization on tiptoes to carry it out, and then you lose interest and go off on a new tangent.
Now that's me.
> You are always living, in imagination, about six jumps ahead.
Now that's definitely me.
> Their active minds can always see two sides to every question; and they stand still while the debate goes on inside.
Now that's definitely me.
> Does he finish what he starts? Geniuses almost never do.
Good news, I am a genius.
Moral: In an ideal world I will never get hired or get success in business. Hell I am doomed for sure.
I am feeling like this (burnout/mental sickness of programmers) is becoming a successful theme on HN lately. Many-many posts are popping up to front page.
Not like it's a bad thing, being myself a victim it feels good to read experience of fellow coders who has seen what I am about to see or how to avoid seeing it, but still, it is becoming a theme. I am imagining hordes of posts on this topic coming up. Or may be we already have 'em, just the good ones are popping up to front page.
There are actually more than one pattern emerging. I think I gotta hint of for writing posts more likely to hit front page.
I am working from a home like place on a freelance project, so basically I am always at home. Nobody is forcing me to work harder, not even my employer. He knows I am new in this. It was my own stupid ass who thought of making an impression.
Look like tomorrow gonna be a holiday for me, or may be a half day off.
Can't agree more about expectations. They make you live somebody else's life, when we know somebody's expecting something from us and have a +ve score of keeping that expectation in past, we naturally behave to build more on that expectation. It's kinda same principle with which 'In App purchases' in modern mobile games are making money.
I've read a lot about how overly-expecting boss make someone's life worse. But I am on my first assignment for a freelance job, so wanna make a +ve history. But probably I am hitting my limits. Got to be careful.
This scared the hell of me. I am on my first programming assignment ever, putting extra efforts to do it quick and do it well. I am working on it for like 16 hours a day and in 3 days have brought it to level which was expected to be in 15 days. I made it 18 hours yesterday thanks to the comments like "phenomenal work" from my employer/mentor.
Side effects? My head is feeling numb. It's the same feeling as you have when sitting crossed legs and your feet go 'sleep', when you can't feel you have feet and there's no feeling of pain on pinching them. Also I am finding it harder and harder to think deep. I could collect great level of detail earlier, but now I feel like my head is refusing to think. I thought it was just another level of boredom as I haven't seen daylight for last 3 days. I thought my brain is behaving strange because it's tuning itself for more optimal performance. But Fk performance, I didn't realize things can get as wrong as the OP says.
thanks for advice. I'll try to quit whining once I get a hold of myself. And I love programming. The problem is I don't or can't stick with one thing. I have many projects hanging. I thought trying to do a regular job will help and gave interviews in several local companies. Since I have not graduated yet, despite my portfolio most of them offered me to do work for 3 to 6 months for free and then a similar package. One of them even offered me to do paid training with them before they "think" about hiring me. The company I am joining now were the most generous of all I met. Thing I wanted to whine about was the trend of exploitation that's going on in the city, but I think it turned out to look like me whining about the job. I am actually kind of excited as I will have to learn many things which I would not have touched otherwise. And yes I have plans for my own development shop. I will do it once I have enough confidence.