Tuesday, December 30, 2008

Posterous - very cool


Thanks to a plug from TechCrunch, I have discovered Posterous, and I am very happy with it.  It allows me to post stuff to any combination of Twitter, Facebook, or my blog, all from my email or from SMS.  I can even have one item which posts to all of them, which is very useful for links to interesting stuff.

For example, this blog is being written on Thunderbird.  HTML formatting seems to make it through unscathed.

And note that now I have offline blogging, tweeting, and updating Facebook, without some specialized software for each service. 

I write to blog@posterous.com, it goes to my blog.  I write to twitter+facebook@posterous.com, it goes to, you guessed it, Twitter and Facebook.  I write to post@posterous.com, it goes to all three.

The one bummer is that the Facebook interface doesn't set my status - instead it adds something to my wall.  So if you're just looking at my status updates (e.g. through the status RSS feed which I just discovered, cool!), you won't see my Posterous posts...

All the same, I highly recommend checking it out...

Posted via email from davidvc's posterous

Friday, December 19, 2008

Vacation



Ahhh... vacation. This space will be peacefully quiet for the next two weeks.

May your holiday season be filled with joy, peace, and the sweet love of friends, neighbors and family.

See you in the New Year!

Tweethusiasm for PHP SQL completion

We had discussions about the value of doing SQL completion in PHP. The argument was that developers normally just write and test their queries in a "real" SQL editor (which comes with completion already), and then cut-and-paste into their PHP code. So why do all the work to do completion in the PHP editor? I even asked my Dear Readers for their thoughts on this. It was generally positive, so we're plugging ahead.

But the comments and tweets I've seen since Petr blogged about SQL completion in PHP are very encouraging that we're on the right path...

Here are some sample tweets - I love the "scribbling on the wall" nature of tweets. It's almost like being in a bathroom stall :)

PHP support in NetBeans keeps getting better - SQL code completion is tight http://is.gd/c00a

netbeans con soporte para SQL http://tinyurl.com/5maj6y

trying out NetBeans. Nice fieatures and "Now with PHP support!" If MySQL code completion works as claimed, I'll be overcome with giddiness

I'm not much of a twitterer myself, but I've found that listening in on RSS feeds for Twitter Search has been very useful in sensing the pulse of the community...

Gem uncovered in NetBeans - "run into method"

I love it when you discover something new in your IDE and it makes your life that much easier. There's that moment of joy, a surge of gratitude, as you realize some tiny bit of suffering in your life has been removed.

I was debugging a unit test, and there was a method I wanted to step into only when my particular test case that was failing was hit. This same method is called repeatedly, so I didn't want to put a breakpoint in it, or I would hit it over and over and over again until I got to the invocation I wanted to debug.

The problem is, once I was in there, I didn't want to step, step, step to get down to the actual method I wanted to step into from there. Capiche?

So what to do? Well, I though, it sure would be nice if I selected to the method I wanted to step into and just say "go there." What the heck, I said, let's put my cursor there, right-click, and see what happens. Magic, that's what!

run-into-method-1.jpg

Note how the method I care about is highlighted in yellow. That happens automatically when you click on it. Then notice the "Run Into Method" action in the drop-down menu.

Hey, why not, I tried it, and bingo, there I was! It's a thing of beauty I tell you!

run-into-method-2.jpg

Thursday, December 18, 2008

Adam Myatt spills the (Net)beans about some planned DB features

Adam Myatt's uncovered some stuff from our team wiki and our mailing list that I wasn't prepared to talk about publicly (well, more publicly) yet because it hasn't been built yet. You know, I'll believe it when I see it.

But, yes, there is a new New Connection dialog planned with a Test Connection feature. It will also have a "Automatically Reconnect on NB Restart" checkbox that I know I will love to have.

Note that what he's showing is a wireframe/mockup and not the actual dialog. Point taken about the current dialog being too wide, we'll see what we can do about that.

And yes, we are looking at making a help plugin with full MySQL docs and also making MySQL documentation available in code completion for MySQL functions (to start, maybe keywords later), both in the PHP editor and the SQL editor. If we get this to work, it will be very cool

Douglas Adams: How to Stop Worrying and Learn to Love the Internet

Great, great stuff written in 1999 by the late great Douglas Adams. Thanks to Tim O'Reilly's retweet of Kevin Marks
Another problem with the net is that it's still "technology", and "technology", as the computer scientist Bran Ferren memorably defined it, is "stuff that doesn't work yet." We no longer think of chairs as technology, we just think of them as chairs. But there was a time when we hadn't worked out how many legs chairs should have, how tall they should be, and they would often "crash" when we tried to use them. Before long, computers will be as trivial and plentiful as chairs (and a couple of decades or so after that, as sheets of paper or grains of sand) and we will cease to be aware of the things.

http://www.douglasadams.com/dna/19990901-00-a.html

Amazon SimpleDB - Now With Select

Amazon SimpleDB now has support for a SQL-like language for queries. Modified to support multi-valued attributes.
...the following query returns all the items which have the values 'Book' and 'Hardcover' in keyword:

select * from my domain where every(keyword) in ('Book', 'Paperback')

http://aws.typepad.com/aws/2008/12/simpledb---now-with-select.html

Calendar date picker in NetBeans data entry

You may or may not know that you can edit result sets executed from a SQL editor in NetBeans.

Now available in the nightly builds, when editing a date field, just click on the drop-down arrow and you get a nice date picker. This is so much nicer than trying to enter in the date by hand.

All this cool data entry functionality is coming from Ahimanikya Satapathy's team in Bangalore. They are a completely separate team here at Sun - they don't even have the same VP as we do. His team is part of the group that delivers Sun's Java CAPS (Composite Application Platform Suite). This suite provides SOA and data integration services for Sun customers. It's been great working with them, a win-win for both of us.

Next up from them, import/export to/from CSV and XML. Stay tuned...

date-picker.jpg

This just in - all schemas visible in NetBeans DB Explorer

In a way, it's embarassing we didn't always do this, but now you can see all the schemas in your database from your connection. Your default schema is in bold. Available in the nightly builds.

This isn't quite working yet for MySQL, but should be fixed in the next few days... We'll also be fixing the dialog for creating a new connection so you don't have to specify the schema any more, we'll just use the default given by the database. If you want to switch your default, just right-click on a schema and say "Set As Default" That'll be nice...


allschemas.jpg

Wednesday, December 17, 2008

Eight spells what?

My daughter is learning to read, and she is reminding me how arcane English spelling is. She and I are doing a little reading each night (her idea), and as she struggles with certain words and I tell her what they actually are, she is outraged.

Just last night she was struggling with "eight" saying something like "ee-ga-hut" and I said "that spells 'ayt'" and she said "WHAT? That makes no sense!"

She also got quite mad at words like "through", "psychic" and "laughter". I hadn't thought of this for a long time, but working with her bring the silliness of English spelling all back. Although in a way it's fun to use the spelling to figure out how it used to be pronounced a thousand years ago: "threwoch" for "through" and "k-nicht" for "knight."

Which brings me to a note she wrote a year ago, before learning to read.
I wit awot sid to luc for a for leef clover.

Ariel.

ps i wat sicer doo dols for my nix chreet[1]
It turns out that there are still people trying to simplify spelling of the English language.
Here is Mark Twain's proposal for fixing English spelling.
For example, in Year 1 that useless letter "c" would be dropped
to be replased either by "k" or "s", and likewise "x" would no longer
be part of the alphabet. The only kase in which "c" would be retained
would be the "ch" formation, which will be dealt with later. Year 2
might reform "w" spelling, so that "which" and "one" would take the
same konsonant, wile Year 3 might well abolish "y" replasing it with
"i" and Iear 4 might fiks the "g/j" anomali wonse and for all.
Jenerally, then, the improvement would kontinue iear bai iear
with Iear 5 doing awai with useless double konsonants, and Iears 6-12
or so modifaiing vowlz and the rimeining voist and unvoist konsonants.
Bai Iear 15 or sou, it wud fainali bi posibl tu meik ius ov thi
ridandant letez "c", "y" and "x" -- bai now jast a memori in the maindz
ov ould doderez -- tu riplais "ch", "sh", and "th" rispektivli.
Fainali, xen, aafte sam 20 iers ov orxogrefkl riform, wi wud
hev a lojikl, kohirnt speling in ius xrewawt xe Ingliy-spiking werld.



[1] "I went outside to look for a four leaf clover. Ariel. P.S. I want snicker doodles for my next treat."

Tuesday, December 16, 2008

Anybody can be president

Overheard this on NPR's great show "Wait Wait Don't Tell Me."  Their guest was somebody (I never found out who) that grew up in a strong Irish Catholic family in Boston.

He was asked what he thought about Obama winning the election, and he said (paraphrased as best I can):

When I was in school Kennedy won the election.  The nuns at my school told us that this mean anybody could be president, anybody.  So I went home and told my Dad this and he said "yes, it's true, anybody can be president."  And I said "so that means I can be president!"  And my Dad said "You?  Pffff!  What are you crazy?" 

Petr Pisl shows off SQL Code Completion

Petr does a nice job of demonstrating this feature in action. The comments are pretty enthusiastic, which is quite encouraging (I like this one: "My god, this is genius, I would have never thought about something like this."). Cool.

http://blogs.sun.com/netbeansphp/entry/sql_code_completion_in_the

Monday, December 15, 2008

360 Cities - wow

Masood Mortazavi just turned me on to this site. Wow. This is a great way to explore another city. Beautiful stuff.

http://www.360cities.net/area/isfahan-iran

Thursday, December 11, 2008

Connecting to a MySQL Database - NetBeans IDE 6.5 Tutorial

A nice tutorial showing you the basics of how to set up a MySQL connection and work with a MySQL database using NetBeans 6.5

http://www.netbeans.org/kb/docs/ide/mysql.html

User-driven health care

I've been listening to the proposals being dropped by President-Elect Obama around health care: improve health care IT, focus on preventative medicine, eliminate wasteful programs.

OK, fine, but these sure sound like band-aids on a huge problem. I didn't hear him actually say "we will guarantee health care to every man, woman and child in the USA without breaking the bank." Because that's what we need, and badly.

When I was on vacation this summer, the place where we were staying had a copy of Tim Harford's the Undercover Economist. I was intrigued by his discussions of health care. First of all, he says health insurance is intrinsically broken because it's like the used car market: the insurers can't get enough information about the insured's true health (although they try), and so they have to charge you (or your employer) assuming you're going to get sick. As a result, the healthy people bow out of the insurance market, and you're left with those who need it, and thus in a vicious circle the costs go up even more.

He also claims (and this makes sense) that single-payer insurance managed by the government is guaranteed to be costly and inefficient, because it is not market-driven. That doesn't mean we should just privatize insurance and let the poor sick shmucks die. But a true free market brings out the most efficient solution. So, through our taxes, the government should subsidize a market-based health program. A program like this that is actually in place and actually works incredible well is the one in Singapore. Singapore (it's a "fine" place :)), well, it's an odd place, but they have some of the best health care in the world with one of the lowest administration costs anywhere. See Bryan Caplan's discussion here.

Will we ever see something like this in the USA, where the individual's make their own choices for how they allocate their health care dollars? I doubt it, especially after hearing Obama's (pardon me) weak proposals. Why? Entrenched interests - in particular, insurance companies. A program like this eliminates the need for insurance. Poof. Gone.

So instead I suspect we'll see an ongoing snowballing mess of the existing situation with government money pouring into particular initiatives that may, or may not, help the problem, because they are in no way driven by a true market. Ugh.

Facebook, please let me pay you

I was dragged kicking and screaming to Facebook, but now that I'm there, and people I know from years past keep "friending" me (I love verbizing things), I'm actually starting to enjoy it. Everybody's there, and I actually feel "in touch" with people I'd lost touch with years ago, or who were fading from view. It's very nice that way. It's worth the random garbage on the site.

But you know, Facebook ultimately works for its advertisers, not for you and me. That bothers me, both in terms of what's happening with my data, what drives Facebook's features, and Facebook's long-term viability, especially in a knock-down economy like this.

So, I have a wild idea. Let me pay you, Facebook. $10 a month.

And for that $10 a month I want you to kiss goodbye to your advertisers. I don't want my data analyzed, scraped, or monetized. I want you to guarantee complete ownership of my data.

And I don't want to have to go to your site to get status updates. I want to get them on email, on SMS, on IM. It's not a surprise you can't do that today, because that would mean not seeing all the ads and "additional features".

And don't be like cable. I remember when cable first came out, the idea was, we pay you, and we don't have to watch ads. Five years later, cable was full of ads. To me that's a breach of trust.

The thing is, Facebook has become a black hole. So many people are there, it's where everyone meets. It doesn't matter if other services are free. Everyone's hanging out at Facebook. It has reached critical mass, and people are addicted to Facebook. It's like their morning paper.

So, charge a cover charge (at least as an option), and become beholden to your users, not your advertisers. Please.

Wednesday, December 10, 2008

Clustering Glassfish in Under 10 minutes

Having worked on previous incarnations of Glassfish clustering, I can tell you this is no easy feat. Watch the video, it will only take you 10 minutes :)
Here's a summary of the timing
  • Download: 2 minutes and 30 seconds. I cover this time by describing bringing up a slide and describing the clustering architecture
  • Installation and cluster setup: 4 minutes, 30 seconds.
  • Verifying and testing cluster by deploying a sample application: 3 minutes

http://blogs.sun.com/jclingan/entry/glassfish_clustering_in_under_10

Closer To The Ideal » JavaFX will save us from the uncontrolled budget overruns that Flash inflicts

I don't know if this is a common problem, but it's enlightening all the same
We were initially thinking the project would cost $10,000, but the owner of the company kept asking for additional features, so we thought maybe the cost might rise to $20,000. But in the end, the final cost was close to $50,000. Flash is not a serious programming environment, and as soon as you try to do something ambitious with it, you learn a painful lesson about its limits. For this reason, I am very excited about JavaFX

http://www.teamlalala.com/blog/2008/12/09/javafx-will-save-us-from-the-uncontrolled-budget-overruns-that-flash-inflicts/

Marking all places where your function returns: NetBeans PHP

Petr Pisl is presently posting a PHP picture a day - how's that for alliteration. I like this one - place your cursor on the function keyword and all places where you return from the function are highlighted. I can imagine that being very useful...

http://blogs.sun.com/netbeansphp/entry/marking_returns

DimDim 4.5 - looking even better

I've been using DimDim for the last few months for inter-team meetings to great success. Version 4.5 looks even nicer. The synchronized web browing feature sound like fun
as you scroll on your computer, your guest will see what you see and their view will scroll as you scroll. Visit a YouTube page, for instance, and the video will start playing on everyone’s desktop - all in sync.

http://www.dimdim.com/products/dimdim_new.html