Forgot your password?
typodupeerror
Programming Google

Ask Slashdot: Learning Dart Development? 107

Posted by timothy
from the oh-dartlang-we-can't-go-on-like-this dept.
First time accepted submitter gmikeska07 writes "I have no computer science degree, but I took a Java class in college and greatly enjoyed it. I have some experience with Javascript and have done some perl programming as well. I would like to learn Google's forthcoming Dart language. My question is in three parts: a) Is there any chance that if I self-teach Dart, I can get a job in development without a CS degree, once companies begin using the language? b) Is it really worth installing Virtual Studio as per the dartlang docs, or should I wait for a dedicated IDE like the rumored 'Brightly'? Alternatively, are there any solid open development environments that are adding support? c) Do you know of any books that are out or on the way that I could buy? What programming series do you guys recommend? Hopefully I can learn in my spare time, and if I can't get a job in development I can at least have fun with it, and maybe make a few libraries for the Dart community!"
This discussion has been archived. No new comments can be posted.

Ask Slashdot: Learning Dart Development?

Comments Filter:
  • Translation (Score:2, Flamebait)

    by suso (153703) *

    Hi. I'm a young whipper snapper who would like to learn something fresh and new with almost no user base instead of using already existing solutions that do all that I'd ever need to do and have loads of documentation and already existing user base. And instead of acknowledging that I was foolish to try using a brand new language and expect great support, I'm going to complain to everyone I come into contact with that they don't support this new language and if they were worth anything they would support it

    • You sir, deserve teenage feet all over your lawn.

    • Hi. I'm a young whipper snapper who would like to learn something fresh and new with almost no user base instead of using already existing solutions that do all that I'd ever need to do and have loads of documentation and already existing user base.

      Alternative response: Welcome to the exciting ever changing world of software development with more tools at your disposal than you could ever hope to learn! It's great that you're interested in this brand new language. It's probably not the best to cut your teeth on if you're new to the game so be prepared for challenges in regards to lacking documentation.

      And instead of acknowledging that I was foolish to try using a brand new language and expect great support, I'm going to complain to everyone I come into contact with that they don't support this new language and if they were worth anything they would support it because its by company X or uses this new paradigm Y.

      You make the submitter sound like a whiny bitch ... yet all I detected in his questions were eagerness and optimism. Where did he complain? Where did demand support for this language from you? Why the hostility? You don't have to read his posts at dartlang.org you know. Christ at the end he was hoping to help build support for Dart.

      Slashdot: rewards for taking an acerbic tongue to outsiders since before it was cool.

      • by yagu (721525) *
        no mod points.... psuedo-modding parent +1 - insightful
      • I don't have any mod points, either, so +1 Insightful from me, too!
      • by suso (153703) *

        You make the submitter sound like a whiny bitch ... yet all I detected in his questions were eagerness and optimism. Where did he complain? Where did demand support for this language from you? Why the hostility? You don't have to read his posts at dartlang.org you know. Christ at the end he was hoping to help build support for Dart.

        I'm the whiny bitch. And I'm whiny because I've seen all this before. Many of us have. It happens over and over and over. Computers should be a means to an end, but instead we keep making them a means to a means to a means to a means (recursion anyone?). Progress is fine, but what ends up happening in the computer industry is that we never are satisfied with the solutions we already have. People keep feeling the need to reinvent the wheel and few people work together, use existing solutions or think of the

        • by AlXtreme (223728)

          Perhaps people want to reinvent the wheel because they think it simply can be done better?

          This is evolution in progress. New things come up, some live, some die. Some old things come back with a different purpose and thrive. The field as a whole keeps getting better and more efficient, sometimes taking a step back but later pushing forward again.

          If fish complained that there were too many means of propulsion and everyone had to stick with fins we'd never have evolved.

          The only alternative to evolution is sta

          • You could improve the existing fish, instead of inventing new fish... why are we talking about fish?

            • by chooks (71012)

              Agreed. This is slashdot. It should have been a car analogy. Acceptable alternatives would involve Natalie Portman, statuary, and/or hot grits.

        • I'm the whiny bitch. And I'm whiny because I've seen all this before.

          That's fine, you're free to rip apart a new language and you can bitch all you want at me or someone who's been in this field for longer than a decade. But when a new guy shows up eager to learn and in so many words you tell him to GTFO for selecting a new language that you haven't personally canonized as worthy that's where I'm going to set my foot down. He could be looking to program Visual Basic and your response would still be worse than gently guiding him toward a more fruitful endeavor.

          I'm not

          • by marnues (906739)
            insightful++ The newbies learn the new languages. Let them. I want to grow old and have my Y2K. I want to be pulled out of retirement so that I can flex my archaic Java EE 6 skills and fix basic problems for many times the standard hourly rate. Of course the COBOL guys will probably be making even more at that point...
        • If nobody ever reinvented the wheel they would still be made out of stone.
      • by Foofoobar (318279)
        Thank you for an (rare) intelligent response and an even more rare modding up one. I for one am intrigued in DART as well because i always wanted a compilable replacement to Javascript so my code wasn't constantly needing to be downloaded and compiled on the fly or was cached for everyone to view and copy. My only bitch is that I effectively have to rebuild chrome in order to try and run DART and do anything with it.

        Having played with it, it is very similar to Java's Groovy in alot of ways but the compil
        • by PCM2 (4486)

          Have you tried GWT [google.com]? Basically, you code in Java and it compiles it to JavaScript. There are other languages that cross-compile into JavaScript, too.

      • Thank you eldavojohn for that reply! It's nice to know that /. is not read entirely by a bunch of bitter, middle-age men, pissed off that they have been in the same dead-end job for 30+ years, and think that there's no reason for them to put away their PDP-11's for some newfangled POS. Seriously suso, you may not be a 60yo greybeard with a chip on your shoulder, but you sure fucking sound like it. Let's pretend we're civilized, helpful, and compassionate human beings for once.
      • Wow eldavojohn, you make it challenging to associate myself with technical people of any kind. Could you have possibly replied kindly instead of being a complete asshole? Have some patience for young people, and those who know less than you. Otherwise, you may never make it out of that cubicle plastered with Dilbert comics.
    • by Eraesr (1629799)
      If you don't have any real, considerable programming experience with existing languages, then start by picking up some well known, well supported language like Java or C#. Learn the paradigms, get familiar with design patterns [wikipedia.org] and learn how to maintain a clean codebase. You could do this with Dart as well, but as has been mentioned before, Dart is new, relatively poorly documented and there's little shared experience on forums or blogs and the like.

      You see, the point is that there's no real point in wanti
      • by tlhIngan (30335)

        (posting to undo error in moderation... grr).

        Exactly.

        You can go to a tradeschool and do one of their "Computer programming in Java" courses and graduate into a job doing Java programming. Or you can do Computer Science or Computer Engineering at a college or university, who may have a "standard language" but is really just to facilitate learning. Along the way other languages will be taught and written in the course of a semester - so you only have a couple of weeks to learn it and become proficient enough

    • by cruachan (113813)

      To stay young requires unceasing cultivation of the ability to unlearn old falsehoods.
      Lazarus Long, aka Robert Heinlien

      Possibly my favorite quote as I grow older. You on the other hand Sir are embracing the geriatric

  • Dart (Score:5, Funny)

    by Anonymous Coward on Tuesday November 01, 2011 @08:46AM (#37906696)

    >Is there any chance that if I self-teach Dart, I can get a job in development without a CS degree, once companies begin using the language?

    Sure, if you have ten years proven commercial experience with it.

    • by iceaxe (18903)

      *guffaw*

      Reminds me of a job posting I once saw which listed as a requirement having 5-7 years professional experience with a technology that had existed for two years at the time. Ah, the good old days...

      To the OP: Yes, you can gradually squeeze your way in to the field using knowledge instead of a degree, but it will probably be faster to just get the degree. While you're getting the degree you can be doing work on the side with your favorite language, so you end up with both a degree AND experience. Both

  • by Anonymous Coward

    Learn to program first. The language is irrelevant (But as a previous comment states, try to go for things that are actually in use). Knowing a specific language won't do much for you. Selling yourself as someone who knows a specific language only limits you. You had better be prepared to use any language out there, know it or not.

    • by Sentrion (964745)

      It's hard to slip past the HR filter without listing programming languages on your resume. Once you get to your interview then tell them how awesome you are and you don't even need a language - you can program anything!

    • by Darinbob (1142669)

      And once you do learn to program, there will be more than 3 Dart programmers in the world and maybe even a book you can buy!

  • by eldavojohn (898314) * <eldavojohn AT gmail DOT com> on Tuesday November 01, 2011 @08:49AM (#37906740) Journal

    a) Is there any chance that if I self-teach Dart, I can get a job in development without a CS degree, once companies begin using the language?

    Assuming you have a technical degree/bachelor of science I don't see why not. The biggest problem I see is going to be that I've never encountered a job where I didn't also need to know stuff about the back end and databases. I've always developed on all fronts of a project and I'm not sure where you would go to just do Dart development and not also some webservice or controller or MVC style design. And that's where you'll get blindsided is you probably aren't familiar with MVC design or database queries. Who knows though? I've interviewed a Mechanical Engineer and brought them on to do requirements back when we did waterfall.

    b) Is it really worth installing Virtual Studio as per the dartlang docs, or should I wait for a dedicated IDE like the rumored 'Brightly'? Alternatively, are there any solid open development environments that are adding support?

    I'm guessing from this [google.com] that your best bet is this if you're a minimalist kind of person (like me) [dartwatch.com] or this if you're familiar with the behemoth Eclipse [dartwatch.com]. You'll probably find yourself repeating that process after filing bugs until there is a stable release though ...

    c) Do you know of any books that are out or on the way that I could buy?

    This language was announced in September. At some point (four or five months?) a "rough cuts" of a book will probably be available on Safari books.

    What programming series do you guys recommend?

    I'm partial to Pragmatic Programmer, O'Reilly and No Starch in that order. APress might be worth a mention but personally I steer clear of Packt and Wrox. I've done some reviews on this site and I think that my reviewing reflects this.

    Hopefully I can learn in my spare time, and if I can't get a job in development I can at least have fun with it, and maybe make a few libraries for the Dart community!

    Stay active on the dartlang.org Google group and shout out if you get stuck. Good luck and have fun!

    I'm guessing you don't have any programming experience on your resume. If you really want that programming job, I'd set goals for myself to complete a project in dart on my own so that I have at least something to show a prospective employer that shows some capability and (more importantly) self-motivation.

    • by stewbee (1019450)

      ...I steer clear of Packt and Wrox.

      While I don't have any Packt books, the books that I have received from Wrox have been pretty good. In fact my "go to" book for C++ was by Ivor Horton and was published by Wrox (I think it was published around 2000). He pretty much left no stone unturned, had some pretty good tips & tricks, covered plenty of gotchas, and did a good job of explaining it all. I also picked up a book on Access that was pretty good too. Maybe you have just had some bad books or maybe I

      • by SQLGuru (980662)

        While I'm not the person you were responding to (nor am I hiring anyone or an expert in resumes), but if you are submitting a resume that is scaring potential employers off, you're doing it wrong.

        You should have a resume that tailors your experience to exactly what the hiring company is looking to hire. I'm not saying to lie or anything like that, but if they are looking for someone with programming experience, hilight the programming aspect of your career (languages, libraries, savings in time or money),

        • by stewbee (1019450)

          While I'm not the person you were responding to (nor am I hiring anyone or an expert in resumes), but if you are submitting a resume that is scaring potential employers off, you're doing it wrong.

          I feel that I have done this. I have put the team player angle in there. I have put what experience I have had doing SW and some embedded SW in there too. I have had a few calls from HR, but I seem to get hung up between the HR and Technical Manager hand off [1]. The question that I am getting most recently is whe

    • by poor_boi (548340)

      Some of the most useful programming books I've owned were from Wrox, especially on C++. Their extra effort to address programming in practice can be very helpful to someone who needs to get stuff done. (If I needed a regurgitation of the spec, I'd just read the spec.)

      I rarely avoid books based on their publisher. Instead I look for books that are reviewed favorably by many people. And I look for reviews that tend to indicate that the book is the style and level that I'm looking for. Of course there a

  • You may want to "wait and see" if Dart takes off first. (I don't think it will.)

    It seems like developers are becoming increasingly skeptical of adopting Google technologies, and for good reason. Those technologies often don't take off. Also, Google tends to hype some technologies, getting a lot of developers on board, and then abandon them (or support them so badly they may as well be abandoned).

    There are a lot of great technologies out there you can learn instead, that have wider industry acceptance, and a

    • by Xest (935314)

      Agreed, if you want to get a job learn .NET.

      If you want to learn Dart, then right now it'll be for fun and learning, so just get on with it.

    • Yes...Google being the lesser offender of all when you consider those like Microsoft's Silverlight, eh?

      • by dskzero (960168)
        Wow it had taken awhile before someone felt the need of bashing Microsoft. Google has dropped many projects and hyped them like they were curing cancer and then letting them die off, much more than Microsoft. Currently happening with: Google Buzz.
  • Dart may be the new hot turd on the block, but no one uses it, and probably no one will for some time to come, languages take time to pick up speed and mature.

    If you're a decent programmer applying to a job that isn't going to suck, they won't care about what languages you know. Part of being a good programmer is learning any new language by yourself, very quickly. If you want to lean a nice easy language that is actually useful, my personal pref. is python, but perl, js, ruby, etc are all good. If you w

    • by Ash Vince (602485) *

      I would highly recommend taking some classes, not so much for the programming (although it'll help), but to learn about algorithm design and computer architecture, especially if you don't want to just build websites your whole life like a chump (no offense to website builders, I do some of it too, I just hope not to forever).

      I would like to strongly second this. As a software developer with almost a decade of experience without a CS degree I think I have a unique perspective. The things I am missing are things like the theory of how object orientated development works, I learnt this as I went but since these key principles needed to do my job it would have been much easier to start with them.

      How each language implements the key principles always seems to differ slightly but there is an underlying core of theory and this is what

    • make a console calculator

      import sys
      print eval(sys.argv[1])

    • by ari_j (90255)

      Seconded. Learn classic algorithms and data structures. Learn how to evaluate the efficiency of algorithms and data structures so you can develop your own with some hope that the end result will fit the problem at hand.

      Languages are tools and are analogous to pencils in math. Don't waste your time learning how to operate a brand new design of pencil that is so complicated that its own designers haven't yet figured out how to use it well enough to write a user manual for it. Learn what you should be writ

      • by iceaxe (18903)

        But first, learn how to program, which is entirely orthogonal to learning a language to do it in.

        This! By golly, that hits the ol' nail right on its head.

        When we interview candidates for programming jobs we use physical metaphors, pseudo-code, and/or whatever language the candidate is comfortable brainstorming in. Most of our team has programmed in eleventy-seven different languages over the years anyway, and picking up the ones we use in our products is a matter of a few days for someone who knows how to program.

  • Discourage (Score:2, Insightful)

    by Anonymous Coward

    As someone who has been a hiring manager...

    If I have a choice between a person with a degree and one who is self taught, I would always choose the person with the degree. If I have the choice between no one and someone who is self taught - I will wait for another person to come along. I suspect it will be hard to get a real programming job if you are only self taught. There are a lot of elements to a computer science discipline beyond just knowing a language, and hiring managers look for those skills.

    • I have to 2nd this.

      My own start in the world of CS was by messing around with some random C programs doing relatively simple things. Over time that grew more complex and I started reading from programming books. But then I got into college and studied Computer Science. It taught me concepts I NEVER would've learned on my own.

      People who are self taught have motivation. That's a big plus. The big downside is that they sometimes are click-monkeys who only know the tools they played with, but don't unders
    • When you are self taught you often teach yourself to do it wrong, and make the wrong assumptions while you are learning.

      Here are some self taught developers misconceptions that are common, that are cured by a few years of computer science.
      1. Less lines of code the faster the program will run. This is false some algorithms that take more lines of code actually improve speed. While there may be more code the logic allows for less looping of data.

      2. Language x is the ultimate langue, if I can code in this the

    • As a self-taught individual who makes 6 figures programming and who's hired a few, I'd have to disagree. Self-taught developers I've hired know that in the real-world, development is not about programming as an art. It's about using software to solve problems and make money.

      Because kids, software is either about money or masturbation. The guy experimenting with Ocaml is about the latter. The other guy trying to get the feature done for the customer demo on Monday morning is about the former. I hire that guy

      • I'd tend to agree. I'm self taught but have spent 25 years developing in a bank. I'm not aware of a single bug caused by me that went live (precious few even turn up in testing) or failed to hit any deadline. I write solid reliable code that is clear, readable, well commented and most importantly, easily changed by those that follow me. On the other hand, I've had to do a lot of debugging of 'real programmers' code which can be pretty cryptic. I have no interest in oddball languages unless my job requires i
      • by marnues (906739)
        You and my sibling post seem to be exceptions in the self-taught programming land. My current and previous bosses are both self-taught and although they are good programmers they are both terrible software engineers. Certainly they can get the job done. But if you want something extensible and maintainable, these are the wrong guys. They never learned to code in proper OOP and certainly have no understanding of design patterns. When presented with a simple solution, they take it, even if it means a ful
    • I have a bachelor's degree in art. I worked first as a graphic designer, then a web designer, then a web developer with increasingly complex responsibilities. It took me about ten years to get from print design to proper web development, but it's possible.

      I second a previous poster's recommendation that you (the OP) learn ASP.NET. In my area, there are whole recruitment companies that do nothing but place ASP.NET developers, and demand for them outpaces supply. Microsoft has created a very successful eco
    • by maraist (68387) *
      I've also worn the hat of hiring highly skilled technical programmers. What I've found is that most of what 'good' programmers exhibit is self-motivated-determination to read on their own. People that read, not because they HAVE to get something done for work (and thus the bare minimum will suffice), but because they like to read technical manuals as if they were novels. They'll read it through, not because they're looking for a short-cut, or to get some nagging bug fixed, but because they want to dive-d
  • Google is famous for its short attention span when it comes to new projects, after which Dart will be an orphan. Microsoft is famous for screwing its developer base and abandoning languages and the customers who depend on them (VB6, J#, and soon, .net) whenever some 20-something new manager gets a brainwave. I'd stick with cross platform c-form languages like java, c, c++, javascript, or even C#. The money's in languages like these, not the also-ran languages like Ruby, Python, Ocaml, etc.

    • I'd stick with cross platform c-form languages like java, c, c++, javascript, or even C#.

      +1. I'd also throw in PHP & MySQL.

  • "You are not defined by your chosen software stack: I recently asked via Twitter what young engineers wanted to know about careers. Many asked how to know what programming language or stack to study. It doesn’t matter. There you go [slashdot.org]."

  • Learn any language and learn many languages. Learn SQL, NoSQL and general database design. You will get a good job. It may take a few years, but if you can do these things reasonably well (learn and use languages, use databases), you will always be able to get a job.

    My one semester of C++ and networking classes at a junior college has gotten me further than my hoity-toity university Marketing Degree. But it's the fancy university degree that gets me past the HR trash can. So having a degree of any kind

  • if your goal is to get into software development and not just wanting to play with a shiny new language, you ought to just stick with Java until you've gained enough professional software experience to be taken seriously in the industry. Here's the list of reasons why I think this would be a better route:
    • 1.) You've already gotten your hands wet with Java
    • 2.) It's a good language to learn OOP concepts (which are pretty much used in all languages that are popular with employers)
    • 3.) There's a metric shit ton
    • by PCM2 (4486)

      I'd add that my impression of Java has always been that it's a fairly pedantic and unforgiving language to code in ... which, for a noob, is probably a good thing.

  • Is there any chance that if I self-teach Dart, I can get a job in development without a CS degree, once companies begin using the language

    Given Google's reputation for doing R&D and then trashing their research projects when they don't pan out, you'd be foolish to stake your future as a new developer on Dart. The tools are not at a point where they are usable on a real, paying job. You don't even seem to have a background where you are able to work on Dart or its future ecosystem yet. Therefore, your be

  • When Google's new "Go" programming language is in widespread use, think about learning Google's new "Dart" programming language.

    When will they learn?

  • According to HR, you should already have 3-4 years of experience with it NOW. Good luck.

  • The purpose of Dart is fundamentally to create a language which is easier to optimize from the browser perspective against. It is taking stuff out of Javascript. So the early community are going to be people who know Javascript, but are more focused on the sorts of low level C programmers that write high performance interpreters. They are going to love having a junior level guy to test their ideas with if you hang out with them, and identify yourself as such. You will likely learn a lot from these exp

"It's when they say 2 + 2 = 5 that I begin to argue." -- Eric Pepke

Working...