31 August 2009

4RF on a $2.9m profit roll - technology | Stuff.co.nz

4RF on a $2.9m profit roll - technology | Stuff.co.nz

Hi-tech Wellington manufacturer 4RF has defied the global economic gloom and posted a $2.9 million profit for the year ending March.

The company, which makes microwave radio equipment for transmitting data wirelessly over long distances, boosted its revenues 24 per cent to $23.7m.

Chairman Peter Troughton says the economic conditions have made sales growth difficult.

"4RF has experienced instances of major project delays, particularly in the highly cyclical telco sector.

"That said, the company continues to be successful in winning new business, having signed up an average of four new end users per month in the fiscal year."

Most of these customers are in the utility and government sectors and should be relatively protected during the downturn, he says.

The company will trial a new product with large European customers towards the end of this financial year.

Chief executive Ian Troughton says that, as with any product, it will take a while to build sales.

"We don't think it will have any major impact on our results in the short term, but as a longer-term prospect we're really excited about it."

4RF has boosted its research and development and international sales teams and now has 75 staff, most of whom are in Wellington, he says.

"One good thing about the credit crunch is that there are quite a lot of good-quality people around. It's a good time to hire internationally."

The lingering downturn will make business challenging for the rest of the year and into 2010, he says.

4RF has customers in 111 countries and offices in North America, France, Britain, the Middle East, Asia and Africa.

Exports account for more than 90 per cent of its sales.

The firm won the global gold category for its export success at Wellington's Gold Awards this year.

27 March 2009

TiVo HD Review from cnet Australia

Coming to NZ before Christmas

TiVo HD Review - Personal Video Recorders

the TiVo HD is one of the ugliest set-top boxes we've ever seen. It's big, it's silver and black, and the front-mounted LEDs tell you almost nothing. It looks less like a luxury AV component and more like a network storage box.


24 February 2009

Java Posse, this week

I love this week's Java Posse (#231) The Java Posse

There's a nice discussion about the mobile space: how it'd be nice to have JavaFX for UI stuff on Android. As they've noticed, JavaFX is not a complete stack, it doesn't want to compete against the numerous existing OSs for the mobile. But instead, it sits only at the application level.
That's a departure from the original project, Savaje.
Also, Android's declerative UI is not well suited for animations or games so there JavaFX would make sense.
Very funny the story at the end of a child being named after Martin Odersky, the creator of Scala.

15 February 2009

14 January 2009

Meet Sun Microsystem's Open Source man in Wellington

Event Details

Simon Phipps, Sun Microsystems Global CTO for Open Source will be in Wellington for one day only on Monday, 26 January 2009.  This proposed open forum will provide the opportunity for interested parties to discuss the role of Open Source in today's increasingly demanding working environment.
Time:
    4.30pm  Registration and afternoon tea
    5pm   Session commences
    7pm   Finish
Technology futurist Simon Phipps is a well-known computer industry insider and commentator and as well as having a widely-read weblog he speaks frequently at industry events on technology trends and futures. At various times he has programmed mainframes, Windows and on the Web. Currently the Chief Open Source Officer at Sun Microsystems, Inc., he was previously involved in OSI standards in the 80s, in the earliest commercial collaborative conferencing software in the early 90s, in introducing Java and XML to IBM and most recently with Sun's launching Sun's blogging site, blogs.sun.com. He lives in the UK, is based at Sun's Menlo Park campus in California and can be contacted via http://www.webmink.net
This event is being sponsored by Sun Microsystems.

21 November 2008

Picasa + Snapfish: finally printing is easy and fast in NZ too!

Google has released version 3 of the excellent Picasa, a free photo management tool
Google Photos Blog: A closer look at Picasa 3 (beta!)

But even better news is that Digitalmax has teamed up with HP's SnapFish and since Picasa can upload photos directly onto SnapFish, finally printing has become so easy and affordable!

I've used Digitalmax in the past, when they had specials for big prints in digital aspect ratio.
It's an excellent service but the potential savings wouldn't justify the hassle of using their antiquated tool for uploading pictures.
Recently they had revamped their website but they hadn't come up yet with a decent client software to facilitate the uploading process.

Well done Digitalmax, we're certainly going to use your services much more often in the future.
By the way, thank you very much for the 50 free prints that are given away as a welcome bonus!

22 October 2008

Efficient use of resources in Android

Now that Android is out, people will start looking into that great (and big) code produced by Google engineers.

One thing they have always claimed is that the Dalvik VM is safe, with each instance running in a separate process, while still efficient with resource sharing among instances.
I didn't know how that could be possibile since processes in Linux (on MMU-ful processors) have got dinstinct address spaces.

But now I've gone back to a presentation I hadn't listened to carefully enough at the time.
http://sites.google.com/site/io/dalvik-vm-internals

Basically, a Dalvik VM process is created at the beginning. Each new instance of the VM is a 'fork' of the original one (that is called, ironically, Zygote).
What I did not know is that the 'fork' action in Unix is highly efficient and makes a copy of the memory pages just when they get modified, which you wouldn't expect for most code.

http://en.wikipedia.org/wiki/Fork(operatingsystem)

09 October 2008

Something to be said...

Embedded Systems Design - Embedded.com: "Software developers are a breed apart from the standard consumer. Writing a software program requires logic, a good and detailed memory, and a certain comfort with exactitude and creativity. Consequently, the people who write software programs tend to be smart, literal minded, logical people with good memories and organized thoughts--sometimes to an extreme.

Developers are typically very intelligent, good with numbers and abstract concepts, and have an eye for detail. They tend to live in and care about the programming life, and these highly analytical people are often passionate about chosen technologies with an almost religious fervor for or against a vendor or a vendor's technology. Developers can be extremely literal minded, sometimes to a fault. Because code logic is the process of following precise instructions, solving problems often requires exhaustive technical detail as well as a broad overview of the context in which a product is used."

Machine Translation and Speech Recognition at Google

Great research being done at Google

Machine Translation and Speech Recognition at Google

30 September 2008

Templates and Exceptions in C++

It's quite funny to read about Templates and Exceptions in C++, after having used them extensively in Java and never in C++ (well, call the first ones generics).
They were so advanced, for the time, but in the case of exceptions, a bit limited: in C++ you can just catch integers, while in Java you catch objects of type Exception.
I've heard people saying that C++ templates are far more powerful than Java generics. I don't know exactly why but the fact is that Java generics are a mess so people stay away from them, or use them as little as they can.

23 September 2008

ActiveObjects: An Easier Java ORM

In my little experience with Hibernate, I had to port code from C# to Java.
While doing so I got rid of dreadful data sets and introduced the use of Hibernate.
Having to import an existing database scherma, I used the Hibernate Tools for Eclipse to generate the required XML configuration files.

In my view choosing Hibernate over data sets has improved a lot the existing code by getting rid of tons of SQL that was scattered all over the place.
Plus it has inforced good decoupling of business and data access logic so that it is now trivial to switch over to a different database vendor.

Apart from some intricacies with native and composite keys, my experience with Hibernate has been pleasant,
The only issue I have with the ORM is its slow startup and the fact that it relies on a ton of external Jars (the same reason why it's quite hard to package Hibernate as an OSGi bundle).

For a future project of the same (small) size, I will definitely look at a new, smaller ORM.
Here are some links:

ActiveObjects: An Easier Java ORM
https://activeobjects.dev.java.net/

16 August 2008

a language can be successful so long as it resists the temptation to innovate

An interview with Neil Gafter on Java 7 features

One of the comments was that a language can be successful so long as it resists the temptation to innovate. What are your thoughts on that?
Well… Let me put it this way: when Java was first released upon the world, most of the people who looked at it seriously were C and some C++ programmers. And it was seen as a huge innovation, and I don't necessarily mean that in a positive sense. People were saying: "Are you serious that you expect me to use garbage collection in a production context? And a VM instead of a compiler?" There were a lot of things that were tried-and-true in the sense of having been around for a long time and proven themselves from a software engineering perspective, but simply were not widely deployed, things that have been in the universities, but not out in the production world. In retrospect we can say that the things that Java added to C were not new, were not inventions, were not brand-new ideas that hadn't been around before. They were ideas that had proven themselves already but had not been widely deployed. There are a lot of ideas that have proven themselves but have not been widely deployed, that are not in Java, in fact there are ideas that have proven themselves and been widely deployed and yet are not in Java. We're probably more likely to be successful adding things that are not being added to a language for the first time. So I would largely agree with his comment.

18 July 2008

What the lack of a 'classpath exception' for JavaME means for developers

I've been wondering why Sun ships some open source project with the 'linking' or 'classpath' exception and some other without.
JavaSE and other cool projects, like open-DMK, all ship with the exception and that means you can use them in commercial projects without having to release the source code.
Unfortunately PhoneME advanced doesn't fall into that category.
And that's a shame because it's really tempting to get hands in that project: it's so well structured and documented.
No idea how much royalties would be.

Anyway, there's another JVM, open MIKA, that is available under BSD. Here's what they have to say about Sun's licenses

/k/ Embedded Java Solutions: "So if you develop applets, midlets, whatever that will be downloaded onto a GPL version of Sun's VM, no problem. No problem either if you want to create an all-open-source device. But if you want to ship your device with pre-installed software which you do not want to place under a GPL-compatible licence (or you cannot do so, because the software is licensed-in), you need to do one of two things:

* Get a commercial licence from Sun, just as before, or
* Use a different, 'non-infectious' VM.

/K/'s Mika is non-infectious, because it comes with a BSD-style licence. Kaffe is under GPL just like Sun's open Java, but key developer Dalibor Topic apparently believes that this does not affect the applications which run on Kaffe, even if they are distributed together with the VM; to him this is just 'mere aggregation'. So with Kaffe you are probably OK (although you may have difficulty convincing a company lawyer of this). Other non-GPL VMs include ikvm, which runs on top of Mono; for GPL'd VMs it is best to contact the authors to see what arrangements can be made."


UPDATE a JavaPosse interview with a Sun JavaME leader clarifies this topic

08 July 2008

Innaworks Talk at Wellington JUG, Next Week

Mobile ecosystem, and mobile application development using Java

Wed Jul 16 5pm – Wed Jul 16 6:30pm

map
Equinox, Level 5, Equinox House, 111 The Terrace (or 222 Lambton Quay through Amazon), Wellington

5pm for 5:15pm start

Please register for this event at http://www.eventbrite.com/event/136502282
- it's FREE.

Topic: Mobile ecosystem, and mobile application development using Java
Speaker: Stephen Cheng, CEO Innaworks


Mobile computing is becoming mainstream. Mobile computing can add
great value to internal business processes, as well as offering ISVs
plenty of opportunities.


However due to the complexity of the mobile eco-system as a result of
diversity of technology platforms and a complex value chain, a mobile
software developer faces many technical choices and commercial
hurdles. This talk provides an overview of the mobile ecosystem from a
commercial and technical perspective, and details some of key
technological and commercial issues. Java does play a particular
important in this story due to its current dominance as a mobile
software platform.


We will also demonstrate alcheMo Java to native platform porting
solution which solves the platform fragmentation issue. Incorporating
an advanced Java to C++ translator and an optimized run-time library,
alcheMo extends Sun's "Write Once, Run Anywhere" philosophy to native
platforms without access to a Java Virtual Machine. alcheMo makes it
possible to maintain a single code base in J2ME while developing for
the key native platforms (such as BREW, iPhone, Windows Mobile).


Bio:

Stephen Cheng is the founder and CEO of Innaworks since 2002.

Stephen is a frequent speaker at industry conference including Game
Developer Conference Mobile, JavaOne and BREW Conference.


Don't forget to register, since we want to ensure the venue can fit
everyone.