Smalltalk Events
Julian Fitzell has a rundown of a number of upcoming Smalltalk events.
Technorati Tags: events
The author of this blog, James Robertson, passed away in April 2014. This blog is being maintained by David Buck (david@simberon.com).
Julian Fitzell has a rundown of a number of upcoming Smalltalk events.
Technorati Tags: events
Just three weeks after its launch, the iPad already accounts for almost 1 percent of Wired.com's overall traffic -- and more than a quarter of our mobile traffic
That's an astonishing percentage given the fact that it's only been out for a few weeks.
Technorati Tags: iPad
I have some advice (via Andreas) over on my Cincom Blog
Technorati Tags: debugging, objectstudio
Spotted in Phil Windley's Technometria
The more dynamic the Internet gets, the more data there is floating around, the more we mashup things to create just what we need, the more important late binding becomes--in your life, your programming language, and your Web technology.
I agree with that. The web is an ever changing thing, and dynamic systems are much, much easier to adapt. An early bound system is just too rigid.
Technorati Tags: web
I got a question about the new "like" button - specifically, why "liking" the news stream entry on Facebook doesn't reflect back to the blog (and vice versa).
Well, that's because the two things aren't really linked. Here's how the news stream entries land on Facebook:
Which means that the blog post and the news entry on Facebook are not the same item. Adding a "like" to one will not add a "like" to the other. To get the two linked, I'd have to do some investigation of the FB api, and see if it would even be reasonably possible :)
Technorati Tags: facebook, social media, twitter
Looks like Hulu's plan to charge for a premium service might not make it out of the gate - ABC (Disney) is undermining the value:
Citing industry sources, Kafka said that Hulu CEO Jason Kilar "tried desperately to get ABC not to introduce its free app," because ABC giving away free content makes subscription-based access to Hulu on the iPad seem less valuable. ABC obviously did not place much weight behind Kilar's concerns, as the network's streaming application was available on the iPad from day one, and has found great success.
Obviously, ABC is only one content provider - but other networks are going to be pressured into doing the same thing - just like all other digital media, the price tends to fall towards zero. Hulu will need a new plan.
At the bottom of each post there's a Facebook "Like" button now - if you have a Facebook account, hitting that will just up the "like" count for the post over there. It was simple to add (once I fixed the stupid CSS styling issues I had with my copy/paste job).
Technorati Tags: social media, facebook
Today's screencast looks at using statement caching against Oracle (version 9 and up) with ObjectStudio. If you're looking for a particular topic, you can find it with the Media Search application on our site.
The code used is below; To watch, click on the viewer:
"Statement Caching examples. Oracle does not support this feature until 9.0.0, so make sure you are using Oracle 9.0.0 and later." "Information from Oracle: Statement caching refers to the feature that provides and manages a cache of statements for each session. In the server, it means that cursors are ready to be used without the need to parse the statement again. It can be used with connection pooling, and will improve performance and scalability." "The following are two examples, one uses statement caching, the other does not." "Statement Caching is off be default." ObjectStudio.OracleDatabase useStatementCaching: false. "Logon to the Oracle Server." ObjectStudio.OracleDatabase logOnServer: #'OracleDB' user: #'username' password: #'pwd' alias: #'OracleDB'. "Get the Oracle database instance." db := ObjectStudio.Database accessName: #'OracleDB'. "Set times to repeat." loopCount := 100. "Set the SQL to do the fetch." sql :='select * from sys.all_tables where TABLE_NAME=''DUAL'''. selectTime1 := [ 1 to: loopCount do: [ :i| db execSql: sql. ]. ] millisecondsToRun. "Print out the miliseconds spent." ('Select without using statement caching: ' + selectTime1) out. db logOff. "Turn on Statement Caching." ObjectStudio.OracleDatabase useStatementCaching: true. "Logon to the Oracle Server." ObjectStudio.OracleDatabase logOnServer: #'OracleDB' user: #'username' password: #'pwd' alias: #'OracleDB'. "Get the Oracle database instance." db := ObjectStudio.Database accessName: #'OracleDB'. selectTime2 := [ 1 to: loopCount do: [ :i| db execSql: sql. ] ] millisecondsToRun. "Print out the miliseconds spent." ('Select using statement caching: ' + selectTime2) out. db logOff.
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
While Apple is trying to kill Flash, Android is embracing it, and so are the next generation Windows phones. I'm not sure what RIM plans with the BlackBerry, but I expect they'll fall in line, too. That'll put Apple on one side, and the rest of the universe on the other. Normally, I'd say that would put Apple in the losing position, but the iPhone is popular enough that it guarantees one thing: a long battle.
With the Facebook announcements yesterday, it appears that I have some new work on the Smalltalk to Facebook interface. The authentication scheme seems to be simpler (which is good - I never really got the first version as finished as I'd like).
It looks like it's simpler than the old API - that was a mishmash of old and new ideas, whereas this version seems to be unified around a simple data model, and all the accesses to it are via JSON (much, much nicer than XML, IMHO). I'll take a more comprehensive look at it later today.
I ran across this speculative post, and think that it makes a ton of sense:
I see the big breakthrough in the back seat, and it could prove to be a serious problem for automakers that charge a ransom for rear entertainment systems. The base iPad costs far less than most DVD options offered by automakers. Ford charges $1,995 for a dual-headrest-mounted DVD system in its Flex crossover. The Acura MDX is $1,900 for its single screen system, which has three wireless headsets and a 9-inch screen that was impressive in size when compared next to the iPad. These prices are par for the course for similar systems from most manufacturers.
Most new cars have multiple charge ports as well, so even when the battery ran low, you would be ok. Now, someone is going to say that any laptop (especially a Netbook) could do the same thing, but: the iPad is simpler. In this space, I'd say that simpler is better.
Those cash cow car entertainment systems might have to start pricing themselves realistically.
I'm guessing that McAfee needed to do a bit more testing on their latest virus scan update:
McAfee's "DAT" file version 5958 is causing widespread problems with Windows XP SP3. The affected systems will enter a reboot loop and loose all network access.
Apparently, it thinks svchost.exe is bad, and blows it away. Oops. On a positive note, a machine that endlessly reboots is pretty safe from viruses :)
Update: This is about as bad as it could get - since affected machines won't boot up with network support, they have to be fixed by hand (i.e., no automated fix from McAfee is possible):
Amrit Williams, CTO of security management system company Big Fix, told USA Today that there's no way to automate the process of fixing affected computers. Every machine will need to be repaired individually, he said, noting the process could take days or weeks.
Torsten Bergmann notes that Dr. Geo is getting a facelift in Pharo - I did a short video on DR. Geo back at ESUG 2008. Looks cool!
Today's Smalltalk Daily looks at using LOB data in Oracle with ObjectStudio. If you're looking for a particular topic, you can find it with the Media Search application on our site.
Here's the script used in the screencast - or just skip to the video:
"LOB buffer size example." "When dealing with LOBs, setting the right size of buffers used to transfer data between the server and client is important. For example, if the LOBs are large, allocating a big buffer will reduce the network round trips when inserting or fetching LOB values." "The following are examples to demonstrate performance improvement when setting the right size of LOB buffers." "Logon to the Oracle Server." ret := ObjectStudio.OracleDatabase logOnServer: #OracleDB user: #useid password: #pwd alias: #OracleDB. "Get the Oracle database instance." db := ObjectStudio.Database accessName: #OracleDB. "Drop the test table if existed." db execSql: 'DROP TABLE TestLob'. "Create the test table." res := db execSql: 'CREATE TABLE TestLob (a CLOB, b BLOB, c INT)'. "Input 2MB CLOB and BLOB." ClobLength := 2097152. BlobLength := 2097152. ClobInput := String new: ClobLength withAll: $a. BlobInput := ByteArray new: ClobLength withAll: 1. db beginTran. "Insert the test data." insertSQL := 'INSERT INTO TestLob (a, b, c) VALUES ( ?, ?, ?)'. db lobBufferSize: 32768. "32KB is the default buffer size for read/write Large Objects." insertTime1 := [ res := db execSql: insertSQL vars: (Array with: ClobInput with: BlobInput with: 1). ] millisecondsToRun. "Print out the miliseconds spent." ('Insert time when lobBufferSize is 32768: ' + insertTime1) out. "Set lobBufferSize to 1MB" db lobBufferSize: 1048576. insertTime2 := [ res := db execSql: insertSQL vars: (Array with: ClobInput with: BlobInput with: 2). ] millisecondsToRun. "Print out the miliseconds spent." ('Insert time when lobBufferSize is 1048576: ' + insertTime2) out. db commit. db beginTran. selectSQL := 'select * from TestLob'. db lobBufferSize: 32768. "32KB is the default buffer size for read/write Large Objects." selectTime1 := [ db execSql: selectSQL answerLobAsProxy: false. ] millisecondsToRun. "Print out the miliseconds spent." ('Select time when lobBufferSizeis 32768: ' + selectTime1) out. "Set lobBufferSize to 1MB" db lobBufferSize: 1048576. selectTime2 := [ db execSql: selectSQL answerLobAsProxy: false. ] millisecondsToRun. "Print out the miliseconds spent." ('Select time when lobBufferSizeis 1048576: ' + selectTime2) out. db rollback.
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
Technorati Tags: video, objectstudio, oracle, lob, database
The Cologne (Germany) Smalltalkers have a meetup scheduled for June 10th at 7pm - follow the link for the address.
That's the shorter version of this post by Jeremy Dillworth. As I said earlier today, Scratch being booted off the iPhone OS is an unintended consequence of the new policy. And as to this:
While it would obviously be more convenient if Apple allowed Scratch to run on the iPad as it does on other platforms, that approach is a non-start because of Apple's developer agreement. John McIntosh (author of the iPad/iPhone version of Scratch) should have known that before he even started tinkering with a version of Scratch for the iPad.
Except.... John had a few apps approved, and they only got booted under the new policy. Emphasis on new.
When Apple banned "meta platforms" from the iPad/iPhone recently, I don't think they expected to get a raspberry from educators and Alan Kay - but that's what ended up happening:
Jobs this month personally mailed an iPad to Kay, who praised Apple’s tablet as “fantastically good” for drawing, painting and typing. But Kay declined to give his full evaluation of the iPad to Wired.com until his question of whether Scratch or Etoys, another educational programming language Kay developed for kids, would be usable on the device.
This is a consequence of Scratch being pulled from the app store, which itself was collateral damage from Apple's war on Flash. Now they've ended up in bad place, because they are getting bad PR from sympathetic people (children and educators). If they carve out an exception for Scratch, on the other hand, the rule starts looking even more obviously aimed at Adobe - "If that's ok, why not this?"
I suppose they could go with "meta platforms are ok for educational apps", but that will end up looking silly, too. When they created this rule as a way of targeting Adobe/Flash, I bet they thought they were being pretty clever. Now the chickens are coming home to roost.
It's not just Wired that's noticed, either - the NY Times' Gadget blog has the story, too.
At least that's my take away from this news:
Facebook just announced via its Facebook profile that the ultra-lightweight version of its website, Facebook Lite, is no more.
Facebook has some Twitter-like features, but I don't think people go there for the same reason they go to Twitter. facebook is "deeper"; Twitter is more lightweight, and pretty much about "what's happening now". It's not about which is better; they're different, that's all.
Today's screencast looks at using Array binding with Oracle and ObjectStudio 8. If you're looking for a particular topic, you can find it with the Media Search application on our site. Here's the script used in the screencast:
"Array binding and Array fetching example." "Some databases allow client control over the number of rows that will be physically transferred between the server and the client in one logical bind or fetch. Using array binding and array fetching can greatly improve the performance of many applications by trading buffer space for time (network traffic)." "The following Workspace examples will show the performance improvements when using array binding and array fetching in OS8." "Logon to the Oracle Server." ObjectStudio.OracleDatabase logOnServer: #'OracleDB' user: #'username' password: #'pwd' alias: #'OracleDB'. "Get the Oracle database instance." db := ObjectStudio.Database accessName: #'OracleDB'. "Drop the test table if existed." db execSql: 'DROP TABLE TESTTABLE'. "Create a test table." db execSql: 'CREATE TABLE TESTTABLE( NUMMER int , BEMERKUNG varchar2 (30) )'. "Set the number of recrods being inserted." loopCount := 1000. "The SQL used to do inerst." sql := 'INSERT INTO TESTTABLE VALUES (?, ?)'. "Insert: not using array binding." insertTime1 := [ 1 to: loopCount do: [ :i| db execSql: sql vars: (Array with: i with: 'test'). ]. ] millisecondsToRun. "Print out the miliseconds spent." ('Insert without using array binding: ' + insertTime1) out. "Insert: Using array binding." insertTime2 := [ |bindArray numArray stringArray | numArray := OrderedCollection new. stringArray := OrderedCollection new. 1 to: loopCount do: [ :i| numArray add: i. stringArray add: 'bla'. ]. bindArray := OrderedCollection with: numArray with: stringArray. sql := 'INSERT INTO TESTTABLE VALUES (?, ?)'. db execSql: sql vars: bindArray. ] millisecondsToRun. "Print out the miliseconds spent." ('Insert using array binding: ' + insertTime2) out. "Set times to repeat." loopCount := 1. "Set the SQL to do the fetch." sql := 'SELECT * from TESTTABLE'. "Default value of arrayFetchSize is 1." db setArrayFetchSizeTo: 1. selectTime1 := [ 1 to: loopCount do: [ :i| db execSql: sql. ]. ] millisecondsToRun. "Print out the miliseconds spent." ('Select with arrayFetchSize= 1: ' + selectTime1) out. "Set arrayFetchSize to be 100." db setArrayFetchSizeTo: 100. selectTime2 := [ 1 to: loopCount do: [ :i| db execSql: sql. ] ] millisecondsToRun. "Print out the miliseconds spent." ('Select with arrayFetchSize=100: ' + selectTime2) out. "Set arrayFetchSize to be 500." db setArrayFetchSizeTo: 500. selectTime3 := [ 1 to: loopCount do: [ :i| db execSql: sql. ] ] millisecondsToRun. "Print out the miliseconds spent." ('Select with and arrayFetchSize=500: ' + selectTime3) out.
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
Technorati Tags: video, objectstudio, oracle, database, array binding
I'm not sure why, but I find this sort of thing to be very amusing - it cropped up in an ad spot last night:
Steve Rubel thinks that Apple wanted that prototype to be found:
It's been reported that Apple allegedly has teams in the company working on prototypes that will never see the light of day. It does so, it's been said, to maintain secrecy and to occasionally throw people off the trail. That's what I think is happening here. If that's not enough, consider this - Apple appears to strive to maintain the news flow after a product is announced yet before it's available. After the iPad was revealed, it's been reported that Apple kept the few that were in the wild chained down to special tables. So this isn't a company that lets important unreleased devices anywhere near the wild... unless, that is, they want someone to find it.
With any other company, I'd laugh and move along. With Apple, he could easily be right.
You can read plenty of missives about how air travel was once an awesome experience - like many things, it looks like the passage of time has softened the (very) rough edges:
I have a copy of TWA's flight schedule from June 1, 1959. The first jets were being introduced into the fleet, but the vast majority of flights were still on propeller-driven aircraft. There's an ad in the timetable for TWA's low coast-to-coast "excursion fares." Los Angeles to New York was only $168.40 roundtrip, if you traveled Monday through Thursday in Sky Club Coach class. That bargain is roughly equivalent to $1,225 today, before tax.
These fares weren't valid on the fastest aircraft, so you had only two options, neither of which went nonstop. There was the 10:10 a.m. departure from Los Angeles that arrived in New York at 11:41 p.m. that night or the 7:55 p.m. departure that arrived at 10:56 a.m. the next day -- more than 12 hours in the air. This was on a Lockheed Constellation, which, while beautiful, bounced you around in the weather at about 20,000 feet, far below the 35,000 to 40,000 feet you'd cruise at today. Even when the weather was good, that trademark prop vibration left you feeling like you were sitting on a washing machine for hours after you landed.
Sure you say, but at least it was elegant? Well, maybe in first class (and the article doesn't give a price for that). However, back in coach? Just like coach now, you had to bring a box lunch yourself. And bear in mind that a transcontinental flight now, even with one stop, is less than half that time - and you're likely to have some entertainment options, even if it's just seatback power and your own gadgets :)
The "golden age of flying" wasn't quite so golden...
Technorati Tags: air travel
I've pushed up another VW 7.7 build of BottomFeeder - I've been running it myself for a couple of weeks now, so I feel pretty good about it. Give it a try, and let me know about any issues.
Technorati Tags: rss, atom, news aggregator, smalltalk
I've been slightly irked at my Mac for weeks now, and I finally realized what's been bothering me - the mouse. Awhile ago, I spilled coffee on the mouse. While it recovered, it didn't recover completely - it was missing clicks from time to time, and that just led to ongoing annoyance that I couldn't quite put my finger on.
It came to me last night playing Dragon Age
(which I downloaded for the Mac over the weekend). While missing a mouse click while writing code or blogging is annoying, in game play, it just smacks you in the face. So this morning I ran out and bought a new mouse, and wow - I'm not annoyed at the machine anymore.
It's amazing how your state of mind can be affected by small stuff that you don't even consciously register.
Technorati Tags: games
Looks like Gizmodo got lucky:
It was found lost in a bar in Redwood City, camouflaged to look like an iPhone 3GS. We got it. We disassembled it. It's the real thing, and here are all the details.
Later they quote John Gruber (Daring Fireball):
So I called around, and I now believe this is an actual unit from Apple — a unit Apple is very interested in getting back.
It's always a good idea to be wary of Apple rumors, but this one looks more solid.
Today's screencast looks at attaching files to a store bundle. If you're looking for a particular topic, you can find it with the Media Search application on our site.
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
Technorati Tags: video, scm, version control, file attachment
I'm not a big fan of DRM period, but it really seems like Ubisoft brought the stupid to their implementation:
More than three weeks after the release of The Settlers 7, with the controversial 'always on-line' DRM, a lot of people still can't connect to Ubisoft's DRM servers. The forum threads where people can post if they are unable to connect keep growing daily. One reason for the lack of fixes or responses from support seems to be that the people responsible were on vacation during the Easter holiday, despite the promise of 24/7 monitoring of the servers
If your plan is to require a "phone home" by the software, then you have to make sure that someone is there to, you know, answer the phone :)
Technorati Tags: stupidity
This week we spoke to Julian Fitzell about cross dialect Smalltalk work - focusing largely on Grease and Slime, but wandering afield from there as well. It's another two part podcast - come back next week for the conclusion.
To listen now, you can either download the mp3 edition, or the AAC edition. The AAC edition comes with chapter markers. You can subscribe to either edition of the podcast directly in iTunes; just search for Smalltalk and look in the Podcast results. You can subscribe to the mp3 edition directly using this feed, or the AAC edition using this feed using any podcatching software.
To listen immediately, use the player below:
If you like the music we use, please visit Josh Woodward's site. We use the song Effortless for our intro/outro music. I'm sure he'd appreciate your support!
If you have feedback, send it to smalltalkpodcasts@cincom.com - or visit us on Facebook or Ning - you can vote for the Podcast Alley, and subscribe on iTunes. If you enjoy the podcast, pass the word - we would love to have more people hear about Smalltalk!
Technorati Tags: podcast, audio, portability
If this speculation holds up, travel to and from northern Europe could be disrupted regularly for awhile:
"Volcanic activity on Iceland appears to follow a periodicity of around 50 to 80 years. The increase in activity over the past 10 years suggests we might be entering a more active phase with more eruptions," says Thorvaldur Thordarson, an expert on Icelandic volcanoes at the University of Edinburgh, UK. By contrast, the latter half of the 20th century was unusually quiet.
Video conferencing will pick up some of that slack, but face to face meetings will still be required for some things, never mind tourism. "May you live in interesting times", indeed...
What Next in Iceland? If past trends repeat themselves, we could be in for a real whopper:
The eruptions of the comparatively small Eyjafjallajökull glacier volcano in Iceland have historically preceded massive eruptions by the more feared Mount Katla. Experts are concerned that the present volcanic eruption could trigger activity at Mount Katla, which is potentially much more dangerous. Its last major eruption was in 1918. Icelandic volcanologists consider it plausible that Katla may erupt, and that is why they are monitoring Katla very closely right now. There are eruption channels between Eyjafjallajökull and Katla and magma could shoot into the Katla volcano. Katla might only need a nudge. Effects of Katla's eruption would put the present air travel chaos in the shade, inflicting much greater economic losses upon Europe.
Say what you will about man's impact on the environment; when Mother Nature gets going, she can really put us in our place...
I'm downloading DragonAge for Mac (the deluxe pack). Yes, I think it's fair to call this an obsession now :)
Technorati Tags: dao
Squeak 4.1 combines the license change occurring in the 4.0 release with the development work that has been going on while the relicensing process took place. Much of the work in this release has been focused on fundamental improvements. Major achievements are the integration of Cog's closure implementation, the improved UI look and feel, the new anti-aliased fonts, the core library improvements, and the modularity advances.
Technorati Tags: squeak
Michael Lucas-Smith has an update on what's going on with the Xtreams code.
I had a question come in this afternoon, about how to get going with Store>. Originally, it required you to use a fairly "heavy" rdbms, like Oracle or SQLServer. later, Bruce Badger provided support for using PostgreSQL, which eliminated the need for client libraries. However, that still required a relatively difficult setup. There are easier options:
Mind you, those solutions are only suitable for personal use; for team use, you still want one of the bigger databases. However, this should get you started :)
Technorati Tags: scm, source code control, store
The puritan ethic never really died; it just migrated away from its religious moorings and morphed into a more free floating idea of punishing the notion that "somewhere, someone is having a good time". Consider Apple's app store policies in that light:
According to a Dec. 21 e-mail reprinted by Neiman, Apple rejected his app because it “contains content that ridicules public figures and is in violation of Section 3.3.14 from the iPhone Developer Program License Agreement which states: Applications may be rejected if they contain content or materials of any kind (text, graphics, images, photographs, sounds, etc.) that in Apple’s reasonable judgment may be found objectionable, for example, materials that may be considered obscene, pornographic, or defamatory
The ban in question is a cartoonist who ran afoul of the policy with satiracal content; a few European publications have run afoul of the nudity bans. It makes me wonder whether Apple will start considering "the great firewall of Cupertino", to protect us while we use Safari on these devices...
Today's Smalltalk Daily looks at a simple Time Tracker application in WebVelocity - 4 methods, with 2 additional "prettifying" ones. This was inspired after I watched the video here, comparing various web app development frameworks. No Smalltalk comparison, so I thought I'd add one. You can see the simpler "Hello World" example as well. If you're looking for a particular topic, you can find it with the Media Search application on our site.
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
Technorati Tags: video, webvelocity, seaside, web development
Looks like I won't be using Ning much longer:
Just a month after Gina Bianchini, co-founder of build-a-social-network service Ning, departed the company, it's cutting 40 percent of its staff and axing its free, ad-supported service.
I don't object, and I'm ok with the idea that they need to focus on a working business model - it's just that for my needs, facebook and YouTube work just fine :)
Technorati Tags: ning
Apple's new policy hit Scratch (a Squeak based instructional tool for teaching kids about programming. I saw an email from John McIntosh about it this morning, and now Lambda the Ultimate has noticed:
If the general idea wasn't enough to make you mad, or if you wrote it off as being purely an Apple/Adobe spat, this ought to cut a bit closer to LtU's heart... Apple removes Scratch from iPad/iPhone/iTouch. My wife has taught a couple of classes using Scratch with young kids, and to see the pride they feel at their creations is a marvelous thing. I think restricting their ability to share that feeling is really reprehensible. And the damage done to the programmers of tomorrow? Hard to say
Make chimes in on a similar note.
The Pharo project has reached 1.0 - congratulations to them!
Technorati Tags: pharo
I liked this - I saw it float by in the Smalltalk IRC Channel:
"I have changed the terms of the deal.... pray I do not change it further" -- Darth Jobs
Heh
Technorati Tags: apple
We'll be doing the podcast at noon eastern today, with Julian Fitzell. The topic? The ins and outs of cross dialect Smalltalk development - what to do, what not to do. Join us on justin.tv!
Update: We are running late, due to some timezone confusion...
Technorati Tags: smalltalk
Today's screencast looks at a simple "Hello World" app in WebVelocity. If you're looking for a particular topic, you can find it with the Media Search application on our site.
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
Technorati Tags: webvelocity, seaside, video
Interesting comments about Java from Josh Bloch, Google's Java architect - he says that there's no real direction, and licensing issues are starting to cause problems:
The problems around Java that Bloch mentioned largely predate Oracle's acquisition of Sun Microsystems, which oversaw the Java development process, and Bloch called on Oracle to step up as the prime steward of the language and associated platform software."Oracle should take the lead of Java once again," he said.
Over the last few years, Sun had been busy trying to find some way to make money - it doesn't surprise me that a money pit like Java development took a back seat. What will be interesting is Oracle's take. Oracle is profitable, and can afford to do whatever they want with Java - but just how much money do they want to shovel in that direction?
Oracle isn't without challenges of their own, with the rise of acceptable OSS databases - including MySQL, which they own (insofar as anyone can "own" a fully GPL product). I wouldn't be at all surprised to see continued drift, because I just don't know that Java's direction is all that crucial to Oracle's immediate future.
I have to part with Andres on this one:
Sigh. Just because things look cool, it doesn't make them good. For example, somehow it's a good thing to carry 1000 books in our pockets. What's the point, since we cannot meaningfully deal with even 5 serious books at a time? Moreover, 25% of Americans don't read books at all, and the rest reads about 1 book a month. Are Kindles or iPads worth so much just to read 1 book a month?
This all depends on where you sit. For instance, if you sit on a plane a lot, being able to carryv a lot of books on one small device is a huge win. Years ago, on a trip to Australia, I weighed myself down terribly with a bunch of books for the long flight. On another trip there, I bought a large book in Australia, and then had to figure out how to fit it in my bag for the flight home.
Now, does everyone travel regularly? No, but that's certainly one target for whom such devices make a lot of sense. We bought one recently, because my wife wanted to be able to read the same book upstairs and downstairs. Simple, you think - just cart the book, right? Except, with her knees, she doesn't like to carry stuff up and down. The iPad is small enough for her to handle more easily - and the Kindle app for the iPad and Mac synchs her reading position between the two devices quite nicely.
Ultimately, what makes or breaks any gadget is whether it makes the users happy. It's early days for the iPad, so we don't have a solid idea. Give it a few months, and I think we'll know a lot more - like whether the new restrictions on development irritate enough developers that the irritation flows down to users.