Latest posts from Codename One.
Blog
Pixel Perfect – Material Buttons
I’ve mentioned before that our biggest priority in 3.8 is refining the UI design of Codename One applications. This is a difficult task as it is so vague. There are so many small things we can do, when they are viewed in unison they seem approachable but as we start going thru the tasks priorities muddle. That’s why we need feedback from you guys on what bothers you about the UI and its refinement. ...

Kotlin Support Public Beta
We were prepared for an uphill effort in terms of getting Kotlin up and running… Turns out that getting the basic support out of the door was much easier than expected with a few expected caveats that will hopefully be acceptable moving forward. Steve did pretty much all of the work on this, I asked him to write a post where he explains the challenges as this isn’t the first time he ported a JVM language to Codename One. ...

TIP: Edit the Docs for Fun and Profit
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. ...

Tutorial – Using Push Notification
Push gets a lot of support queries, it’s a hard subject to wrap your head around especially with all of the conflicting and shifting landscape around it. To make matters worse every OS conceptualizes it very differently. I go into some of the really advanced stuff such as fallback behavior in the advanced course but basic stuff is still a crucial first step. So I adapted some of the material from there and re-did the push How Do I? video to use the newer API’s and settings. Check out that page for the full transcript of the video. ...

Terse REST API
When discussing the features Chen slipped in just in the last minute of 3.7 I mentioned there were two such features but only discussed the desktop skin. The second one is a more terse/logical API for calling REST web services using the builder pattern. I actually discussed this briefly in the how do i video for networking & web services near the end. But that’s one of those details that might have easily been missed in that video… ...

Desktop Skin
During the final stages of the 3.7 release cycle we had a lot of material to go thru and Chen slipped a couple of features that we just didn’t have the time to discuss. One of those features is the new desktop skin which is a special case skin to debug desktop and JavaScript apps. Unlike other skins it doesn’t scale, it resizes the UI when you resize it. It has no skin decorations except for a small bar at the bottom that indicates the current resolution. You can use this to simulate resizing from the user. ...

TIP: Using Git for Codename One Projects
I wrote in the past about importing a Codename One demo from github but I left the whole working with git as an open subject. Mostly because I considered it a bit out of scope for the discussion. I have a section in the free online course about the anatomy of a Codename One application which I completely forgot to upload until I wrote this! If you want to understand more, I strongly suggest watching that as it explains a lot of the “why” and “how” logic of Codename One project structures. It explains the purpose of every file you see in the project… ...

Survey Results, Kotlin, Updates and News
It’s been a hectic month getting the academy up and orchestrating the release. I have a mixed bag of updates and announcements we need to make. Specifically covering the surveys for the next academy app, the Kotlin survey, the coming update to 3.7.2 and future milestones. Kotlin As you recall I published a Kotlin survey a while back and we didn’t publish the results. Some of the result were a bit surprising… Lets review some of the answers. ...

GUI Builder Improvements
With version 3.7, we have revamped the GUI builder with a designer that allows you to position your elements precisely where you want them. The experience should be closer to what you find in graphical design applications like Photoshop rather than the more rigid “drop in the slot” approach in previous versions of the GUI builder. There are caveats to be aware of with this approach, but overall, it should empower you to build beautiful UIs with greater ease than before. ...

Codename One 3.7 is Live
Codename One 3.7, the “Write Once Run Anywhere” mobile solution for Java developers is now live! This exciting new release brings with it a surprising new overhaul of the Codename One GUI builder which now includes support to “auto-layout” allowing developers to place components with the ease/power of Photoshop or Illustrator.. Codename One is the only platform that… Has Write Once Run Anywhere with no special hardware requirements and 100% code reuse ...

Launching the Codename One Academy
On the eve of the release of Codename One 3.7 we are excited to announce the new Codename One Academy which will change the way people learn Codename One. We’ve invested a lot of effort in creating a smooth learning experience and we’re launching with 3 live courses. This wouldn’t have been possible without all the help from community members who provided guidelines, feedback and assistance. It wouldn’t have been possible without the members of the bootcamp who helped with the process of refining the requirements from this course. Thank you all for your help! ...

How does it Work?
You know that feeling before going on stage to talk or perform. It’s a knot in your stomach but also an exhilarating sense of excitement about what’s to come… I’ve got that fidgety feeling of “can’t wait to get it out” and yet I feel there is so much more to do. Thanks for all the comments, questions, suggestions & votes for the last couple of posts. Those always help tremendously! One of our bootcamp participants mentioned the length of my videos in the bootcamp and my response at the time was that I can’t possibly make the videos shorter as it would be far more work… ...