www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - D Programmer Jobs at Sociomantic Labs

reply "Marenz" <mathias.baumann sociomantic.com> writes:
Hey D Programmers,

so, we at Sociomantic Labs are once again (or still) looking for 
D-Developers in Berlin. And lots of them. Currently still D1, but 
the process to change to D2 is initiated.

You can read more about it here:

https://www.sociomantic.com/jobs/d-software-developer/#.UnPl4Xh385Y

You can contact me anytime if you have specific questions. You 
can find me in the IRC #d channel as Marenz, M4renz or Suprano or 
you just send me an email.

cheers,

     --Mathias
Nov 01 2013
next sibling parent Dejan Lekic <dejan.lekic gmail.com> writes:
On Fri, 01 Nov 2013 18:37:59 +0100, Marenz wrote:

 Hey D Programmers,
 
 so, we at Sociomantic Labs are once again (or still) looking for
 D-Developers in Berlin. And lots of them. Currently still D1, but the
 process to change to D2 is initiated.
 
 You can read more about it here:
 
 https://www.sociomantic.com/jobs/d-software-developer/#.UnPl4Xh385Y
 
 You can contact me anytime if you have specific questions. You can find
 me in the IRC #d channel as Marenz, M4renz or Suprano or you just send
 me an email.
 
 cheers,
 
      --Mathias

I posted the info on LinkedIn. I hope you find a good D programmer! :)
Nov 02 2013
prev sibling next sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 11/1/13 10:37 AM, Marenz wrote:
 Hey D Programmers,

 so, we at Sociomantic Labs are once again (or still) looking for
 D-Developers in Berlin. And lots of them. Currently still D1, but the
 process to change to D2 is initiated.

 You can read more about it here:

 https://www.sociomantic.com/jobs/d-software-developer/#.UnPl4Xh385Y

 You can contact me anytime if you have specific questions. You can find
 me in the IRC #d channel as Marenz, M4renz or Suprano or you just send
 me an email.

Thanks, Mathias. I've considered posting a similar message to this board, and this is as good occasion as any. I should emphasize that pursuing a job that requires or allows D is among the best things a member of our community could to do to help the language. 1. Sponsors such as Sociomantic have sponsored DConf 2013 in large part to further their recruitment interest. There is no better way to motivate further event sponsorship than to show that past events resulted in strong hiring. 2. At this point it helps to convert those in the community who only work on D as a hobby outside work, to working full-time with D (and as a consequence, to some extent at least, _on_ D). As I made public recently, Facebook is investigating serious use of D, and significant precedents have been already created. There would be no better way to argue ramping up pursuit of D (including hosting of DConf 2014) than demonstrating that talented engineers are applying to Facebook because it's offering such an opportunity. I am pretty sure this is the case for other employers as well. Andrei
Nov 02 2013
parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 11/2/13 10:29 PM, Era Scarecrow wrote:
 On Saturday, 2 November 2013 at 19:50:48 UTC, Andrei Alexandrescu wrote:

 As I made public recently, Facebook is investigating serious use of D,
 and significant precedents have been already created. There would be
 no better way to argue ramping up pursuit of D (including hosting of
 DConf 2014) than demonstrating that talented engineers are applying to
 Facebook because it's offering such an opportunity. I am pretty sure
 this is the case for other employers as well.

Hmmm then I wonder if they would hire me. I'm not big on facebook (using the site), but I wouldn't mind a job and helping the community at the same time.

Anyone interested send me a resume and I'll hook you in. Andrei
Nov 02 2013
prev sibling next sibling parent "Era Scarecrow" <rtcvb32 yahoo.com> writes:
On Saturday, 2 November 2013 at 19:50:48 UTC, Andrei Alexandrescu 
wrote:

 As I made public recently, Facebook is investigating serious 
 use of D, and significant precedents have been already created. 
 There would be no better way to argue ramping up pursuit of D 
 (including hosting of DConf 2014) than demonstrating that 
 talented engineers are applying to Facebook because it's 
 offering such an opportunity. I am pretty sure this is the case 
 for other employers as well.

Hmmm then I wonder if they would hire me. I'm not big on facebook (using the site), but I wouldn't mind a job and helping the community at the same time.
Nov 02 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Sunday, 3 November 2013 at 05:29:45 UTC, Era Scarecrow wrote:
 On Saturday, 2 November 2013 at 19:50:48 UTC, Andrei 
 Alexandrescu wrote:

 As I made public recently, Facebook is investigating serious 
 use of D, and significant precedents have been already 
 created. There would be no better way to argue ramping up 
 pursuit of D (including hosting of DConf 2014) than 
 demonstrating that talented engineers are applying to Facebook 
 because it's offering such an opportunity. I am pretty sure 
 this is the case for other employers as well.

Hmmm then I wonder if they would hire me. I'm not big on facebook (using the site), but I wouldn't mind a job and helping the community at the same time.

You won't know if you don't try ;)
Nov 02 2013
prev sibling next sibling parent "Gary Willoughby" <dev nomad.so> writes:
On Sunday, 3 November 2013 at 06:01:28 UTC, Andrei Alexandrescu 
wrote:
 Anyone interested send me a resume and I'll hook you in.

 Andrei

I'm not of the calibre Facebook is looking for but i had to exclaim that is fantastically generous of you Andrei. I'm lucky in that i've been using D fulltime in my work since May and loving every minute of it. (Porting several database daemons from C to D, it's amazing how much less code there is in D!).
Nov 03 2013
prev sibling next sibling parent reply "Dicebot" <public dicebot.lv> writes:
On Friday, 1 November 2013 at 17:38:01 UTC, Marenz wrote:
 Hey D Programmers,

 so, we at Sociomantic Labs are once again (or still) looking 
 for D-Developers in Berlin. And lots of them. Currently still 
 D1, but the process to change to D2 is initiated.

 You can read more about it here:

 https://www.sociomantic.com/jobs/d-software-developer/#.UnPl4Xh385Y

 You can contact me anytime if you have specific questions. You 
 can find me in the IRC #d channel as Marenz, M4renz or Suprano 
 or you just send me an email.

 cheers,

     --Mathias

Want to add my 5 cents as someone who has joined the Sociomantic team only half an year ago. Initially my motivation was mostly C++ frustration outrage but I was pleasantly surprised by work environment here, which is very open-minded and task-focused, something you don't expect considering all the Germany cliches :) Perfection is achievable, of course, but it feels really nice to learn from some of active D contributors directly. And being D expert is not really necessary, as Don has mentioned in his DConf talk, converting guys from other languages is a routine :)
Nov 03 2013
next sibling parent Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 11/4/2013 11:22 AM, Gary Willoughby wrote:
 I personally also think BASIC is a total waste of time for beginners. I
 does something to peoples minds that once they learn it, they never want
 to use anything else ever again. I totally agree with the following quote:

 "It is practically impossible to teach good programming to students that
 have had a prior exposure to BASIC: as potential programmers they are
 mentally mutilated beyond hope of regeneration." -Edsger W. Dijkstra

Bah. I started with various flavors of basic, then moved straight to C/C++ and a little bit of 6502 machine code, and then to a bunch of others including D. I've known other people who have successfully done much the same. Dijkstra's full of shit on that one.
Nov 04 2013
prev sibling next sibling parent reply Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 11/4/2013 12:10 PM, Craig Dillabaugh wrote:
 While D code can quickly become complex relative to Java, at the
 same time I think in a beginner course/book could easily be geared
 to keep away from D's fancier features and just teach basics.
 For example, code for reading a text file in in Java is (top
 answer on SO):

 static String readFile(String path, Charset encoding)
     throws IOException
 {
     byte[] encoded = Files.readAllBytes(Paths.get(path));
     return encoding.decode(ByteBuffer.wrap(encoded)).toString();
 }

 vs.

 readText(filename)

 in D. Not really up on Java these days, so perhaps Java now
 includes a readText() like method now.  Anyway, hard to beat the
 D version for
 easy!

Yea. In college, I was a CS tutor for the first year programming students. This was at a school that used Java. I can personally vouch that Java's a terrible language for beginners. (Well, and for everyone else, really ;) ) A major part of the problem is Java's religious fervor for OO. There's a natural tendency for the students to end up being taught OO *before* they have a sufficient grasp on flow-of-execution (In fact, Java makes it difficult for the teachers to avoid doing that.) But, OO is an *architectural* concept that's completely meaningless (and in my observations, extremely confusing) without some form of either imperative or declarative foundation. The other issue is Java's insane amount of boilerplate. Great way to teach beginners that programming is tedious.
Nov 04 2013
next sibling parent Jacob Carlborg <doob me.com> writes:
On 2013-11-05 00:03, Nick Sabalausky wrote:

 Yea. In college, I was a CS tutor for the first year programming
 students. This was at a school that used Java. I can personally vouch
 that Java's a terrible language for beginners. (Well, and for everyone
 else, really ;) )

 A major part of the problem is Java's religious fervor for OO. There's a
 natural tendency for the students to end up being taught OO *before*
 they have a sufficient grasp on flow-of-execution (In fact, Java makes
 it difficult for the teachers to avoid doing that.) But, OO is an
 *architectural* concept that's completely meaningless (and in my
 observations, extremely confusing) without some form of either
 imperative or declarative foundation.

 The other issue is Java's insane amount of boilerplate. Great way to
 teach beginners that programming is tedious.

We had to learn Object Oriented Analysis and Design before any programming in Java at the university. -- /Jacob Carlborg
Nov 05 2013
prev sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2013-11-05 12:41, Bienlein wrote:

 Unhappily, a lot of Java developers out there in enterprise
 computing do some kind of programming with classes, rather than
 OO. For example, some framework developer intended the users to
 overwrite some inherited method in their concrete subclass. As
 this is not understood people do some tricks with reflection or
 even byte code manipulation. When you show them that they only
 need to overwrite the inherited method, then first call super and
 then add their own stuff, they are surprised. And some of those
 people are now architects and your boss. Oh my, oh my...

Someone would understand byte code manipulation but not inheritance? Seems very strange. -- /Jacob Carlborg
Nov 05 2013
next sibling parent Jacob Carlborg <doob me.com> writes:
On 2013-11-05 19:50, deadalnix wrote:

 Well there is understanding and understanding. Yes it is quite common
 that people understand bytecode but not inheritance, from a software
 architecture point of view (not how it works). We even have quite a lot
 of instances of this in this newsgroup.

Put in another way: It seems strange someone can do bytecode manipulation but not create a subclass and override a method. -- /Jacob Carlborg
Nov 06 2013
prev sibling parent Jacob Carlborg <doob me.com> writes:
On 2013-11-05 13:36, Bienlein wrote:

 Ah, you think it seems unbelievable? I thought so too the first
 time. OOP and OOD is not on the job ads any more as earlier. They
 are now filled with things like JSP, JSF, EJBs, JNDI, JTA, JMS,
 SOAP, REST, ICEFaces, Spring, Ajax, OSGi, Spring, Axis, CXF,
 Oracle, Sybase, DB/2, Oracle, MS-SQL, MySQL, Hibernate, Quartz,
 JMeter, XSD, XSLT, JavaScript, etc.

Some of these will imply OO. -- /Jacob Carlborg
Nov 06 2013
prev sibling next sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 11/4/2013 2:34 PM, Era Scarecrow wrote:
   I did x86 Assembly language at 14.

Bah. I programmed the Apollo lunar module computer for NASA when I was 8.
Nov 04 2013
parent Walter Bright <newshound2 digitalmars.com> writes:
On 11/4/2013 6:28 PM, deadalnix wrote:
 On Tuesday, 5 November 2013 at 01:15:11 UTC, Walter Bright wrote:
 On 11/4/2013 2:34 PM, Era Scarecrow wrote:
  I did x86 Assembly language at 14.

Bah. I programmed the Apollo lunar module computer for NASA when I was 8.

XD

?
Nov 04 2013
prev sibling next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On 11/5/2013 2:05 AM, Chris wrote:
 He also told me about the rule of diminishing returns*. If with well written C
 program you can get 90% of assembly's performance, leave it at that. If you
 wanna get the remaining 10% and use assembly instead, the cost of it may not be
 worth the returns.

That wasn't really true for 16 bit DOS programs. There was a much greater return for ASM programs - not just speed, but a large size reduction. The latter was critical because of the tight memory constraints.
Nov 05 2013
prev sibling next sibling parent reply Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 11/5/2013 1:20 AM, H. S. Teoh wrote:
 On Mon, Nov 04, 2013 at 06:12:33PM +0100, PauloPinto wrote:
 Well I was looking at Z80 Assembly code at the age of 12.

I started programming Applesoft BASIC around that age too,

Yea! Applesoft BASIC!! That was my first, too :D. Learned on the Apple IIc with the packed-in tutorial disks (which I think are *still* better designs than most training materials we have today.) Later on I did a whole bunch of QBASIC, and a little GWBASIC. I tried a bit of the Apple Logo too, which was nice as an electronic Spirograph. But it never stuck me as being quite as well-suited to interactive programs as basic, so I didn't use it much. I've actually tried to trace back just when it was I started on Applesoft BASIC, and best I can figure I must have been around 7 or 8. I know I had already learned to read (obviously), and I also remember it was definitely before second grade (but not *immediately* before, IIRC). Not intending to compete on ages of course, it's just that when you're a kid and you're at the Grandparent's place for the evening, all the adults are watching the news, and the only thing remotely toy-like is an Apple II...well, what else you gonna do? :)
 and when I
 was 14 or so, I was programming in Motorola 6502 assembly language.

Much the same here. I was about 12 or 13 (I remember I was in 7th grade). Although it wasn't so much "assembly language" as it was the machine code memory editor built into the Apple II. Didn't do a lot with it though because it was very shortly after I started *trying* to learn C...
 When
 I was 16 one of my assembly programs was sold in a bookstore. Thereafter
 I moved on to Intel 8088 assembly language. It was only years later, in
 college, that I learned C and C++.

Heh, again, somewhat similar: I *tried* to learn C at 13, but found it awkward. So I went back to QBASIC, and later on Visual BASIC 3. When I was around 15, maybe 16, I found this book at the local "Electronics Boutique" as part of a Starter Kit bundle: http://www.amazon.com/Teach-Yourself-Game-Programming-Cd-Ro/dp/0672305623 That book made C (and pointers) finally "click" for me (plus the occasional 386/486/586 asm in the bottleneck sections). Then at around 16-17, I got a Breakout/Arkanoid clone in a few of those several-budget-games-on-one-CD packages that were in all the computer stores at the time. Didn't make much off it, (even McDonald's paid more) but I was thrilled :) Then in late-HS/college I did a centepede clone that didn't really take off (wasn't anything spectacular anyway), wound up in web development, and didn't really get back to indie games until now. Sometimes I'm amazed at some of the game-dev tools we have now (like Unity3D), and at other times I feel like a dinosaur playing catch-up. ;) Which is strange - at my age, *nothing* should be making me feel old. And yet...
 I think BASIC introduced me to the concept behind imperative
 programming,

Exactly. I feel exactly the same way about it.
 even if at the time it has almost no structured constructs
 and most programs were just GOTO spaghetti soup. Going from there to
 assembly language was actually not that much of a stretch, and with big
 performance payoffs, too.

Yea, I didn't realize it at the time, but years later it occurred to me just how bizarrely similar BASIC and Assembly are, considering that one is seen as "high-level" and the other is the quintessential "low-level".
 Of course, the world has moved on since those days, so nowadays we don't
 usually bother with that level of performance fine-tuning except in
 performance critical bits of code.

Strange thing is, I can't decide whether or not I miss it. I certainly don't think I would want to do that sort of low-level tweaking on modern hardware. With all the performance-related complications and nuances of modern processors (even pilelining is way beyond old-news now), not to mention the variation, cycle counting would be a nightmare. Of course, I'm sure cycle counting's outdated anyway!
 But anyway, w.r.t. the OP, if I were to be in charge of designing a
 curriculum, I'd put assembly language as the first language to be
 learned, followed by a good high-level language like D. On this, I agree
 with Knuth's sentiments:

     By understanding a machine-oriented language, the programmer
     will tend to use a much more efficient method; it is much closer
     to reality. -- D. Knuth

     People who are more than casually interested in computers should
     have at least some idea of what the underlying hardware is like.
     Otherwise the programs they write will be pretty weird. -- D.
     Knuth

If I were designing a Programming 101 curriculum, I honestly don't know what language I'd pick. In many ways I don't think a lot of the details really matter much. But what I do think are the most important things in a first language are instant-gratification and a strong emphasis on flow-of-execution. Heck, I might even pick Applesoft BASIC ;) Of course, a lot of the choice would depend on the audience. For graduate-level math students, Haskell would be a real possibility.
Nov 05 2013
next sibling parent Jacob Carlborg <doob me.com> writes:
On 2013-11-06 04:37, Nick Sabalausky wrote:

 I've actually tried to trace back just when it was I started on
 Applesoft BASIC, and best I can figure I must have been around 7 or 8. I
 know I had already learned to read (obviously), and I also remember it
 was definitely before second grade (but not *immediately* before, IIRC).
 Not intending to compete on ages of course, it's just that when you're a
 kid and you're at the Grandparent's place for the evening, all the
 adults are watching the news, and the only thing remotely toy-like is an
 Apple II...well, what else you gonna do? :)

Disassemble the TV in to small pieces so they can't watch the news :) -- /Jacob Carlborg
Nov 06 2013
prev sibling parent Nick Sabalausky <SeeWebsiteToContactMe semitwist.com> writes:
On 11/6/2013 1:32 PM, H. S. Teoh wrote:> On Tue, Nov 05, 2013 at 
10:37:38PM -0500, Nick Sabalausky wrote:
 [...]
 I've actually tried to trace back just when it was I started on
 Applesoft BASIC, and best I can figure I must have been around 7 or
 8. I know I had already learned to read (obviously), and I also
 remember it was definitely before second grade (but not
 *immediately* before, IIRC). Not intending to compete on ages of
 course, it's just that when you're a kid and you're at the
 Grandparent's place for the evening, all the adults are watching the
 news, and the only thing remotely toy-like is an Apple II...well,
 what else you gonna do? :)

Funny, I got an Apple II when I was 8, and was mostly just playing games on it. When I was 10 or 11, I got so sick of playing games that I decided to learn programming instead (i.e., to write my own games :P). Sadly, I never got very far on that front.

I didn't have many games on the Apple II (It was already getting a bit dated when I was using it, so software was hard to find. Ironically, it's much easier to find software for it now thanks to the Internet and an easy-to-build PC <-> Apple II serial cable.) But my brother and sister and I loved the rabbit game that came with it on one of the tutorial disks. Later on, I did also have 2400 A.D. (I've always loved that style of graphics) plus all the BASIC games I typed in from the "how to program in BASIC" books at the library. Initially, the tutorial disks and BASIC were pretty much all I had to do on the system, so that's what I did :)
 [...]
 Heh, again, somewhat similar: I *tried* to learn C at 13, but found
 it awkward. So I went back to QBASIC, and later on Visual BASIC 3.
 When I was around 15, maybe 16, I found this book at the local
 "Electronics Boutique" as part of a Starter Kit bundle:

 


 That book made C (and pointers) finally "click" for me (plus the
 occasional 386/486/586 asm in the bottleneck sections).

Really? I understood pointers right away 'cos they were just fancy terminology for addresses in assembly language. :)

Admittedly, I hadn't gotten very far with the machine code I had done. Mainly just plotting some (giant) "pixels" to the lores screen. IIRC the *main* thing about pointers I had trouble with was (no pun intended): What's the point? From what I had read in the intro to C books, they were always just described as another way to refer to a named variable. So I thought, "Uhh, so why not just use the actual variable instead?" Also the whole notion of "buffers" just seemed...advanced. But then when I started to understand that arrays were nothing more than pointers, it all just "clicked". (It wasn't until many years later I realized arrays aren't *always* mere pointers depending on the language. But by then I'd already understood pointers and memory anyway.)
 Then at around 16-17, I got a Breakout/Arkanoid clone in a few of
 those several-budget-games-on-one-CD packages that were in all the
 computer stores at the time. Didn't make much off it, (even McDonald's
 paid more) but I was thrilled :)

Nice! I don't think I ever got that far in my attempts to write games at the time. I was bogged down with having too many radical ideas without the skills to actually implement them. :P

Finishing is indeed one of the hardest parts. I've always had far more unfinished projects than finished. At the time, I probably never would have finished those games if it weren't for the prodding of the project's producer.
 Of course, a lot of the choice would depend on the audience. For
 graduate-level math students, Haskell would be a real possibility.

IMNSHO, for graduate-level math students I would *definitely* start with assembly language. It would serve to dispel the misconception that the machine is actually capable of representing arbitrary natural numbers or real numbers, or computing the exact value of transcendental functions, etc.. Mathematicians tend to think in terms of idealized entities -- infinite precision, infinite representation length, etc., all of which are impossible on an actual computer. In order to program effectively, the first order of business is to learn the limitations of the machine, and then learn how to translate idealized mathematical entities into the machine's limited representation in such a way that it would be able to compute the desired result.

That's actually a very good point.
 In fact, now that I think of it, I think the first lecture would be to
 convince them of how much computers suck -- can't represent natural
 numbers, can't store real numbers, can't compute transcendental
 functions, don't have infinite speed/time so only a small subset of
 mathematical functions are actually computable, etc..

Very good way to start a course, really. Grabs the students' attention. It was "unexpected approach" course introductions like that that always made me think "Ok, now THIS may turn out to be a pretty good class..."
 Then the second lecture will explain what the computer *can* do. That
 would be when they'd start learning assembly language, and see for
 themselves what the machine is actually doing (and thereby firmly
 dispelling any remaining illusions they may have about mathematical
 entities vs. what is actually representable on the machine).

 Then maybe at the end of the course, after having built up a realistic
 notion of what the machine is capable (and incapable) of, explain how
 things may be put together to produce the illusion of mathematical
 computation, say with a functional language like Haskell.

 Later on, when they learn the theory of computation, I'd emphasize the
 fact that even though we computer people speak of Turing completeness
 all the time, actually no such computer exists that is *actually*
 Turing-complete, because all physical computers have finite storage, and
 therefore are no more than glorified finite-state machines. :) Of
 course, that in no way makes the theory of Turing machines useless --
 it's a useful idealized abstraction -- but we shouldn't be under the
 illusion that we actually have access to the capabilities of an actual
 Turing machine with an infinite tape. Some things are computable in
 theory, but outright infeasible in practice. Like computing the
 Ackermann function of Graham's number, say. :-P

Yea, that'd be a really good class.
Nov 08 2013
prev sibling parent Jacob Carlborg <doob me.com> writes:
On 2013-11-05 19:23, H. S. Teoh wrote:

 Well yes. My point was not to force students to write *all* their code
 in assembly, but to give them some experience in writing small(!)
 assembly programs so that they get a taste of how the machine actually
 works under the hood. Once they have that down, I'd move straight on to
 a nice high-level language like D, because in 90% of the code you write,
 you don't *need* the kind of performance direct assembly coding gives
 you.

Some times you need assembly, not for performance, but because it gives you access to hardware you don't have access to otherwise. But that will most likely be a very small part of your code as well. -- /Jacob Carlborg
Nov 06 2013
prev sibling next sibling parent "Craig Dillabaugh" <cdillaba cg.scs.carleton.ca> writes:
On Sunday, 3 November 2013 at 11:47:13 UTC, Gary Willoughby wrote:
 On Sunday, 3 November 2013 at 06:01:28 UTC, Andrei Alexandrescu 
 wrote:
 Anyone interested send me a resume and I'll hook you in.

 Andrei

I'm not of the calibre Facebook is looking for but i had to exclaim that is fantastically generous of you Andrei.

 I'm lucky in that i've been using D fulltime in my work since 
 May and loving every minute of it. (Porting several database 
 daemons from C to D, it's amazing how much less code there is 
 in D!).

Craig
Nov 03 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Sunday, 3 November 2013 at 11:47:13 UTC, Gary Willoughby wrote:
 On Sunday, 3 November 2013 at 06:01:28 UTC, Andrei Alexandrescu 
 wrote:
 Anyone interested send me a resume and I'll hook you in.

 Andrei

I'm not of the calibre Facebook is looking for but i had to exclaim that is fantastically generous of you Andrei. I'm lucky in that i've been using D fulltime in my work since May and loving every minute of it. (Porting several database daemons from C to D, it's amazing how much less code there is in D!).

I usually notice that people who lack doubt tends to do worse than the ones with doubt in their skills.
Nov 03 2013
prev sibling next sibling parent "Bienlein" <jeti789 web.de> writes:
 Sociomantic team only half an year ago. Initially my motivation 
 was mostly C++ frustration outrage but I was pleasantly 
 surprised by work environment here, which is very open-minded 
 and task-focused, something you don't expect considering all 
 the Germany cliches :)

They learned this in the end from all the foreign spies in Berlin ... I started looking into D a bit mostly out of frustration with Java staying put for years, too much dependency on XML, change towards commodity programing, etc. Other JVM languages are either loaded with too many incoherent features (Scala), only dynamic add-on to Java (Groovy), not there yet (Kotlin), etc. D seems to me the best choice (looked also at Go, Objective-C, Rust, C# and others), but my impression is that you should have been doing some serious C or C++ before. I wonder whether it's worth diving into D without a serious background in C/C++. Will be fun at home, but jobwise it won't count. Really a pitty. Maybe the best is to wait for Kotlin. Don't know ... What do you think how much C/C++ skills are beneficial? -- Bienlein
Nov 04 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Monday, 4 November 2013 at 14:01:32 UTC, Bienlein wrote:
 Don't know ... What do you think how much
 C/C++ skills are beneficial?

 -- Bienlein

I think those are beneficial to dig into some more level parts but not absolutely necessary. As current deployed code base is still D1/Tango, it has look&feel quite similar to Java (contrary to more procedural/template thing modern Phobos endorses). Being a good programmer is more important than knowing a specific language anyway. And applying never harms ;)
Nov 04 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Sunday, 3 November 2013 at 12:55:26 UTC, deadalnix wrote:
 On Sunday, 3 November 2013 at 11:47:13 UTC, Gary Willoughby 
 wrote:
 On Sunday, 3 November 2013 at 06:01:28 UTC, Andrei 
 Alexandrescu wrote:
 Anyone interested send me a resume and I'll hook you in.

 Andrei

I'm not of the calibre Facebook is looking for but i had to exclaim that is fantastically generous of you Andrei. I'm lucky in that i've been using D fulltime in my work since May and loving every minute of it. (Porting several database daemons from C to D, it's amazing how much less code there is in D!).

I usually notice that people who lack doubt tends to do worse than the ones with doubt in their skills.

People with doubts: I know that I don't know everything. People without doubts: I don't know that I don't know everything.
Nov 04 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Monday, 4 November 2013 at 14:01:32 UTC, Bienlein wrote:
 Sociomantic team only half an year ago. Initially my 
 motivation was mostly C++ frustration outrage but I was 
 pleasantly surprised by work environment here, which is very 
 open-minded and task-focused, something you don't expect 
 considering all the Germany cliches :)

They learned this in the end from all the foreign spies in Berlin ... I started looking into D a bit mostly out of frustration with Java staying put for years, too much dependency on XML, change towards commodity programing, etc. Other JVM languages are either loaded with too many incoherent features (Scala), only dynamic add-on to Java (Groovy), not there yet (Kotlin), etc. D seems to me the best choice (looked also at Go, Objective-C, Rust, C# and others), but my impression is that you should have been doing some serious C or C++ before. I wonder whether it's worth diving into D without a serious background in C/C++. Will be fun at home, but jobwise it won't count. Really a pitty. Maybe the best is to wait for Kotlin. Don't know ... What do you think how much C/C++ skills are beneficial? -- Bienlein

Knowledge of Java should be enough to get started. As with all new languages, you'll have to be open-minded and willing to learn new concepts, which is an important skill in software development anyway. "Who D is Not For - As a first programming language - Basic or Java is more suitable for beginners. D makes an excellent second language for intermediate to advanced programmers." (http://dlang.org/overview.html) Since you are already unhappy with other languages and also know why, I think you are ready to dive into D. I'm sure you'll recognize most of the features in this list: http://dlang.org/comparison.html
Nov 04 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Monday, 4 November 2013 at 14:01:32 UTC, Bienlein wrote:
 Will be fun at
 home, but jobwise it won't count. Really a pitty.

 -- Bienlein

You never know. If you're interested in D, go for it, you have got nothing to lose. Maybe companies will soon look for programmers with skills in D.
Nov 04 2013
prev sibling next sibling parent "Gary Willoughby" <dev nomad.so> writes:
On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language. Remember, you wouldn't start with metaprogramming on day one. If you started with the basics using simple syntax and introduce the compiler incrementally it would be very educational. IMHO new programmers should start by learning how memory works, what binary is, how big built-in types are, etc. I am continually amazed when working with seasoned developers who have no idea why floats aren't precise, what a pointer is or what or bit-shifting does. It's staggering. I personally also think BASIC is a total waste of time for beginners. I does something to peoples minds that once they learn it, they never want to use anything else ever again. I totally agree with the following quote: "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." -Edsger W. Dijkstra Years ago i was part of a BASIC community and the flamewars about even thinking about new technologies were something to behold. Something like C or D (i'd opt for D) should be any devs first language. Simply to educate them in the basics.
Nov 04 2013
prev sibling next sibling parent "simendsjo" <simendsjo gmail.com> writes:
On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language.

 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old? And for a non-english speaker? I remember having a very hard time reading English books when I was younger (there might be many programming books for languages with a lot of speakers, but not for all languages), and had difficulties grokking pointers and bit operations. Of course, kids today is much better at English at a young age due to the internet etc., but it's still a lot of new terminology you aren't used to. Being in college now, I see a lot of grown-ups *really* struggling to grasp *basic* programming concepts using Java (even most of the teachers unfortunately). Starting with a limited language like Java probably isn't that bad until you are capable of both reading and writing non-trivial code. I doubt most people here are representative for the average programmer. Many of the discussions here are way over my head, but I still hope that I'm above average.
Nov 04 2013
prev sibling next sibling parent "Craig Dillabaugh" <cdillaba cg.scs.carleton.ca> writes:
On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)



I think this claim on the website is a hold over from the dark days of D language evolution and lack of documentation. It should go!
 I'd argue against this. I think D would make a terrific first 
 language.


I agree.
 (...)
 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old? And for a non-english speaker? I remember having a very hard time reading English books when I was younger (there might be many programming books for languages with a lot of speakers, but not for all languages), and had difficulties grokking pointers and bit operations. Of course, kids today is much better at English at a young age due to the internet etc., but it's still a lot of new terminology you aren't used to.

But if you are Turkish, you're set!
 Being in college now, I see a lot of grown-ups *really* 
 struggling to grasp *basic* programming concepts using Java 
 (even most of the teachers unfortunately). Starting with a 
 limited language like Java probably isn't that bad until you 
 are capable of both reading and writing non-trivial code.

While D code can quickly become complex relative to Java, at the same time I think in a beginner course/book could easily be geared to keep away from D's fancier features and just teach basics. For example, code for reading a text file in in Java is (top answer on SO): static String readFile(String path, Charset encoding) throws IOException { byte[] encoded = Files.readAllBytes(Paths.get(path)); return encoding.decode(ByteBuffer.wrap(encoded)).toString(); } vs. readText(filename) in D. Not really up on Java these days, so perhaps Java now includes a readText() like method now. Anyway, hard to beat the D version for easy!
 I doubt most people here are representative for the average 
 programmer. Many of the discussions here are way over my head, 
 but I still hope that I'm above average.

Hey, that is how I feel. When I talk with other programmers at work/school I feel pretty smart. When I come on here, I feel like a moron.
Nov 04 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby wrote:
 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

In Soviet Russia you do assembly in primary school :)
Nov 04 2013
prev sibling next sibling parent "PauloPinto" <pjmlp progtools.org> writes:
On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language.

 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old?

Well I was looking at Z80 Assembly code at the age of 12.
Nov 04 2013
prev sibling next sibling parent "qznc" <qznc web.de> writes:
On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language. Remember, you wouldn't start with metaprogramming on day one. If you started with the basics using simple syntax and introduce the compiler incrementally it would be very educational. IMHO new programmers should start by learning how memory works, what binary is, how big built-in types are, etc. I am continually amazed when working with seasoned developers who have no idea why floats aren't precise, what a pointer is or what or bit-shifting does. It's staggering.

We need an environment with lots of instant gratification. This is more important than language features. People even use C++ as first language due to libraries like Cinder. http://libcinder.org/
Nov 04 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Monday, 4 November 2013 at 17:30:58 UTC, qznc wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language. Remember, you wouldn't start with metaprogramming on day one. If you started with the basics using simple syntax and introduce the compiler incrementally it would be very educational. IMHO new programmers should start by learning how memory works, what binary is, how big built-in types are, etc. I am continually amazed when working with seasoned developers who have no idea why floats aren't precise, what a pointer is or what or bit-shifting does. It's staggering.

We need an environment with lots of instant gratification. This is more important than language features. People even use C++ as first language due to libraries like Cinder. http://libcinder.org/

Both are equally important. Instant gratification instead of frustration is important. And with D you can get both. One can write simple programs (e.g. readText()) and if needs be dig deeper and see what's going on under the hood. I wouldn't sacrifice features for gratification. Good features attract experienced or highly specialized programmers, while easy high level features help newbies to get up to speed.
Nov 04 2013
prev sibling next sibling parent "Era Scarecrow" <rtcvb32 yahoo.com> writes:
On Monday, 4 November 2013 at 17:12:34 UTC, PauloPinto wrote:
 Well I was looking at Z80 Assembly code at the age of 12.

I did x86 Assembly language at 14. Made my own compiler too, although I discontinued it as it was inferior to NASM, and only allowed you to make .com files. Still that was a fun time. On the other hand I recall extending the assembly language in my own compiler (as safe mini-macros).
Nov 04 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Tuesday, 5 November 2013 at 01:15:11 UTC, Walter Bright wrote:
 On 11/4/2013 2:34 PM, Era Scarecrow wrote:
  I did x86 Assembly language at 14.

Bah. I programmed the Apollo lunar module computer for NASA when I was 8.

XD
Nov 04 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Tuesday, 5 November 2013 at 02:31:25 UTC, Walter Bright wrote:
 On 11/4/2013 6:28 PM, deadalnix wrote:
 On Tuesday, 5 November 2013 at 01:15:11 UTC, Walter Bright 
 wrote:
 On 11/4/2013 2:34 PM, Era Scarecrow wrote:
 I did x86 Assembly language at 14.

Bah. I programmed the Apollo lunar module computer for NASA when I was 8.

XD

?

http://fr.wikipedia.org/wiki/XD The first one is the right one here.
Nov 04 2013
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Mon, Nov 04, 2013 at 06:12:33PM +0100, PauloPinto wrote:
 On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby wrote:
On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
"Who D is Not For
- As a first programming language - Basic or Java is more
suitable for beginners. D makes an excellent second language
for intermediate to advanced programmers."
(http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language.

Something like C or D (i'd opt for D) should be any devs first
language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old?

Well I was looking at Z80 Assembly code at the age of 12.

I started programming Applesoft BASIC around that age too, and when I was 14 or so, I was programming in Motorola 6502 assembly language. When I was 16 one of my assembly programs was sold in a bookstore. Thereafter I moved on to Intel 8088 assembly language. It was only years later, in college, that I learned C and C++. I think BASIC introduced me to the concept behind imperative programming, even if at the time it has almost no structured constructs and most programs were just GOTO spaghetti soup. Going from there to assembly language was actually not that much of a stretch, and with big performance payoffs, too. Of course, the world has moved on since those days, so nowadays we don't usually bother with that level of performance fine-tuning except in performance critical bits of code. But anyway, w.r.t. the OP, if I were to be in charge of designing a curriculum, I'd put assembly language as the first language to be learned, followed by a good high-level language like D. On this, I agree with Knuth's sentiments: By understanding a machine-oriented language, the programmer will tend to use a much more efficient method; it is much closer to reality. -- D. Knuth People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird. -- D. Knuth T -- Без труда не выловишь и рыбку из пруда.
Nov 04 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Tuesday, 5 November 2013 at 06:21:34 UTC, H. S. Teoh wrote:
 On Mon, Nov 04, 2013 at 06:12:33PM +0100, PauloPinto wrote:
 On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
wrote:
On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
"Who D is Not For
- As a first programming language - Basic or Java is more
suitable for beginners. D makes an excellent second language
for intermediate to advanced programmers."
(http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language.

Something like C or D (i'd opt for D) should be any devs 
first
language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old?

Well I was looking at Z80 Assembly code at the age of 12.

I started programming Applesoft BASIC around that age too, and when I was 14 or so, I was programming in Motorola 6502 assembly language. When I was 16 one of my assembly programs was sold in a bookstore. Thereafter I moved on to Intel 8088 assembly language. It was only years later, in college, that I learned C and C++. I think BASIC introduced me to the concept behind imperative programming, even if at the time it has almost no structured constructs and most programs were just GOTO spaghetti soup. Going from there to assembly language was actually not that much of a stretch, and with big performance payoffs, too. Of course, the world has moved on since those days, so nowadays we don't usually bother with that level of performance fine-tuning except in performance critical bits of code. But anyway, w.r.t. the OP, if I were to be in charge of designing a curriculum, I'd put assembly language as the first language to be learned, followed by a good high-level language like D. On this, I agree with Knuth's sentiments: By understanding a machine-oriented language, the programmer will tend to use a much more efficient method; it is much closer to reality. -- D. Knuth People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird. -- D. Knuth T

If someone doesn't know assembly, this book might help "Write Great Code, Volume 2: Thinking Low-Level, Writing High-Level". http://www.amazon.com/Write-Great-Code-Volume-High-Level-ebook/dp/B008Z6ASGC/ref=sr_1_2?ie=UTF8&qid=1383644591&sr=8-2&keywords=thinking+low+level At least one can get an idea of what's going on under the hood. My old man was programming with assembly for a while and told me that the suicide rate among assembly programmers was quite high. He also told me about the rule of diminishing returns*. If with well written C program you can get 90% of assembly's performance, leave it at that. If you wanna get the remaining 10% and use assembly instead, the cost of it may not be worth the returns. *(http://en.wikipedia.org/wiki/Diminishing_returns)
Nov 05 2013
prev sibling next sibling parent "t-dog" <assemble mybutt.com> writes:
On Monday, 4 November 2013 at 17:12:34 UTC, PauloPinto wrote:
 On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language.

 Something like C or D (i'd opt for D) should be any devs 
 first language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old?

Well I was looking at Z80 Assembly code at the age of 12.

ohhh, i see yet another e-biceps thread. so the older architecture i know assembly for, the bigger my biceps is? also Paulo, something doesnt play right here. from what you were saying about things you have done and when, i've gathered, that you should be something about 80 years old by now. On Monday, 4 November 2013 at 17:11:08 UTC, Dicebot wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

In Soviet Russia you do assembly in primary school :)

not sure how much true it is in XXI century, but its funny how our profesor of computer architectures (who originates from Ukrain) assumes that we were taught physics in primary school. No, we were gathering pokemon cards, playing football and fighting each other in primary school for fuck sake On Tuesday, 5 November 2013 at 01:15:11 UTC, Walter Bright wrote:
 On 11/4/2013 2:34 PM, Era Scarecrow wrote:
  I did x86 Assembly language at 14.

Bah. I programmed the Apollo lunar module computer for NASA when I was 8.

that is nothing. We were squashing atoms by hand in CERN with Paulo when we were 5. back to the topic. i wonder how big earnings in Soctiomantic are, given that you are told to program in rather exotic programming language (exotic as non-main stream enough).
Nov 05 2013
prev sibling next sibling parent Robert Schadek <realburner gmx.de> writes:
On 11/05/2013 11:56 AM, t-dog wrote:

+1
Nov 05 2013
prev sibling next sibling parent "Bienlein" <jeti789 web.de> writes:
 A major part of the problem is Java's religious fervor for OO. 
 There's a natural tendency for the students to end up being 
 taught OO *before* they have a sufficient grasp on 
 flow-of-execution

Unhappily, a lot of Java developers out there in enterprise computing do some kind of programming with classes, rather than OO. For example, some framework developer intended the users to overwrite some inherited method in their concrete subclass. As this is not understood people do some tricks with reflection or even byte code manipulation. When you show them that they only need to overwrite the inherited method, then first call super and then add their own stuff, they are surprised. And some of those people are now architects and your boss. Oh my, oh my... That's a reason many Java developers look at Scala as an alternative JVM language or at something else, because it is simply not fun any more ... I think the first language for CS students should be one without garbage collection. It is important to understand what a big win a GC is if the siutation permits using one. -- Bienlein
Nov 05 2013
prev sibling next sibling parent "Bienlein" <jeti789 web.de> writes:
 Someone would understand byte code manipulation but not 
 inheritance? Seems very strange.

Ah, you think it seems unbelievable? I thought so too the first time. OOP and OOD is not on the job ads any more as earlier. They are now filled with things like JSP, JSF, EJBs, JNDI, JTA, JMS, SOAP, REST, ICEFaces, Spring, Ajax, OSGi, Spring, Axis, CXF, Oracle, Sybase, DB/2, Oracle, MS-SQL, MySQL, Hibernate, Quartz, JMeter, XSD, XSLT, JavaScript, etc. So people after graduating are busy like hell learning some of those things to get a job. That leaves absolutely no time to learn OOP/OOD. So once they managed to get a job, they have to find ways to get the work done to keep it. Recruiters don't understand that OOP/OOD is a base technology and many companies don't, either. A lot of Java work is getting some coding work done. If you got that web service implemented in less than 5 hours, then you are good. Otherwise you are bad. Nobody will look at the code whether it reflects some design or something. Sad, but often true out there.
Nov 05 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Tuesday, 5 November 2013 at 12:36:21 UTC, Bienlein wrote:
 Someone would understand byte code manipulation but not 
 inheritance? Seems very strange.

Ah, you think it seems unbelievable? I thought so too the first time. OOP and OOD is not on the job ads any more as earlier. They are now filled with things like JSP, JSF, EJBs, JNDI, JTA, JMS, SOAP, REST, ICEFaces, Spring, Ajax, OSGi, Spring, Axis, CXF, Oracle, Sybase, DB/2, Oracle, MS-SQL, MySQL, Hibernate, Quartz, JMeter, XSD, XSLT, JavaScript, etc. So people after graduating are busy like hell learning some of those things to get a job. That leaves absolutely no time to learn OOP/OOD. So once they managed to get a job, they have to find ways to get the work done to keep it. Recruiters don't understand that OOP/OOD is a base technology and many companies don't, either. A lot of Java work is getting some coding work done. If you got that web service implemented in less than 5 hours, then you are good. Otherwise you are bad. Nobody will look at the code whether it reflects some design or something. Sad, but often true out there.

I'm not really surprised, given that employers (especially big companies) love buzz words. It's the same everywhere, not just in computing.
Nov 05 2013
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Tue, Nov 05, 2013 at 11:05:40AM +0100, Chris wrote:
[...]
 If someone doesn't know assembly, this book might help "Write Great
 Code, Volume 2: Thinking Low-Level, Writing High-Level".
 
 http://www.amazon.com/Write-Great-Code-Volume-High-Level-ebook/dp/B008Z6ASGC/ref=sr_1_2?ie=UTF8&qid=1383644591&sr=8-2&keywords=thinking+low+level
 
 At least one can get an idea of what's going on under the hood. My
 old man was programming with assembly for a while and told me that
 the suicide rate among assembly programmers was quite high.

I'm not surprised. Assembly programs tend to explode in complexity exponentially as code size increases. You can only go so far before the whole thing becomes unmanageably complex, at which point the only way to continue is to start fixing calling conventions, naming conventions, data structure storage formats, etc., i.e., reinvent C.
 He also told me about the rule of diminishing returns*. If with well
 written C program you can get 90% of assembly's performance, leave
 it at that. If you wanna get the remaining 10% and use assembly
 instead, the cost of it may not be worth the returns.

Well yes. My point was not to force students to write *all* their code in assembly, but to give them some experience in writing small(!) assembly programs so that they get a taste of how the machine actually works under the hood. Once they have that down, I'd move straight on to a nice high-level language like D, because in 90% of the code you write, you don't *need* the kind of performance direct assembly coding gives you. That's why GCC has inline assembly extensions, and D has built-in asm blocks: for the most part, you just write in high-level D, but for the few bits of performance-critical code, you have the option of directly writing in assembly. Writing *everything* in assembly is a big waste of time, because 90% of your code isn't part of the performance bottleneck, so you're just making yourself suffer the tedium of assembly coding for basically zero benefit. By writing the non-critical parts of the code in a high-level language, you get huge savings on your development cost, but in the 10% of the code where performance actually matters, writing in assembly can win you huge performance gains. The same argument goes for the GC: 90% of applications out there don't *need* manual fine-tuning of manual memory management; you can save so much development time (and debugging effort!) just by using the GC instead. It's only the 10% of applications that absolutely need performance guarantees, where you actually need to worry about manual memory management. T -- People tell me I'm stubborn, but I refuse to accept it!
Nov 05 2013
prev sibling next sibling parent "deadalnix" <deadalnix gmail.com> writes:
On Tuesday, 5 November 2013 at 12:24:21 UTC, Jacob Carlborg wrote:
 On 2013-11-05 12:41, Bienlein wrote:

 Unhappily, a lot of Java developers out there in enterprise
 computing do some kind of programming with classes, rather than
 OO. For example, some framework developer intended the users to
 overwrite some inherited method in their concrete subclass. As
 this is not understood people do some tricks with reflection or
 even byte code manipulation. When you show them that they only
 need to overwrite the inherited method, then first call super 
 and
 then add their own stuff, they are surprised. And some of those
 people are now architects and your boss. Oh my, oh my...

Someone would understand byte code manipulation but not inheritance? Seems very strange.

Well there is understanding and understanding. Yes it is quite common that people understand bytecode but not inheritance, from a software architecture point of view (not how it works). We even have quite a lot of instances of this in this newsgroup.
Nov 05 2013
prev sibling next sibling parent "Chris" <wendlec tcd.ie> writes:
On Tuesday, 5 November 2013 at 19:53:53 UTC, Walter Bright wrote:
 On 11/5/2013 2:05 AM, Chris wrote:
 He also told me about the rule of diminishing returns*. If 
 with well written C
 program you can get 90% of assembly's performance, leave it at 
 that. If you
 wanna get the remaining 10% and use assembly instead, the cost 
 of it may not be
 worth the returns.

That wasn't really true for 16 bit DOS programs. There was a much greater return for ASM programs - not just speed, but a large size reduction. The latter was critical because of the tight memory constraints.

I have to admit that I know next to nothing about the old 16 bit DOS programs, and not much about ASM. I'm sure that size reduction was critical in 16 bit times. However, and that's what my old man was talking about, once a programmer left the company, they could bin the program, because only the author knew what was really going on. The new programmer had to start from scratch. It was not just about performance, maintenance was also an issue. And as regards performance, he told me that many ASM programmers would use the same instruction sets over and over again. They didn't want to use new or smarter, more efficient instructions. This was partly down to habit/laziness and partly to fear of messing up the program. So the performance gain wasn't really there, and after a few years a good C compiler could probably create better code than ASM with old and suboptimal instructions. But I agree, it's good to know what's going on under the hood, how memory works. I remember a talk by a guy from YouTube. He pointed out that young programmers fresh from college are used to 2GB memory and Java, only to find out that youtube has fierce memory restrictions.
Nov 05 2013
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Tue, Nov 05, 2013 at 10:37:38PM -0500, Nick Sabalausky wrote:
[...]
 I've actually tried to trace back just when it was I started on
 Applesoft BASIC, and best I can figure I must have been around 7 or
 8. I know I had already learned to read (obviously), and I also
 remember it was definitely before second grade (but not
 *immediately* before, IIRC). Not intending to compete on ages of
 course, it's just that when you're a kid and you're at the
 Grandparent's place for the evening, all the adults are watching the
 news, and the only thing remotely toy-like is an Apple II...well,
 what else you gonna do? :)

Funny, I got an Apple II when I was 8, and was mostly just playing games on it. When I was 10 or 11, I got so sick of playing games that I decided to learn programming instead (i.e., to write my own games :P). Sadly, I never got very far on that front. [...]
 Heh, again, somewhat similar: I *tried* to learn C at 13, but found
 it awkward. So I went back to QBASIC, and later on Visual BASIC 3.
 When I was around 15, maybe 16, I found this book at the local
 "Electronics Boutique" as part of a Starter Kit bundle:
 
 http://www.amazon.com/Teach-Yourself-Game-Programming-Cd-Ro/dp/0672305623
 
 That book made C (and pointers) finally "click" for me (plus the
 occasional 386/486/586 asm in the bottleneck sections).

Really? I understood pointers right away 'cos they were just fancy terminology for addresses in assembly language. :)
 Then at around 16-17, I got a Breakout/Arkanoid clone in a few of
 those several-budget-games-on-one-CD packages that were in all the
 computer stores at the time. Didn't make much off it, (even McDonald's
 paid more) but I was thrilled :)

Nice! I don't think I ever got that far in my attempts to write games at the time. I was bogged down with having too many radical ideas without the skills to actually implement them. :P [...]
 But anyway, w.r.t. the OP, if I were to be in charge of designing a
 curriculum, I'd put assembly language as the first language to be
 learned, followed by a good high-level language like D. On this, I
 agree with Knuth's sentiments:

     By understanding a machine-oriented language, the programmer
     will tend to use a much more efficient method; it is much closer
     to reality. -- D. Knuth

     People who are more than casually interested in computers should
     have at least some idea of what the underlying hardware is like.
     Otherwise the programs they write will be pretty weird. -- D.
     Knuth

If I were designing a Programming 101 curriculum, I honestly don't know what language I'd pick. In many ways I don't think a lot of the details really matter much. But what I do think are the most important things in a first language are instant-gratification and a strong emphasis on flow-of-execution. Heck, I might even pick Applesoft BASIC ;)

True. For a total beginner's intro to programming, assembly is probably a bit too scary. :P Applesoft might have been a good choice but its age is definitely showing. I dunno. Maybe D? :) At least, the simplest parts of it. But for computer science majors, I'd say dump assembly on them and if they can't handle it, let them switch majors since they won't turn out to be good programmers anyway. :P
 Of course, a lot of the choice would depend on the audience. For
 graduate-level math students, Haskell would be a real possibility.

IMNSHO, for graduate-level math students I would *definitely* start with assembly language. It would serve to dispel the misconception that the machine is actually capable of representing arbitrary natural numbers or real numbers, or computing the exact value of transcendental functions, etc.. Mathematicians tend to think in terms of idealized entities -- infinite precision, infinite representation length, etc., all of which are impossible on an actual computer. In order to program effectively, the first order of business is to learn the limitations of the machine, and then learn how to translate idealized mathematical entities into the machine's limited representation in such a way that it would be able to compute the desired result. In fact, now that I think of it, I think the first lecture would be to convince them of how much computers suck -- can't represent natural numbers, can't store real numbers, can't compute transcendental functions, don't have infinite speed/time so only a small subset of mathematical functions are actually computable, etc.. Then the second lecture will explain what the computer *can* do. That would be when they'd start learning assembly language, and see for themselves what the machine is actually doing (and thereby firmly dispelling any remaining illusions they may have about mathematical entities vs. what is actually representable on the machine). Then maybe at the end of the course, after having built up a realistic notion of what the machine is capable (and incapable) of, explain how things may be put together to produce the illusion of mathematical computation, say with a functional language like Haskell. Later on, when they learn the theory of computation, I'd emphasize the fact that even though we computer people speak of Turing completeness all the time, actually no such computer exists that is *actually* Turing-complete, because all physical computers have finite storage, and therefore are no more than glorified finite-state machines. :) Of course, that in no way makes the theory of Turing machines useless -- it's a useful idealized abstraction -- but we shouldn't be under the illusion that we actually have access to the capabilities of an actual Turing machine with an infinite tape. Some things are computable in theory, but outright infeasible in practice. Like computing the Ackermann function of Graham's number, say. :-P T -- What do you call optometrist jokes? Vitreous humor.
Nov 06 2013
prev sibling next sibling parent "Meta" <jared771 gmail.com> writes:
Somewhat of a coincidence, my first *real* programming language 
was C++ (though I'd used GML/Visual Basic quite extensively 
before that), and I learned it primarily using Bartosz Milewski's 
book "C++ In Action: Industrial Strength Programming"[0]. It was 
from his site that I first learned about D.

[0]: http://www.relisoft.com/index.htm
Nov 06 2013
prev sibling next sibling parent "Moritz Maxeiner" <moritz ucworks.org> writes:
On Friday, 1 November 2013 at 17:38:01 UTC, Marenz wrote:
 Hey D Programmers,

 so, we at Sociomantic Labs are once again (or still) looking 
 for D-Developers in Berlin. And lots of them. Currently still 
 D1, but the process to change to D2 is initiated.

 You can read more about it here:

 https://www.sociomantic.com/jobs/d-software-developer/#.UnPl4Xh385Y

 You can contact me anytime if you have specific questions. You 
 can find me in the IRC #d channel as Marenz, M4renz or Suprano 
 or you just send me an email.

 cheers,

     --Mathias

Hi, I tried contacting you via email (your sociomantic adress) last weekend and I've been trying to talk to you on IRC a couple of time over the last week (on your Nicks M4renz and Marenz), but never got a reply to my questions, which is why I will ask here now: Do you also provide internships for BSc students of computer science ("Informatik") in Berlin? We are required to complete one ("Berufspraktikum") and I'd like to know if it would be possible to do so at Sociomantic Labs. Regards, Moritz
Nov 09 2013
prev sibling next sibling parent reply Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 11/1/13, Marenz <mathias.baumann sociomantic.com> wrote:
 we at Sociomantic Labs are once again (or still) looking for
 D-Developers in Berlin.

Does that imply only people living near to Berlin should apply? If not, what does Sociomantic offer for people living abroad, e.g. perhaps some kind of rent financing?
Dec 04 2013
next sibling parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 12/5/13 3:32 AM, Andrej Mitrovic wrote:
 On 12/5/13, Don <x nospam.com> wrote:
 We have a lot of experience with relocation. It's completely
 normal for us.

That's great to hear. My main concern is having a place to stay. I'm not financially capable right now, unfortunately.

I was in the same situation back in the 1990s. I recall to this day the advice from a genius older programmer: "You can do good work. All you need now is a source of money." Back then I wasn't entirely clear what he meant because I didn't realize what money people are willing to pay for the right skills. The right approach is indeed to get a source of money. That works quite simply: (a) ace the interview; (b) tell what they need to do for them to secure your skills. You quite literally have something to sell that has a good value, and they need to assess that. Worrying about a place to live at your new location breaks sequence. I had only $300 in my pocket when I landed in New York in 1998, but also a paying job. Andrei
Dec 05 2013
prev sibling next sibling parent reply Jacob Carlborg <doob me.com> writes:
On 2013-12-06 14:02, Dicebot wrote:

 [13:56:54] Marenz: real programmers have crappy CVs
 [13:56:57] Marenz: BECAUSE WE CAN

 No real must-haves. Just be aware that CV's are checked here by
 programmers, not HR's, so keeping it short and focused on technical
 details is appreciated, as well as any links to open-source activity.

Really? That's an enormous advantage. Compared to HR people which will not even look at a CV unless you have a fancy degree. -- /Jacob Carlborg
Dec 06 2013
parent Jacob Carlborg <doob me.com> writes:
On 2013-12-06 15:47, Craig Dillabaugh wrote:

 Better yet are organizations that use computer programs to screen the
 resumes.  At one time I applied to tonnes of positions with the Canadian
 gov't and never got an interview even when my skills matched the job
 description perfectly.  Then I realized that the trick was to copy and
 paste the job description into my resume, and just work my experience
 around it.  All of the sudden I started getting interviews.

Haha, that sucks.
 Often they would have a form where you had to fill in your Education, so
 they would 100% for sure screen out someone without a degree. I think
 they would do better if managers just went back to hiring family members
 :o)

Yeah. These they you can upload a Word document or PDF and they will screen that. -- /Jacob Carlborg
Dec 06 2013
prev sibling next sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 12/6/13 4:49 AM, Craig Dillabaugh wrote:
 On Friday, 6 December 2013 at 12:37:48 UTC, Andrej Mitrovic wrote:
 On 12/5/13, Dicebot <public dicebot.lv> wrote:
 Just got the formal confirmation from HR - you can certainly
 expect some extra help during first months to get settled. If you
 apply via careers sociomantic.com , just mention your concerns in
 e-mail / during interview to get any specific details.

Well I'll certainly think about writing a resume / application. But I don't think I have much chances. I don't have a CS degree, and my work experience is not programming-related. I don't have experience with distributed architectures either.

I can't really speak for Sociomantic, but really if you are smart and a good coder that should count as much or more than a CS degree. You can't teach smart! If you have code you have written on github (or anywhere else out there) then make them aware of that. If you have contributed to DMD, Phobos it is likely more advanced than a lot of full-time jobs for new grads anyways. So while you may not have 'paid' work experience you can demonstrate that you have real world experience.

Degrees help for things like immigration, where some bureaucratic rules must be obeyed. There may be country laws that prohibit certain positions without the degree. Otherwise they should be mostly advisory for a good company. One of the best engineers at Facebook doesn't have a degree and was homeless at hire time. He failed two of three interviews, too. True story. Andrei
Dec 06 2013
parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 12/6/13 1:40 PM, Max Samukha wrote:
 On Friday, 6 December 2013 at 21:06:43 UTC, Andrei Alexandrescu wrote:

 Degrees help for things like immigration, where some bureaucratic
 rules must be obeyed. There may be country laws that prohibit certain
 positions without the degree. Otherwise they should be mostly advisory
 for a good company. One of the best engineers at Facebook doesn't have
 a degree and was homeless at hire time. He failed two of three
 interviews, too. True story.

I somewhat regret I do not have a solid formal background in a field involving higher math. Educating oneself on the hoof is a rather painful process, though it has some advantages.

Then do what I did. I started in the PhD program at 32. Andrei
Dec 06 2013
prev sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 12/6/13 7:26 AM, Andrej Mitrovic wrote:
 On 12/6/13, Dicebot <public dicebot.lv> wrote:
 No real must-haves. Just be aware that CV's are checked here by
 programmers, not HR's, so keeping it short and focused on
 technical details is appreciated, as well as any links to
 open-source activity.

Thanks. I've sent something. We'll see. :p

Good luck! Andrei
Dec 06 2013
parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 2/11/14, 10:19 AM, Andrej Mitrovic wrote:
 On 12/6/13, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> wrote:
 On 12/6/13 7:26 AM, Andrej Mitrovic wrote:
 On 12/6/13, Dicebot <public dicebot.lv> wrote:
 No real must-haves. Just be aware that CV's are checked here by
 programmers, not HR's, so keeping it short and focused on
 technical details is appreciated, as well as any links to
 open-source activity.

Thanks. I've sent something. We'll see. :p

Good luck! Andrei

Looks like Sociomantic just grabbed themselves another D dev.

Awesome. Congratulations!! Andrei
Feb 11 2014
parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 2/11/14, 10:57 AM, Andrej Mitrovic wrote:
 On Tuesday, 11 February 2014 at 18:53:08 UTC, Andrei Alexandrescu wrote:
 Awesome. Congratulations!!

Thanks! Can you believe I thought this was just going to be another one of those "let's throw something on the wall, and see if it sticks?" moments? I honestly thought my chances were effectively zero, not because of my own abilities, but because the competition out there is fierce.

It was a shock to me, too, to figure how much people are willing to pay for my mediocrity. Andrei
Feb 11 2014
parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 2/11/14, 11:24 AM, Steven Schveighoffer wrote:
 On Tue, 11 Feb 2014 14:23:00 -0500, Andrei Alexandrescu
 <SeeWebsiteForEmail erdani.org> wrote:

 On 2/11/14, 10:57 AM, Andrej Mitrovic wrote:
 On Tuesday, 11 February 2014 at 18:53:08 UTC, Andrei Alexandrescu wrote:
 Awesome. Congratulations!!

Thanks! Can you believe I thought this was just going to be another one of those "let's throw something on the wall, and see if it sticks?" moments? I honestly thought my chances were effectively zero, not because of my own abilities, but because the competition out there is fierce.

It was a shock to me, too, to figure how much people are willing to pay for my mediocrity.

#humblebrag

It would be if it weren't true. I forgot whether I mentioned this story herein: I once did some training for a company in Tokyo. They asked me for a quote, and I sent them one. They mistakenly read one extra zero at the end. Andrei
Feb 11 2014
prev sibling next sibling parent Robert Schadek <realburner gmx.de> writes:
On 12/04/2013 09:24 PM, Andrej Mitrovic wrote:
 On 11/1/13, Marenz <mathias.baumann sociomantic.com> wrote:
 we at Sociomantic Labs are once again (or still) looking for
 D-Developers in Berlin.

not, what does Sociomantic offer for people living abroad, e.g. perhaps some kind of rent financing?

Berlin/Germany is easy, just move there. any other country, I'm not sure.
Dec 04 2013
prev sibling next sibling parent "Max Samukha" <maxsamukha gmail.com> writes:
On Friday, 1 November 2013 at 17:38:01 UTC, Marenz wrote:
 Hey D Programmers,

 so, we at Sociomantic Labs are once again (or still) looking 
 for D-Developers in Berlin. And lots of them. Currently still 
 D1, but the process to change to D2 is initiated.

How can one still program in D1? ;)
 You can read more about it here:

 https://www.sociomantic.com/jobs/d-software-developer/#.UnPl4Xh385Y

 You can contact me anytime if you have specific questions. You 
 can find me in the IRC #d channel as Marenz, M4renz or Suprano 
 or you just send me an email.

 cheers,

     --Mathias

Dec 04 2013
prev sibling next sibling parent "Max Samukha" <maxsamukha gmail.com> writes:
On Monday, 4 November 2013 at 17:11:08 UTC, Dicebot wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

In Soviet Russia you do assembly in primary school :)

Hehe, that's what I did. For http://en.wikipedia.org/wiki/KR580VM80A, an i8080 replica. Actually, I managed to write my first working assembly program by POKEing machine codes form BASIC. The machine didn't have a display, so I was entering the commands by touch. Unforgettable experience.
Dec 04 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Wednesday, 4 December 2013 at 20:24:37 UTC, Andrej Mitrovic 
wrote:
 On 11/1/13, Marenz <mathias.baumann sociomantic.com> wrote:
 we at Sociomantic Labs are once again (or still) looking for
 D-Developers in Berlin.

Does that imply only people living near to Berlin should apply? If not, what does Sociomantic offer for people living abroad, e.g. perhaps some kind of rent financing?

I'll forward this question to HR ;) (I was relocating from another EU country and it was just matter of buying a plane ticket)
Dec 04 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Wednesday, 4 December 2013 at 21:54:38 UTC, Max Samukha wrote:
 On Friday, 1 November 2013 at 17:38:01 UTC, Marenz wrote:
 Hey D Programmers,

 so, we at Sociomantic Labs are once again (or still) looking 
 for D-Developers in Berlin. And lots of them. Currently still 
 D1, but the process to change to D2 is initiated.

How can one still program in D1? ;)

Not very convenient but still better than C++ ;)
Dec 04 2013
prev sibling next sibling parent Marco Leise <Marco.Leise gmx.de> writes:
Am Tue, 05 Nov 2013 03:40:52 +0100
schrieb "deadalnix" <deadalnix gmail.com>:

 On Tuesday, 5 November 2013 at 02:31:25 UTC, Walter Bright wrote:
 On 11/4/2013 6:28 PM, deadalnix wrote:
 On Tuesday, 5 November 2013 at 01:15:11 UTC, Walter Bright 
 wrote:
 On 11/4/2013 2:34 PM, Era Scarecrow wrote:
 I did x86 Assembly language at 14.

Bah. I programmed the Apollo lunar module computer for NASA when I was 8.

XD

?

http://fr.wikipedia.org/wiki/XD The first one is the right one here.

Oh no, you linked the French Wikipedia, now Walter will never find out that it is a grining face with closed eyes. -- Marco
Dec 05 2013
prev sibling next sibling parent Marco Leise <Marco.Leise gmx.de> writes:
Am Mon, 04 Nov 2013 18:12:33 +0100
schrieb "PauloPinto" <pjmlp progtools.org>:

 On Monday, 4 November 2013 at 16:49:10 UTC, simendsjo wrote:
 On Monday, 4 November 2013 at 16:22:52 UTC, Gary Willoughby 
 wrote:
 On Monday, 4 November 2013 at 15:58:48 UTC, Chris wrote:
 "Who D is Not For
 - As a first programming language - Basic or Java is more 
 suitable for beginners. D makes an excellent second language 
 for intermediate to advanced programmers."
 (http://dlang.org/overview.html)

I'd argue against this. I think D would make a terrific first language.

 Something like C or D (i'd opt for D) should be any devs first 
 language. Simply to educate them in the basics.

I would say that it really depends on the age too. D as a first language for an 18 year-old technically savvy person might work, but for a 10 year-old?

Well I was looking at Z80 Assembly code at the age of 12.

I looked at Gorillaz QBasic code when my father bought our first computer (286 PC without FPU, FPUs were out). So I started there, and look, I could still learn other imperative languages like D, Delphi or C++. Just not LISP or Haskell. -- Marco
Dec 05 2013
prev sibling next sibling parent "Don" <x nospam.com> writes:
On Wednesday, 4 December 2013 at 20:24:37 UTC, Andrej Mitrovic 
wrote:
 On 11/1/13, Marenz <mathias.baumann sociomantic.com> wrote:
 we at Sociomantic Labs are once again (or still) looking for
 D-Developers in Berlin.

Does that imply only people living near to Berlin should apply?

Definitely not! Most of our programmers were not living in Berlin when they applied.
 If
 not, what does Sociomantic offer for people living abroad, e.g.
 perhaps some kind of rent financing?

Our team is *very* international, with about thirty nationalities represented. We have a lot of experience with relocation. It's completely normal for us.
Dec 05 2013
prev sibling next sibling parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 12/5/13, Don <x nospam.com> wrote:
 We have a lot of experience with relocation. It's completely
 normal for us.

That's great to hear. My main concern is having a place to stay. I'm not financially capable right now, unfortunately.
Dec 05 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Thursday, 5 December 2013 at 09:01:31 UTC, Don wrote:
 On Wednesday, 4 December 2013 at 20:24:37 UTC, Andrej Mitrovic 
 wrote:
 On 11/1/13, Marenz <mathias.baumann sociomantic.com> wrote:


 Our team is *very* international, with about thirty 
 nationalities represented.
 We have a lot of experience with relocation. It's completely 
 normal for us.

Sorry to hijack (a bit) this thread, but I would like to ask two or three things about working in Germany (Berlin and Frankfurt-am-Main are the places that interest me). * what salary could an engineer with 8 y experience (4 in electrical, 4 in software) ask for in Germany * what would be the rent for two-bedroom flat in the not-so-far-from-the-downtown area? Thanks.
Dec 05 2013
prev sibling next sibling parent "eles" <eles eles.com> writes:
On Thursday, 5 December 2013 at 15:11:07 UTC, Andrei Alexandrescu 
wrote:
 On 12/5/13 3:32 AM, Andrej Mitrovic wrote:
 On 12/5/13, Don <x nospam.com> wrote:


 assess that. Worrying about a place to live at your new 
 location breaks sequence. I had only $300 in my pocket when I

Yes. Good advice, I concede. Dura lex, sed lex.
Dec 05 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Thursday, 5 December 2013 at 11:32:57 UTC, Andrej Mitrovic 
wrote:
 On 12/5/13, Don <x nospam.com> wrote:
 We have a lot of experience with relocation. It's completely
 normal for us.

That's great to hear. My main concern is having a place to stay. I'm not financially capable right now, unfortunately.

Just got the formal confirmation from HR - you can certainly expect some extra help during first months to get settled. If you apply via careers sociomantic.com , just mention your concerns in e-mail / during interview to get any specific details.
Dec 05 2013
prev sibling next sibling parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 12/5/13, Dicebot <public dicebot.lv> wrote:
 Just got the formal confirmation from HR - you can certainly
 expect some extra help during first months to get settled. If you
 apply via careers sociomantic.com , just mention your concerns in
 e-mail / during interview to get any specific details.

Well I'll certainly think about writing a resume / application. But I don't think I have much chances. I don't have a CS degree, and my work experience is not programming-related. I don't have experience with distributed architectures either.
Dec 06 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Friday, 6 December 2013 at 12:37:48 UTC, Andrej Mitrovic wrote:
 On 12/5/13, Dicebot <public dicebot.lv> wrote:
 Just got the formal confirmation from HR - you can certainly
 expect some extra help during first months to get settled. If 
 you
 apply via careers sociomantic.com , just mention your concerns 
 in
 e-mail / during interview to get any specific details.

Well I'll certainly think about writing a resume / application. But I don't think I have much chances. I don't have a CS degree, and my work experience is not programming-related. I don't have experience with distributed architectures either.

Come on, don't be silly :P I don't have a CS degree too (I don't have any degree at all). That wasn't an issue at all. And https://github.com/AndrejMitrovic?tab=activity speaks on its own. There is no harm in applying.
Dec 06 2013
prev sibling next sibling parent "Craig Dillabaugh" <craig.dillabaugh gmail.com> writes:
On Friday, 6 December 2013 at 12:37:48 UTC, Andrej Mitrovic wrote:
 On 12/5/13, Dicebot <public dicebot.lv> wrote:
 Just got the formal confirmation from HR - you can certainly
 expect some extra help during first months to get settled. If 
 you
 apply via careers sociomantic.com , just mention your concerns 
 in
 e-mail / during interview to get any specific details.

Well I'll certainly think about writing a resume / application. But I don't think I have much chances. I don't have a CS degree, and my work experience is not programming-related. I don't have experience with distributed architectures either.

I can't really speak for Sociomantic, but really if you are smart and a good coder that should count as much or more than a CS degree. You can't teach smart! If you have code you have written on github (or anywhere else out there) then make them aware of that. If you have contributed to DMD, Phobos it is likely more advanced than a lot of full-time jobs for new grads anyways. So while you may not have 'paid' work experience you can demonstrate that you have real world experience.
Dec 06 2013
prev sibling next sibling parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 12/6/13, Dicebot <public dicebot.lv> wrote:
 Come on, don't be silly :P I don't have a CS degree too (I don't
 have any degree at all). That wasn't an issue at all. And
 https://github.com/AndrejMitrovic?tab=activity speaks on its own.

 There is no harm in applying.

Cool. Do you have any tips or must-haves for the resume? I've written a few but never in English or ones targeting a firm abroad.
Dec 06 2013
prev sibling next sibling parent "Dicebot" <public dicebot.lv> writes:
On Friday, 6 December 2013 at 12:52:24 UTC, Andrej Mitrovic wrote:
 On 12/6/13, Dicebot <public dicebot.lv> wrote:
 Come on, don't be silly :P I don't have a CS degree too (I 
 don't
 have any degree at all). That wasn't an issue at all. And
 https://github.com/AndrejMitrovic?tab=activity speaks on its 
 own.

 There is no harm in applying.

Cool. Do you have any tips or must-haves for the resume? I've written a few but never in English or ones targeting a firm abroad.

[13:56:54] Marenz: real programmers have crappy CVs [13:56:57] Marenz: BECAUSE WE CAN No real must-haves. Just be aware that CV's are checked here by programmers, not HR's, so keeping it short and focused on technical details is appreciated, as well as any links to open-source activity.
Dec 06 2013
prev sibling next sibling parent "Craig Dillabaugh" <craig.dillabaugh gmail.com> writes:
On Friday, 6 December 2013 at 13:11:37 UTC, Jacob Carlborg wrote:
 On 2013-12-06 14:02, Dicebot wrote:

 [13:56:54] Marenz: real programmers have crappy CVs
 [13:56:57] Marenz: BECAUSE WE CAN

 No real must-haves. Just be aware that CV's are checked here by
 programmers, not HR's, so keeping it short and focused on 
 technical
 details is appreciated, as well as any links to open-source 
 activity.

Really? That's an enormous advantage. Compared to HR people which will not even look at a CV unless you have a fancy degree.

Better yet are organizations that use computer programs to screen the resumes. At one time I applied to tonnes of positions with the Canadian gov't and never got an interview even when my skills matched the job description perfectly. Then I realized that the trick was to copy and paste the job description into my resume, and just work my experience around it. All of the sudden I started getting interviews. Often they would have a form where you had to fill in your Education, so they would 100% for sure screen out someone without a degree. I think they would do better if managers just went back to hiring family members :o)
Dec 06 2013
prev sibling next sibling parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 12/6/13, Dicebot <public dicebot.lv> wrote:
 No real must-haves. Just be aware that CV's are checked here by
 programmers, not HR's, so keeping it short and focused on
 technical details is appreciated, as well as any links to
 open-source activity.

Thanks. I've sent something. We'll see. :p
Dec 06 2013
prev sibling next sibling parent "Max Samukha" <maxsamukha gmail.com> writes:
On Friday, 6 December 2013 at 21:06:43 UTC, Andrei Alexandrescu 
wrote:

 Degrees help for things like immigration, where some 
 bureaucratic rules must be obeyed. There may be country laws 
 that prohibit certain positions without the degree. Otherwise 
 they should be mostly advisory for a good company. One of the 
 best engineers at Facebook doesn't have a degree and was 
 homeless at hire time. He failed two of three interviews, too. 
 True story.

I somewhat regret I do not have a solid formal background in a field involving higher math. Educating oneself on the hoof is a rather painful process, though it has some advantages.
Dec 06 2013
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 05/12/13 10:29, Marco Leise wrote:
 I looked at Gorillaz QBasic code when my father bought our
 first computer (286 PC without FPU, FPUs were out). So I
 started there, and look, I could still learn other imperative
 languages like D, Delphi or C++. Just not LISP or Haskell.

One of the very widespread "educational" computer programs in the UK was LOGO, which came with the BBC Micro and even had a real, robotic turtle that you could plug into the computer and guide around instead of using the "turtle" cursor on the screen. Of course, we all used it as what it seemed to be, which was a fun program for drawing stuff. But actually LOGO is a dialect of Lisp, and in retrospect I wish I'd learned more about it ...
Dec 06 2013
prev sibling next sibling parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
On 12/6/13, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> wrote:
 On 12/6/13 7:26 AM, Andrej Mitrovic wrote:
 On 12/6/13, Dicebot <public dicebot.lv> wrote:
 No real must-haves. Just be aware that CV's are checked here by
 programmers, not HR's, so keeping it short and focused on
 technical details is appreciated, as well as any links to
 open-source activity.

Thanks. I've sent something. We'll see. :p

Good luck! Andrei

Looks like Sociomantic just grabbed themselves another D dev.
Feb 11 2014
prev sibling next sibling parent "Andrej Mitrovic" <andrej.mitrovich gmail.com> writes:
On Tuesday, 11 February 2014 at 18:53:08 UTC, Andrei Alexandrescu 
wrote:
 Awesome. Congratulations!!

Thanks! Can you believe I thought this was just going to be another one of those "let's throw something on the wall, and see if it sticks?" moments? I honestly thought my chances were effectively zero, not because of my own abilities, but because the competition out there is fierce.
Feb 11 2014
prev sibling next sibling parent "nazriel" <spam dzfl.pl> writes:
On Tuesday, 11 February 2014 at 18:19:18 UTC, Andrej Mitrovic 
wrote:
 On 12/6/13, Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> 
 wrote:
 On 12/6/13 7:26 AM, Andrej Mitrovic wrote:
 On 12/6/13, Dicebot <public dicebot.lv> wrote:
 No real must-haves. Just be aware that CV's are checked here 
 by
 programmers, not HR's, so keeping it short and focused on
 technical details is appreciated, as well as any links to
 open-source activity.

Thanks. I've sent something. We'll see. :p

Good luck! Andrei

Looks like Sociomantic just grabbed themselves another D dev.

Very nice! Congrats Andrej
Feb 11 2014
prev sibling next sibling parent "Steven Schveighoffer" <schveiguy yahoo.com> writes:
On Tue, 11 Feb 2014 14:23:00 -0500, Andrei Alexandrescu  
<SeeWebsiteForEmail erdani.org> wrote:

 On 2/11/14, 10:57 AM, Andrej Mitrovic wrote:
 On Tuesday, 11 February 2014 at 18:53:08 UTC, Andrei Alexandrescu wrote:
 Awesome. Congratulations!!

Thanks! Can you believe I thought this was just going to be another one of those "let's throw something on the wall, and see if it sticks?" moments? I honestly thought my chances were effectively zero, not because of my own abilities, but because the competition out there is fierce.

It was a shock to me, too, to figure how much people are willing to pay for my mediocrity.

#humblebrag
Feb 11 2014
prev sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 11/02/14 19:19, Andrej Mitrovic wrote:
 Looks like Sociomantic just grabbed themselves another D dev.

Congratulations! :-)
Feb 11 2014