Earlier quoted context omitted.
Frankly, this is only possible by web apps not being web apps. I'm not sure I agree with that, though it might never happen because the owners of the major platforms have absolutely no interest in being turned into a dumb foundation by the web (or a badly debugged set of device drivers, as Andreesen put it in 1995). The reasons for the ascendance of mobile are political and corporate though, not technical. There's li…
> There's little reason webkit performance cannot approach that of native, particularly if it used something like nacl rather than js, and no reason APIs cannot be exposed to web apps too (Apple exposes quite a few). While I agree with that sentiment, I disagree with the example provided ... if you talk about NaCL, you're not talking about web apps or "the web" anymore. It's not a standard, it has portability issues…
If you had to start over, what technologies would you learn in 2014?
51–60 of 182 posts
Re: If you had to start over, what technologies would you learn in 2014?
#52Javascript because every device made today or tomorrow will ship with a decent javascript runtime.
Then move on to the things you personally like.
Re: If you had to start over, what technologies would you learn in 2014?
#53I would just suggest sticking to javascript to start with. You can do front end, node and mobile. With that under your belt you would then be in a much better place to jump to a different server language and would know more about which one would be the best fit for you. But focus on one thing at a time, you'll learn much quicker that way.
Re: If you had to start over, what technologies would you learn in 2014?
#54Folks, the big point of this article is not that Hanselman likes C#, it's that his list of options does not include Objective-C or Java. It's that he thinks that the web will win (over app stores). I strongly believe that he's right there. At some point, app stores had "discoverability" as an advantage over the web. This has been one of the strongholds of native app proponents. These days however, with the enormous a…
> his list of options does not include Objective-C or Java He mentions Java, twice. There is nothing wrong with making web-apps in Java, and there are some nice web frameworks to help doing that.
Re: If you had to start over, what technologies would you learn in 2014?
#55Python - I believe it's the language of the now and the near future.
Python is multipurpose and has great libs, but personaly I dont like the language itself. I think Ruby is a better designed language , but Ruby has problems too. Unfortunatly the perfect language + ecosystem doesnt exist.
Re: If you had to start over, what technologies would you learn in 2014?
#56Folks, the big point of this article is not that Hanselman likes C#, it's that his list of options does not include Objective-C or Java. It's that he thinks that the web will win (over app stores). I strongly believe that he's right there. At some point, app stores had "discoverability" as an advantage over the web. This has been one of the strongholds of native app proponents. These days however, with the enormous a…
"Whoever can make the Google of app discovery might make a temporary splash, but i bet that, not long after, people will return to plain old Google Search."
You remember me to Kodak's "people will return to make analog photos, people want to hold something in their hand".
You are deluding yourself, and you can't see what you have in front of your eyes.
No, there is not a single platform that works in everything. In my company we do both low level programming(c, c++[small controlled subset so we control it]. embedded, microcontrollers, hardware) , and high level programming (python, java, web programing in general) for scripts, testing , rapid prototyping or deployment...
Both of them work very well for what they are designed for.
If we paint something in the screen in c we could do it in 0.001 seconds(without hardware accel!!), in python it is 0.5 seconds, 500 slower!!. In the browser is like 500 if we were to do things on javascript. Most people fake and call webgl with hard pre calculations done in a server(native) "web programming". It is not.
And we use python a lot. Because we don't care if something takes 5 seconds to draw if this saves hours or days of debugging.
In the future communications will be better, and program interaction will be stronger, but that does not mean that all software will be web. Multiplattform native works also very well, and much better for some things.
"Given that the world's #1 mobile OS is made by the worlds #1 web company, this change is not difficult to predict."
Android is not web for a reason. It sucks for lots of things. It is not that Google has not tried, as it is in their best interest to do so.
The interest of a web company are something, and the interest of consumers are something else.
Consumers probably don't like having to be connected all day, all what they do in their computers being monitored in real time and stored forever by the NSA.
You probably are American but there is people living in other countries, with different interests. As Snowden said the NSA uses their tools for industrial espionage(as should be expected).
If you have a company outside the USA you will have no brain if you used web for your secret sauce. They will take it from you, they will give it to an American company and even patent it. With native it is orders of magnitude harder to do this.
Re: If you had to start over, what technologies would you learn in 2014?
#57Earlier quoted context omitted.
Agreed too for your opinion about how to do a startup. But I want to add C to your full stack suggestion. Sometimes it pays off to know low-level details about your choice of technologies. Almost every important technologies that I know is implemented in C.
No doubt, knowing C always helps. gdb and strace work where other tools fail. In order to be a well rounded developer you ideally have familiarity with functional programming, declarative programming, lisp, and a much more. You hit diminishing returns pretty quickly though.
Re: If you had to start over, what technologies would you learn in 2014?
#58My favorite things right now which I am happy to recommend are ToffeeScript https://github.com/jiangmiao/toffee-script with Node.js and Nimrod http://nimrod-lang.org/ . I also think LiveScript is awesome. AngularJS is great. Web Components are better I think though. Docker has redefined devops in my opinion http://docker.io GLSL is very cool and something you can even experiment with in your browser using Three.js et…
I've never heard anybody mention Angular and Web Components as solving the same problem. I'm pretty fuzzy on front end MVC stuff in general, but I know almost nothing about Web Components. Do you know of any good tutorials or resources?
Re: If you had to start over, what technologies would you learn in 2014?
#59Earlier quoted context omitted.
Agreed too for your opinion about how to do a startup. But I want to add C to your full stack suggestion. Sometimes it pays off to know low-level details about your choice of technologies. Almost every important technologies that I know is implemented in C.
I'm rewriting our Node.js based server in a combination of C and LuaJIT as we speak. The performance difference is absolutely astounding, in part because our Node.js app relies heavily on compiled modules, and the cost to cross from JavaScript to C++ and back is obscene. The straight C implementation looks like it'll be over 1000 times faster for our use case, which involves tons of buffer manipulation and usage of c…
Re: If you had to start over, what technologies would you learn in 2014?
#60I'd learn F# + C + Rust + TypeScript/ES6. Anything that lets me avoid learning C++ or JS.
I really don't know why people have such a problem getting to grips with pure-C++ functionality like templates, virtual functions, inheritance, RAII, exceptions, references, type system oddities, rvalues and lvalues and their references, operator overloads, extended temporary lifetimes, smart pointers, runtime type information, the lack of decent unicode support, slow compilation times, binary compatibility which is tricky to maintain, member function pointers, virtual base class construction order, SFINAE, and static polymorphism and concept checking.
It's really not that difficult... ;)