Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Comment this is a slightly flawed comparison (Score 1) 346

Sure, we can debate and compare pros and cons of Google Docs and MS Office, but the really interesting conversation seems to be emerging about architecture and features:

  • Who is responsible for storing and managing content?
  • Who is responsible for managing the workflow around the content?
  • What standards are needed and supported?
  • Who are the content stakeholders beyond content producers?
  • What are my budgetary constraints?

It seems that each of us figuring out the right solution for the task at hand should run through the above questions and arrive at something. It may end up being grabbing something off the shelf (free or otherwise, proprietary or open), it may mean building up a constellation of tools, or it may mean something heavily home-baked. Each approach can be valid depending on the circumstances. The world is still changing and organizations are still adapting. Sometimes low barrier to getting started on collaboration is important. Sometimes longevity of standards is important. Sometimes controlling presentation patterns is important. Etc, etc.

BTW, something was said about stylesheets and ODF-based tools not having that support. ODF supports XML-based stylesheets in terms of persistence. As far as GUI, LibreOffice and OpenOffice make it fairly easy to manage said styles. Making these styles interoperate with CSS (within reason) isn't terribly difficult. ODF being XML-based and truly open (unlike docx) is one of the main reasons I personally reach out for it more times than not.

Comment Re:Anybody using Ada? (Score 1) 165

This is quickly turning into yet another language holy war, but why not? It's fun.

I really cannot agree. Historically, one of the most common ways to pwn a machine was to exploit buffer overruns. Languages such as Ada and Java are virtually immune to that sort of exploit.

Sounds like you agree completely: Ada addressed a need in the 1980's that doesn't exist anymore; almost all our languages these days are type safe, and many have excellent static type systems that run rings around Ada's.

the amount of time and effort to make a secure, robust application is more or less independent of the programming language used. The difference lies in where you spend your time.

Here too you are pretty much saying what I'm saying: in statically typed languages, the compiler catches a lot of stuff for you, in dynamically typed languages you need to write more tests to achieve the same level of fault detection, and it ends up taking about the same amount of time overall. That means that statically typed languages are good for production but not prototyping, while dynamically typed languages are good for both prototyping and production, and furthermore let you transform a prototype into a production system gradually by adding tests. Anyway, use statically typed languages if you like, but Ada's static type system is really obsolete and unnecessarily cumbersome. (And please don't use "strong typing" when you mean "static typing".)

Having come from a long personal history with statically typed languages and then landed in a Python project (using it in a variety of ways and systems), I would say that while there's certainly a difference in workflow and approach, it's not as drastic as one might think. As much as people espouse Python's dynamic nature, ever more professional teams adhere to rigid principles that include lots of static analysis (unit testing, dedicated static analysis tools, REPL, etc.).

And at the same time, I saw lots of leaky abstractions and twisting of the type system by some of the frameworks, bleeding of run-time needed components into configuration and other artifacts not visible to the compiler and so on. And so conventions arise and the stack grows with ever more sophisticated frameworks.

The fact is, modern computing is both easier and harder. It's easier because we have amazing advances in hardware and software available to us. There are tons of libraries, frameworks, and components that can be put together in lots of interesting ways. Operationally, there are myriads of tools available as well. But it's also harder because making sense of it all isn't so simple and because the pace of development that is expected of us is higher too. Many organizations have built up a higher appetite for risk in dealing with the latest technologies in search of an edge. This isn't only typical of start-ups, as the pressure is on for everyone now. The next great database, analytics engine, server, framework, or language could come equally from Microsoft or Google, as well as from some unknown 17-year-old's home in Netherlands.

The principals of building successful systems now are rooted in computer science and good operational practices. Languages are important, but not the be-all-end-all of a team's success. Openness to alternative approaches and a willingness to look under the hood to understand what you're producing are equally important. Don't get me wrong, I love static analysis and compilers and good type systems are the place for it. It can be done elsewhere, but feels icky to me. But icky or not, it won't stop me from solving the problem at hand if I can help it.

Comment Re:Been happening for hundreds of years. (Score 1) 544

He also couldn't get millions of books for free or get online education on just about any topic he chose. His home may have contained asbestos, his wooden furniture might have killed him, his food contained DDT, his waterways were polluted, and there was far more poverty and deprivation in his time.

While it seems clear that social programs cost money, their actual benefits aren't always so easy to ascertain. It's not so clear to me that American food industry is in any appreciable way better for the consumer. Yes, there are cheaper foods today than in the past, but it appears that "good" food is not accessible to many. What is accessible universally are foods that are pretty scary when you start following them to their source. Many people are choosing not to eat meats now due to questionable practices (not all illegal) of industrial farming. While it's not all bad and there are many aspects of this industry that have been improved, I wouldn't call this issue solved.

Yes, we have more people with health insurance today, but is this system working? Premiums are rising, while coverage is dwindling. We're attempting to intervene with legislation, but it's early days yet to tell how it'll play out in the end.

Poverty is an interesting concept. I've seen studies that show that we've collectively raised our expectations for what must constitute a minimum standard of living in this country. I won't attempt to delve into it myself, but certainly it's a very complicated question, one that stems from not just comparison of purchasing power over time. There is something to be said for "softer" metrics like sense of happiness, fulfillment, security, and realizing own potential. Again, I am not out to condemn the world we live in and put some abstract notion of the past I never personally witnessed as an ideal we've lost forever. I'm just saying it's a really difficult thing to analyze and solely focusing on money would be a mistake.

Comment Re:"If you adjust one little thing" (Score 1) 148

Adding a phone to a race bike does not affect anything in a meaningful way. It's not just a factor of mass, but where it's located and what it's doing. Since such a gadget is relatively light, does not move relative to the bike or suspension, and can be put almost anywhere, it's largely a non-factor. On a bike, where you are on the seat, where you are with your upper body, how you're anchored against the bike, and similar body-english considerations, as well as the fuel load, are much bigger factors than whether there's a few ounces of static mass tucked away somewhere in the middle of the machine.

Comment Re:Here's Oracle's Example (Score 1) 675

I think this shows that Google decompiled Sun's binaries. If you run a typical Java decompiler, you lose generics, local variable names; some initialization gets moved around; and certain things get inlined. Looks to me like there's evidence of all of the above coming across from Sun's source to Android.

Now, decompilation is a murky legal area I think. I guess it falls under the rubric of reverse-engineering, but I have no idea how that law handles such practices in this context. I suppose Oracle are operating with the knowledge that Google likely decompiled class files and have chosen to pursue the claimed that they copied the source. Is it because decompilation is harder to prove? Does it carry less legal weight than a straight copy or a near-copy? Hm...

Comment Re:all those platforms are yours... (Score 1) 296

There are no GUI widgets in Flash / AS3. Everything is actually drawn on screen using vector or bitmap graphics. There are components that you can use that emulate widgets (drop downs, date pickers, etc) but those are not native. This means that they will work consistently across all platforms.

That's what lightweight widgets are (a la Swing) -- control presentation across platforms and don't rely on native libraries and threads for creating and destroying native UI elements (peers). This is not a new idea. One of the first implementations of this for performance reasons that I'm aware of was in Swing's grid widget (JTable), where a single lightweight component is reused for drawing each cell that uses the same rendering logic. This is in contrast to how it might have been done using a native widget, which would have to be instantiated for each visible cell separately.

There's nothing magical about native widgets -- at some point it all comes down to drawing stuff on the screen. It just depends on which library does it and how efficiently (threads, memory, hardware acceleration, etc.).

Comment single brake lever? (Score 1) 494

I don't understand why they wired regenerative braking on the front wheel to the rear wheel brake lever. I understand that it lets them have a single brake lever for the whole bike, but generally speaking, most bicycles and motorcycles have separate controls for each wheel's braking for a good reason.

Comment Re:Does no one get it? (Score 1) 799

This is quite interesting for me coming across this discussion as just yesterday I happened to be talking to a K-2 educator, who has developed an introductory programming curriculum based on Alice and Scratch environments. I personally have no first-hand experience teaching kids, but was fortunate enough to be exposed to a variety materials and teachers early on. I'm still not sure if they fostered my interest or gave an outlet to something I had, or perhaps a combination of both.

I distinctly remember one of the first things that captivated me was a translated Brazilian comic book that accurately and progressively portrayed the basics of AI and robotics. It was intelligent, humorous and seemed to be just at the right level, where I was neither bored nor overwhelmed. I read and reread it countless times, always wanting more when I got to the end. Other important moments seemed to be tied to more conventional classroom settings using programmable calculators, BASIC, Pascal and the like. Looking back, it seems not having a computer at home with very limited computer lab time, it required an intimate understanding what your program did and debug it as much as possible in your head -- very similar to the world of punch cards. I don't remember now under what circumstances I acquired a C++ book, but I remember trying to understand the concepts, reading it alone, getting frustrated, putting it away, only to come back to it months later and trying again. I think it was a year of doing it before I had a huge "Aha" moment, when I finally "got" objects. The irony was that I didn't actually get to program in C or C++ all that much later in life, but that incredibly dry and difficult book with virtually no access to a computer got me to the point, where I didn't look back and knew for a fact that I enjoyed learning about programming. What's also interesting is that while I also liked natural sciences and mathematics and did okay under lots of positive pressure and great teachers, I would get frustrated and walk away much more easily and it was that pressure that kept me in it 'til the end, whereas with programming, I couldn't get enough.

I have no idea if this kind of path is right for anybody else, or if it can even be reproduced nowadays. But I've always had a feeling that there's something to teaching programming without computers themselves having primary focus. The teacher I mentioned told me that while he himself does use a computer lab for his curriculum, there are experimental classes, where kids are being asked to do various puzzles and problems designed to steer them in the direction of thinking in terms of algorithms. He also said that it's much more about the teaching method than the tool. Understanding age-appropriateness and keeping one's finger on the pulse of their motivation is key -- seems obvious, but not so easy to do well in practice.

Comment Re:Innovation! (Score 1) 525

Inline 4's invariably have flat-plane cranks, so you've got that backwards too.

In 2009, Yamaha has come out with what I believe is the first production cross-plane I4 engine for their YZF-R1 motorcycle. Previously, they were using it in prototype racing (MotoGP) in YZR-M1. The reasons for using a cross-plane crank in an I4 engine are numerous, mostly specific to motorcycles.

Comment Re:but what are the hardware costs? (Score 1) 534

I seem to recall this being brought up by a military commander, whose name escapes me at the moment, right at the onset of the current war in Iraq. Since then, according to this article, they are just now in the process of implementing encryption and it sounds like they're not planning on doing it for the older units at all. When I first read about this, the biggest worry was that not only the video, but the control of the drones could be intercepted. I really wonder.

Comment Re:Good Riddance (Score 1) 796

Note, that in the US, debit and credit card transactions are expensive for the merchants and credit card transactions are not at all guaranteed due to possibility of charge-back. Businesses like them for large transactions, where many forms of identification and authorization are used and there's little chance of charge-back or fraud, but with medium or small scale transactions, cash is king. Of course, it's not always possible, but whenever it is, you can almost always get a "cash discount" from a small business because, if for no other reason than because they can hide it from their books.

Slashdot Top Deals

What is research but a blind date with knowledge? -- Will Harvey

Working...