Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror

Comment: Re:Layoffs (Score 1) 640

by alanwj (#26297619) Attached to: IE Market Share Drops Below 70%

Can you give examples of good Exchange replacements?

Have a look at the PostPath Email and Collaboration Server. It is a mail server that runs on Linux and acts as a drop in replacement for Exchange (i.e. it implements the MAPI protocol so no special plugins are needed). They were recently acquired by Cisco, so I'm not sure what that has done to the availability of their server.

Admitting my biases, I am former employ of PostPath.

Comment: Re:Don't forget the ninjas (Score 1) 486

by alanwj (#26054995) Attached to: Future of Space Elevator Looks Shaky

Than there's the problem of "lowering" that massive cable to the ground.

Actually, I think the idea is that cars would run up and down the cable -- even as simple as, the cable stays put, and the cars use motorized wheels.

I expect he was referring to lowering the cable to the ground during the initial construction of the elevator, rather than for each trip.

Comment: Re:Java (Score 4, Insightful) 997

by alanwj (#26016891) Attached to: What Programming Language For Linux Development?

The reason to fear Java doesn't really have much at all to do with any merits of the language itself. The reason you should fear Java is that it doesn't really add anything to your resume to distinguish you. There are, frankly, a LOT of extremely mediocre programmers on the market, and a common attribute they share is that they only know Java.

That said, DO learn Java. Not knowing how to use one of the most popular tools in your field is also not a smart idea. Just don't by any means think that your education is done.

For what it's worth, here are the four major things I look for when interviewing programmers.

1. Do you know C? (whether you are going to be programming in C is irrelevant)

If you don't know C, you probably have very little understanding of how computers work. C is language you can depend on to be on pretty much every platform; C is the language external APIs and foreign function interfaces are specified in; C gets the job done when all your layers of abstraction fail you.

2. Do you know a functional language such as Lisp, Scheme, or Haskell?

Programming in a functional language changes the way you think about programming in general. Programmers that understand functional programming generally are able to produce better solutions to problems even in imperative languages. Structure and Interpretation of Computer Programs is available online for free. Read it today and improve your skillset.

3. Can you write a compiler from start to finish?

The theory surrounding language parsing (automata, state machines, regex, grammars, etc) is fundamental to computing. In fact, computing itself is usually defined in terms of it. Once you understand it, you find you apply it all the time.

The ability to translate high level languages into optimized machine instructions requires that you understand your platform at every level. This is important because it lets you understand the tradeoffs you are making when you choose one tool or method over another.

4. What is your current personal project?

What your project is doesn't matter all that much, as long as you have one. Good programmers are usually always working on some personal project that excites them.

"Probably the best operating system in the world is the [operating system] made for the PDP-11 by Bell Laboratories." - Ted Nelson, October 1977

Working...