Archive for the 'Programming' Category

Mashup Camp Day 1

Well here we go at mashup camp. It is nice to catch up people from last year, such as Ted from Bungee Labs. I really like the way David runs these events, he is funny and is flexible about how things go and they always seems to be fun. I am not sure if I want to try lead a session today or tomorrow but it should be fun to hear the discussion.

Some ideas:

  • What you want in a mashup API provider (other than free)
  • Moving beyond pushpins with location stuff
  • The dark side of mashup - authentication and relying on services not your own

I don’t think I am going to live blog this one - more of just a thoughts either during the day or sometime on friday. I am also thinking about entering the contest now that I grok our API. This could be a fun way to make a demo.

Wireless is grinding to a crawl - we’ll see how it holds up…

If you care about my schedule

If you want to meet up with me here is some of the things I will be going to in the near future:

1. The web 2.0 mapping and social network meetup in Menlo Park - This should be fun with Mapfacture, remapper, and mashed life giving presentations

2. Mashup Camp at the Computer History Museum -  had a great time last year and lookin forward to going again. Love the lightning round when you get to see all the cool apps people are making but it is also nice to hear the big boys talk about where they will push the enterprise.

3.  CTIA in Vegas - I am going to Mobile Jam beforehand. I really don’t like Vegas but it will be fun to be floor for this extravaganza. I will be working the booth so stop by.

4. Web 2.0 Expo - I will be there in the Tele Atlas booth looks to be a great floor as well. Come on over for a chat. I will be showing some of the demos I put together.

Farther out I am planning on attending Where and  for sure going to be at WhereCamp, perhaps Location Intelligence and Extend08.

Have I mentioned that I love living in the Valley…

Some more updates

1. Google releases a Contacts API - hooray to having a way to get all my contacts in and out of google apps

2. Firefox 3 really is faster and pretty nice looking as well.

3. Busy playing with PostGIS, Java, and some JavaScript - demo should be here relatively shortly for new stuff coming in our 4.3.1 JS API.

4. I am predicting that MS is gonna pull out of the deal and that this was all a ploy to decimate Yahoo!

5. I really hope the rumors about Apple taking the lock down route to being the gatekeeper to iPhone apps is false but somehow I don’t think it is. How come Apple keeps getting these free passes - meet the new boss, same as the old boss

6. I miss Sean’s posts about birds

7. My birthday is next Sunday - so you better get the Wii and various games in the mail soon.

Tearoff databases for Mobile Phones - Java DB

Rick Hillegas

If he covers 2 way replication I will be one happy camper

JavaDB (Sun’s version of Apache Derby - which is IBM’s old DB)  is availale on Apache license. Runs on the CDC stack [so where is the list of CDC phones]

It is 2 meg on disk, sweet spot is embedded databases (could be embedded in your app). It is still being worked on by Sun and IBM.

You should consider tear-off databases like a wide of post-its. Refreshable, disposable, and usually short lived. Use in location based apps or storing incremental publishing of content - tear off a week worth of content for reading later.

Nice demo of the app.

I don’t think he is going to cover 2 way replication - no soup for YOU. So he is defining a tear off as a one way. Could still be interesting but less so.

They build pieces into the toolkit to help with the checkout and synching data. The cycle insures that the data is always complete.

Coming next quarter - table functions - any abitrary stream data and wrap a table around and then use SQL to filter and work with it. Contact him if you have questions.

Afternoon lighnting

Darkstar with Mobile for MMPORG

Darkstar is the server infrastucture with a bunch of clients connecting to a lot of servers with some metaserves gluing it all together.

To use it with mobile you need proxy in the middle - so you end up with a 3 tier arch. This guy is working on making a HTTP proxy to that there is minimal resource use and easy to use for client (phone). He is writing integration with the netbeans mobility pack.

Nice screen shot

Great time limit enforcement by E-Ming (the Sun guy from our DevCon mobility panel).

NEXT

Adaptive instrutmentaiton for MIDP testing. There are some arch. reason that it is hard to test.
Solution
Redesign App  - not so good

They suggest to modify the binary - insert special code on the fly. Arch slide which bores me. You basically add one line of code to constructor and then the test framework can then gain access to the code. All done for me…

NEXT

What can the JCP do for you. It is more about what you can make the JCP do for you.  He believes in the romantic vision of a single developer building a great app getting onto the platforms. So he is talking about the need for individuals rather organizations on the different committees. Here comes the call to action - volunteering with 4 things

1. Vote - 1/3 of jcp members vote

2. Subscribe to the ME related lists

3. Help - review  MIDP 3.0 and send an email  -action not words

4. Show up - Terrence has a room over at the mansion to start discussion the issues.

NEXT

Do we need a mobile developer alliance? Carriers and OEMs are shooting themselves in the foot to leave revenue on the table. Problem is too big and compicated to be handled by any one group. He thinks only the developers can solve it bc they have the most skin in the game. Wants developers to start talking now and figure out where to go from there.

NEXT

Putting Java on devices Sun’s Java engineering Services - a pitch for their consulting services that puts Java on tons-o-devices. Mostly for OEMs and other people who move physical products. [All done for me]

See again I wasn’t the only one thinking about this

So it seems other in the blogosphere are talking about frameworks as well

Ping out to InfoQ and Bill de hÓra. I like Bill’s discussion of leaky abstractions and the comments that follow. Can I please give a shout out to Eelco from Wicket. He has maintained an open mind and a great discussion in all the different places where I have seen him contribute to this discussion.

Of course they say it better than I do and hey, they also mention Django so Sean doesn’t have to.

For me it is not that frameworks are inherently bad, it’s just perhaps not everything is a nail for their hammer.

And I find it very interesting that .NET developers are nowhere to be seen on any of these threads (except for Matt Priour). Theories on this one are welcome…

The Future of JavaME development tools

Wireless toolkit for CLDC
supports more 23 JSRs including OpenGL and SVG
There is a new JSR for J2ME for XML processing which would be good with our openLS service

Worth the price of the conference alone
watching a javaVM working on WinMo6 on the HTC TinyTC - I think it is phoneME but with just a quick browse I don’t see how they got it running.

I am not really paying that close attention since I feel like Netbeans is the platform for Mobile development. Perhaps I should, so I can see some of the cool things I can do, such as SVG support and visual designer.

Visual Designer is a graphical UI for developing application flow on the phone. Looks like they took Matisse and are now using it for CDC screen design. Damn matisse is sweet.

Ok but the TLA in the Java mobile space is killing me - bring me android or the iPhone. Something to simplify this model, more to follow on this thread…


SVG and Advanced Graphics
The TLAs are killing me so I am trying to watch some eye candy
SVG tiny is mostly cell phones and SVG basic is for browsers and perhaps smart phones.Nice demos and I am fading fast…

Afternoon session

Sun Spot Talk

Great demos of what you can do with a SunSpot
SunSpot runs the squawk JVM which can run bare metal without an OS.
There is wireless communication and with the accelerometer he built a cool little remote controlled robot. It was not a hardware project - it was a software project, most importantly it was a java programming project

www.sunspotworld.com

Now Mesh Networking

802.15.4 MAC layer in the devices. Range is approx 100m - lots - o - network topologies are supported.

Gone too deep for those of us who are idjits in the world of networking. My head is hurting. I am not sure even where to start with questions…
Ahhh some code but not much help. What is GCF? Thank you google

On to Security
Need security bc most sunspots are wireless
Goals:
User Friendly
Efficient
Reuse well known, peer-reviewed industry standards
Trust/Key management should “just work” in the most common scenarios
Byte code verified on desktop and sealed until goes to device and then sig verified on sunspot

Each user’s SDK has a public/private key pair. As soon as you connect your key is sent and you become the owner but can change owner with USB connection. Over air it is only the key it has

The use SSL/HTTPS for secure communcation. Preface your communcation protocol with an s and it becomes SSL’ed radiostream -> sradiostream. Multiple spots belonging to the same owner are all set with keys and so SSL just works

Now for Solarium
Dealing with a collection of SPOTs.
Start laptop with Solarium running - eventually it goes around discovers all SPOTs in the network and adds them to a view. Frickin Sweet interface to manage all your devices - gotta see the movie for this one. You can serialize the entire app and send it to another device - holy canoli. Extra points for doing it all live!

Some Emulator work
They have added an emulator to the Solarium application. Very nice spot with intuitive way to change it’s sensors. Shows the virtual interacting with real SPOTs. Again, you need to see the video

Using SPOTs to monitor BlackBox moving across country
Want to track
virbration but only big events
Temp
Humidity
GPS
Data Logging

USGS monitoring on the Bay Ravenswood
Still need to work on extend the time period monitoring and more robustness

Systronix showing TrackBots and swarming with Sun SPOTs.
He loves SQUAWK and think it is huge that all these things run on devices smaller than a cell phone. Some cool robot demos

Sentilla - these are the mote people. He is talking about getting a full JVM and more on a chip the size of a dime. It can store info and network and process. My brain is getting kinda full. They have done some really interesting things to make sensor programming really easy. They have a limited beta send an email.

Morning Session

Morning session for Mobile and Embedded Dev Day

My opinion on the opening of the mobile platforms to developers is at the end of the post. Most of the rest of this post is just following the session.

Most of this is new to me since I haven’t really done a lot in the mobile and embedded space - mostly due to the Carrier lock down of devices.

There is a community that Sun is trying to run that is centered around the openJDK for ME

4 Messages for today
BetaVine and mobile and embedded community are from Sun are playing together. I really am impressed with their devZone and the things they have done with LifeRay

Eric Areneau - project owner to Sqwak, java on the microembedded devices - open sourced out of Sun Labs - the VM running on SunSpots

Phil Bender - Cable TV industry for developers

Mohamed - JXTA JAVAME Midp 2.0 - allows peering between JVMs on different devices that allows streaming and sharing between the devices.


Up now is GoslingThe London underground card is a Java Smart Card and the whole London Underground system is run on Java for their ticketing and scheduling.The key to the whole thing here for him is the JVM as the integration Hub - many ways to write things that run on the JVM from Java to Cobol to XML and it then runs on many devices.

Large community - tons of developer communities from dev.java.net to OpenSolaris.org to jcp.org.

Now some talk about RealTime embedded stuff with Java such as robotic helicopters and robotic arms - 10 to 15 millisecond time range

Addresses the performance myths
On a server VM Java can beat C/C++ even close to FORTAN for performance though matrices are tricky. GC is a lot faster than malloc/free, it is more about making sure GC doesn’t cause the spike.

On to open source
All this means is you can check out and use the code for yourself - NOT that anyone can check stuff in, though there is a process for making that happen.

Cell Phone world
JSR 248 - MSA - Mobile Services Architecture
JavaFX - Richer user Experiences - all converging on JavaSE specifications

I forgot that Sun/Java wins if Blu-Ray wins since it is part of the spec. Such as the PS3

JavaFX
FX mobile
JavaSE6
JavaFX Script -
[I get bored and tune out though I did catch a slide saying that people can use photoshop and flash to produce interfaces. How is that going to happen]

James is done


On to Hartti Suomela - Forum Nokia
Java ME Security Domain Policies
He is going to talk about all the stuff you have to agree to before you install a j2me app and why devs need to get their apps signed. I will try my best to follow along on this one.MIDP 2.0 and 2.1 use different terminology
Domains:
Manufacturer Domain, Operator Domain, Trusted Third part domain, unstrusted domain (in order of trust) Man and Op domain have always allowed access to APIs. Depending on which domain you verify to you get access to different things on the device. Access is granted at the group of functions level - not available at the individual function call.

ATT - unsigned apps basically get to do nothing
Identified still don’t get much - you really need ATT to sign it by being a partner.

Sprint - some more access but no location without help from Sprint

T-Mobile US - had problems finding and doesn’t sound easy to get going

Methods for changing permissions are different between devices and it seems kinda tricky.

[Got a phone call that I had to take]

Came back in to developers talking about storming the carrier gates. Seems like this is more head banging against the wall. Unless you have an app that will migrate users to a carriers network from a competitor what is the value for them. There is also risk for them. Poorly behaved apps can cause real network problems for them and people are generally less tolerant of their cell phones not working then an internet slowdown. And if your app doesn’t work on their phone or network consumers will also associate this problem with the carrier.

So while I want the carrier platforms to open up I don’t think Java’s domain model makes that any easier - if anything it makes it easier for carriers to not let that happen. Change here is going to come through Government, Google, or some other large player. The internet was not opened by developers, it was opened by the gov’t. Sure we can raise our voices but I am not placing my money on that horse…

At the Sun mobile and embedded developer day

Today and tomorrow I will be at the conference. I will be live blogging some of it and I am still not sure what people will find useful so take them for what they are.

There is a live TV stream at uStream.tv if you want to follow along.

Learning and trying to get some hands on time in during the next couple of days.

Tagging photos, blog posts, and tweets with medd08

Next Page »