I haven't blogged in a while. I've been busy working with a couple of startups, some enterprise customers and bringing new people on-board. Steve has been great in picking up some of the slack but his plate is too full to blog with the same frequency I had so the blog slowed down a bit during this time. I hope to pick it back up to a weekly post regiment but my schedule is just so tight I barely have time to breath.Read More
Summer is finally over and the kids are going back to school/kindergarten so it's time to go back to our regularly scheduled posts. I won't be posting as often as before as I'll dedicate more time for support/development activities but still there's a lot to write about...Read More
Last week scrolling broke and we had a few relatively complex regressions. This can be traced back to a change we did to the
getComponentAt(x, y) method, this change in itself fixed a problematic bug but triggered far worse bugs and we just had to revert the whole thing...
On occasion I answer a question on stackoverflow, the discussion forum or elsewhere and I get a response of the form of: "this wasn't clear from the docs". We improved the docs but befitting a huge project run by engineers without a technical writer in sight this is a bit of a problem... The thing is that this is a problem you can fix regardless of your level in engineering or in English.Read More
We received some interest related to Kotlin over the past couple of years and this has risen noticeably in the past month or so. Up until now we tried to be very focused on Java which is why we didn't add support to other JVM languages even though this shouldn't be too hard. But Kotlins similarity to Java and its special relationship to Android make it an ideal second language for us.Read More
Since I haven't blogged in a while a lot of stuff has piled up on my desk and I'll get it out in batches in this post I'll go over a few of the bigger changes we did while I was away on the bootcamp and also give you a bit of an update on what we've been doing within the bootcamp itself.Read More
We are on a mid-bootcamp break so the blog is back to life during this time (and there is so much to write!), more on that tomorrow but for now I'd like to write about fixing & tracking issues with the designer (resource editor) and the GUI builder.Read More
I was chatting with one of the bootcamp attendants on the one on one calls and he asked me a question that I didn't think you'd care about but I'm guessing it would be interesting: "Why are you doing the bootcamp?".
I was so focused on explaining the benefit to you that I neglected to explain what Codename One will gain from this bootcamp.
Bootcamp registration closed well and we are currently in the pre-course (more on that in another post) and already the Facebook group of the bootcamp is seeing decent activity. Being as busy as I am I thought I'd lift a question that was asked there to headline this post: "When shouldn't I use Codename One?".Read More
We haven't talked as much in recent years about what it takes to run Codename One. Our infrastructure and backend are pretty complex with multiple pieces working in cohort to make everything feel like a single product. As part of that we work with 5-10 different backend SaaS providers that sell us various services, this might seem like an "odd" statement since the number should be fixed but it isn't...Read More
I've written this in emails before and on quite a few occasions but this bares repeating. Gaining visibility in this industry is tough especially when the industry is driven by Google and Apple...
Despite years of effort most Java developers or mobile developers haven't heard about us and it's still an uphill battle for awareness.
A few years back I wrote an article for O`Reilly covering the advantages of cross platform over native OS code. Almost 3 years have passed and a lot has changed in our industry so I wanted to re-examine how this impacts my perspective on cross platform vs. native.Read More
I love going to JavaOne, I used to do it every year and it's loads of fun. I've been speaking on a regular basis at JavaOne since 2008 and got a rockstar award a while back. Two years ago we purchased a booth to promote Codename One as well.
Last year we skipped the show and it has been so great we decided to skip it again.
This is something we run into every week. A new Codename One user writes asks why "feature X" from Java isn't supported. In this post I'd like to explain the "bigger picture" or why less is more...Read More
The UWP (Universal Windows Platform) port is finally stable enough to get an app into the Microsoft store. Steve published out Solitaire demo into the Microsoft appstore and it passed thru the whole process. You can download it, install it on your device and try it.Read More
When picking up a new UI API people often start with a list of items. Lists are often used for navigation, logic and data so it's a natural place to start. Codename One's List class is a bad place to start though... It's complex and encumbered and has far better alternatives.Read More
You probably recently received the “Next Steps from the Parse Team” newsletter in your inbox in which you were urged to take immediate action as it pertains to migrating your Parse.com hosted apps.Read More
When I first read the announcement that Parse.com would shut down on January 28th 2017, I went from disbelief (it’s probably an early April fool’s joke) to rage (how could they do that?!) to sadness (oh no! it was a great service) and finally to utter confusion (where do I go from here and what do I do with my apps - parse4cn1, two MVPs for clients and an upcoming rewrite of Medex for which I was planning to use Parse.com as backend?). A few months down the line, a lot has happened such as the release of the open source Parse Server (yay!) and subsequently the Parse Dashboard. However, I still had to decide what do with my apps and I guess you have to as well.Read More
Last time around we compared Codename One to Xamarin and this time around I'd like to compare Codename One to what is probably the market leader: PhoneGap/Cordova. If Xamain is big then Cordova is huge, it is so prevalent that it is often the default assumption when people mention cross platform today.Read More
Last time around we compared Codename One to QT and this time around I'd like to compare Codename One to the 800 pound gorilla Xamarin. Xamarin is an amazing product that I contrasted with Codename One in the past but this is worth repeating.Read More
We get a lot of requests to compare Codename One to other technologies and while we do have a comparison page it is somewhat static. Doing a comparison within a blog post does have the advantage of focusing on one technology and allowing comments. In this segment we'll compare the venerable QT to Codename One.Read More
One of the best things in running an open source project is the high quality issues, we don't always respond immediately and sometimes things get lost under our piles of work but we do appreciate the time you take to file issues.Read More
When we first started to present Codename One to investors a very prominent local investor said he'd commit to a round of funding if we allow Android developers to import native Android apps to Codename One. We passed on that which in retrospect might have been a mistake but the technical challenges were the main reason for that decision.Read More