Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×

Comment Zombie Byte (Score 3, Insightful) 185

So, it's going to be yet another useless publication in an already crowded arena? I mean, Dr. Dobbs is pretty much a parody of itself, and there's few print magazines that are worth the time investment to even open the magazine. What's this new iteration going to provide, other than a stark reminder of the mojo that Byte magazine no longer has?

Comment Re:So obvious question... (Score 2, Insightful) 388

Java is still a viable concern because of inertia. There are a lot of companies that bought into Java, J2EE, and the rest that are still going to be using Java regardless if Oracle mandates every developer wear a silly hat and pray to Larry Ellison 3 times daily. And again, Redmonk is a developer-based tea-leaf reader; nobody in business will care what developers fancy as the next big thing, because Java is here in their datacenter making stuff work now.

Sad to say, but even if every single current Java developer swore off never to code another line, there would still be Java out there, and folks ready to learn to take their place. COBOL didn't need a community, and Java won't either.

Comment Re:So obvious question... (Score 5, Insightful) 388

Because communities cost money to maintain. Oracle doesn't care about whiny developers; they only care about the bottom line. Developers will use what they're told by their management. Period. End of story.

As much as Oracle is an anathema to what developers and techies hold dear, until Oracle starts to see some damage to the bottom line, they won't care one iota.

Submission + - Expert Python Programming

Craig Maloney writes: There's a healthy market of books describing the basics of programming and programming languages. And there are plenty of books act as reference material once you've learned the basics. But, there's now a growing market for books that purport to be the next step for those who have mastered the basics and are now ready to take their skills to the next level. One of these books is Expert Python Programming. Under the covers, this book promises to help the reader to be more productive with Python, both in setting up an efficient development environment environment, as well as packaging it all together and distributing it. There's also a chapter on test-driven development. The back cover reads like a checklist of good programmer practices that few would argue weren't laudable, even essential programming goals. Unfortunately, the execution in relaying this information is muddled, and the book reads more like a collection of blog posts rather than a contiguous, coherent work.

Expert Python Programming starts by covering installation of Python, iPython, and setuptools. It also covers selecting an editor. Seriously, if you're opening a book called "Expert Python", and the first thing you need to do is figure out how to edit Python code, you might as well just put this book down, because you're not ready for it yet. Granted, there's some nice tips about setting up vim so that it doesn't do bad things with Python code, and I can understand that not everyone that picks up this book may be at a true level of expert (after all, not everyone who reads Seventeen magazine is necessarily seventeen years old yet), but the chapter sets a poor tone for the rest of the book.

The next two chapters for best practices below and above class level were some of the most confusing chapters in the book. I tried very hard to follow along with what was being demonstrated, but try as I might, I felt I needed to refer to other sources to even get close to what was being presented. These two chapters almost made me dismiss the rest of this book, but I persevered. I'm not sure if it was a fault of mine, or if the explanations themselves weren't enough, but suffice to say, they were a low-point of the book for me.

That isn't to say that Expert Python Programming doesn't have it's good points. The book has god advice within it's pages, and the author knows his stuff. Unfortunately, the editing and overall direction of the book makes it not as apparent as it could be. I wanted very much to like this book, and I think that with a different editor at the helm, this could be an extraordinary book. This book would be good for those who have already made it past the intermediate / advanced curve of Python. Unfortunately, as presented, it takes a strong will to get the good bits out. Those who would be best served by the advice of this book (beginners, intermediate programmers) will find themselves wanting another resource.

Comment Re:Well... (Score 1) 207

Y'know, I never got the appeal of Wired Magazine from the get-go. Seemed like entirely too much flash and not enough substance to keep me interested. The whole "oh, we're edgy" thing ran pretty thin rather quickly. I looked at the advert for the ipad app, and concluded that they perfectly captured the feel of the magazine: all show, no substance, and too fat for their own good.

Books

Submission + - Matplotlib for Python Developers (sourceforge.net)

Craig Maloney writes: Ever since there was a collection of numbers, it seems that invariably someone will want a graph of those numbers. There's literally hundreds of different styles of graphs, and almost as many programs and tools to make those graphs. Matplotlib, a library and toolkit for the Python language, provides an easy and effective way to make some pretty impressive graphics with little more than a smattering of Python. Matplotlib for Python Developers is equally impressive at distilling the core set of features of Matplotlib in a way that shows the reader how to get the most out the Matplotlib toolkit.

Matplotlib for Python Developers begins with the customary introduction to the Matplotlib library. It includes where to download Matplotlib, as well as brief installation instructions for both Linux, Macintosh, and Windows platforms. The book then quickly moves to the next chapter, where the basic library functions are presented, via the interactive iPython shell. Each section of the chapter introduces a new part of the graph, with items like titles, grid lines, and labels being explained clearly and concisely. Also briefly presented are other useful libraries like numpy, as well as the various back-ends that Matplotlib supports. Chapter 3 continues the even pace, presenting more plot styles, and plot types, including polar graphs. These two chapters cover the fundamentals of Matplotlib very well, with each step clearly marked by what the graph should look like once completed.

The next chapter introduces more advanced plotting concepts that Matplotlib is capable of handling. The chapter begins with the three ways that Matplotlib may be used (The pyplot module, pylab, and the Object Oriented interface). From there, the book delves into subplots, multiple figures, additional axes, logarithmic axes, date plotting, contour plots, and image plots. Also included are sections on using LaTeX and TeX with Matplotlib, both for exporting graphs, as well as using TeX inside plots via Mathtext. By the end of the chapter, I felt very comfortable with the environment and the capabilities of Matplotlib, both as an interactive environment, and as a module for my own programs.

The next four chapters cover integrating Matplotlib with GTK+, QT4, wxWidgets, and web-based environments. The chapters for GTK+, QT4, and wxWidgets each begin by presenting a basic overview of the toolkit, and why one might want to use that particular toolkit. Next, the book shows how to embed a Matplotlib figure in a window, both with static and real-time data input. The book then shows how to use the toolkit's builder with Matplotlib (Glade for GTK+, QT Designer for QT4, and wxGlade for wxWidgets. The chapter on web development veers slightly from this format by showing several examples of using CGI and mod_python with Matplotlib before showing how to use Matplotlib with Django and Pylons.

The last chapter pulls together some "real world" examples together for the grand finale. The examples clearly show how Matplotlib would work for such plotting Apache web logs, fitting curves, and plotting geographic data. The geographic data plotting uses an additional module called basemap, which allows for plotting precisely on a map. This example floored me with the amount of power that Matplotlib possesses.

Overall, I found this book to be informative, without a lot of fluff. The organization of the book sometimes dipped into a chaotic presentation of "oh, look at this", but overall the author kept a very even pace, with clearly defined goals and clean resolution of those goals. Matplotlib for Python Developers is definitely a book that I would pick up to refresh my memory for using Matplotlib. The asking price is a bit steep for book that is just shy of 300 pages, but overall I highly recommend it for anyone looking to get started with this exceptional library. I'd also recommend it for anyone looking for alternatives to some of the other plotting packages available. Matplotlib is quite powerful, and Matplotlib for Python Developers makes this power very accessible.

Comment Re:Wow (Score 1) 178

I once knew a guy who was a contract worker for 11 years. Contract positions can last for quite some time. What I hope New York doesn't do is hire all of their 5-year plan employees and then realize 4 years down the road that they'll have to graduate that class of employee all at once. Or maybe I do; I'm quite conflicted.

In any case, it's yet another indication that IT workers are considered a replaceable, interchangeable cog in the machine. Unfortunately, when your replaceable cogs are essentially your entire infrastructure, you'll have a hard time trying to get the new class of cog to know what the old cog was doing. Add to that a fatalistic sense from the old cog guard, and you have a recipe for one hell of a breakdown when you least can afford it.

Best of luck, New York; you're gonna need it.

Slashdot Top Deals

2.4 statute miles of surgical tubing at Yale U. = 1 I.V.League

Working...