Java and Android M course

No comments
I recently posted that I had pledged 15 UK Pounds to this Kickstarter project:
https://www.kickstarter.com/projects/908213631/the-complete-android-m-developer-course-with-andro

Looking at it a couple of days later, now 11 days to go, and Rob is getting about 24 pledges per day. At that rate, he won't quite reach the 50,000 Pound plateau.

I hope that the contributions pick up toward the end, as if it reaches 50,000, Rob will throw in one of his other courses for free, that's two courses for 15 Pounds (about US$24 or AU$30).


So many cross-platform app developers

1 Comment
My previous two posts started looking into a cross-platform tool for developing apps:
http://bkhome.org/news/?viewDetailed=00208
http://bkhome.org/news/?viewDetailed=00209

This is a good list of them:
http://appindex.com/app-development-tools/

...though, that list focuses on tools to target phone and tablet platforms. I do want that, but would also like, if possible, to target desktop platforms, such as Linux and Mac.

Smartface
One that really stood out as superb, is Smartface:
http://www.smartface.io/

The host platform is Windows only, and only two targets, Android and iOS.

I got it running, and it is lovely. The amazing thing is we get the fully-featured product for free.
It ticks so many boxes: auto-complete in the editor, sqlite support, embedded browser support, extremely easy to use, lovely GUI layout designer, etc.

QtCreator
QtCreator is not in the list of developer tools in the URL at top of this post. However, it is a cross-platform tool, and does support phone targets.

I installed this in Quirky and have just started to look at it. Qt is supposed to run on anything, and is also the choice of the Ubuntu Phone developers.

It is not as simple as Smartface, preliminary look around, there is minimal help with using it to develop phone apps.

However, I will keep on investigating Qt, with QML. My installation of QtCreator doesn't seem to be working properly, so I might install the latest development release of Ubuntu, see how that pans out, then a bit later have a go at building a new Quirky based on the next release of Ubuntu.

A cross-developer's Quirky
This new Quirky will be my creation that is specifically for use as a cross-platform developer tool. Interesting idea that, a distro that is setup just as a development tool for creating apps that will run anywhere (Linux, Mac, Windows, iOS, Android, Ubuntu Phone, etc). So, I would build it with the 'devx' component already builtin, so it is all ready to go.

That's my thinking anyway. Does that seem like a good idea?


LiveCode multi-platform coding

2Comments
I have been investigating various programming tools that target multiple platforms. Basically, the idea is to create one code-base, that can be used for, say, Windows, Mac, iPhone, Android, etc.

LiveCode is one-such, and has the advantages that it can run on (be the host development environment on) Windows, Mac or Linux. Plus, has an open-source (free) version and a commercial version.

Installation
In the previous post, I wrote about installing the Java JDK and Android Studio in Quirky Linux 7.0.4.1 (i686 build):
http://bkhome.org/news/?viewDetailed=00208

I downloaded LiveCode, file 'LiveCodeCommunityInstaller-7_0_3-Linux.x86', and run that, and it installed to /opt/runrev.
Inside '/opt/runrev/livecodecommunity-7.0.3 (x86)', I ran 'livecodecommunity.i386'.

However, LiveCode Setup does not recognise the location of the Android SDK (/root/Android/Sdk).
So, I went back to Android Studio, ran "studio.sh", then choose "Configure -> Android SDK Manager", then ticked:

Android 4.1.2 (API 16)
Android 2.3.3 (API 10)
Android 2.2 (API 8)


...as per guidelines here:
http://lessons.runrev.com/m/2571/l/27385-how-do-i-become-an-android-developer-on-a-pc

Note, a lot of other things got automatically ticked in the SDK Manager, don't know why, but too much, unticked a lot of it.
Anyway, after installing the extra things, LiveCode was happy.

Oh, yes, this is where I downloaded LiveCode from:
http://livecode.com/download/

I have been playing with LiveCode, created a simple Android APK package, pretty easy.
Then I read the User Guide, for many hours last night -- disappointing that it is so out-of-date.

This is not an in-depth review of LiveCode, so I will just make some overall observations and conclusions.

Usage
Pretty easy to get going. It is not a professional "full cycle" development environment, as are some other tools (such as WINDEV), basically, you just get straight into designing the UI, then create the scripts to make things happen.

Advantages
As mentioned above, easy to get going.

A very active project. I am using v7, but v8 is promising some very exciting new features, such as LiveCode Builder, a lower-level language than Livecode, and HTML5 target support.

A very active community, with many contributions, many third-party extensions.

Runs on Windows, Mac and Linux, with targets Windows, Mac, Linux, Android, iOS, Raspberry Pi.

Embedded database, embedded browser, good, I want those features.

Disadvantages
The scripting language has me worried. It is excessively verbose, which is supposed to make it very easy for non-programmers to use. However, it is too soon for me to make any definitive statement about this.

The GUI layout designer obviously was created in the desktop days. It does not really cater to the vastly varying screen sizes, resolutions, and changing orientation of smartphones and tablets.

No auto-complete in the script editor, which some other tools have. Given the huge number of functions, etc., some auto-complete functionality would be a help. In fact, some kind of auto-help to suggest what can be typed in a certain context -- for example, a handler for a button will send certain messages, such as 'mouseUp', and it would be nice to have shortlist appear of what messages are relevant in this situation.

Dynamically typed. Well, this is seen as good for beginner-programmers. Studying the documentation though, I can see how run-time coding errors could occur due to lack of type declarations.

Reviews
Here are some reviews. I notice this first one criticizes the lack of usage of native widgets in each target environment, but as far as I can see, testing Linux target only, it does use native widgets and theme (GTK2).
http://www.bkeeneybriefs.com/2015/03/livecode-vs-xojo/
Note, Xojo looks good, but does not support Android target.

This one reports on developing for phones. It highlights the widget layout problem:
http://handsonturkish.com/livecode-review-elearning/
The workaround is to draw the widgets programmatically when a change of orientation is detected, but this seems to make the GUI-layout-designer somewhat redundant -- I plan to post about other development tools that handle this situation very elegantly.

Not a review, a news report:
http://www.drdobbs.com/open-source/scotlands-live-code-longshanks-beater/240169277

Conclusions
The jury is still out. Overall, very nice, but I plan to try some of the competition -- well, I have been investigating what else is out there, need to look in more depth.
Will report back!

LiveCode home:
http://livecode.com/


Oracle JDK, Android Studio

No comments
I have decided to learn Java. I don't know how far I will get with it, as I never really liked Java.

Anyway, running Quirky 7.0.4.1, i686 (32-bit) build, I installed the JDK and SDK:

Well, first I installed dbus, which Quirky doesn't have. I used the Puppy Package Manager, got these from the "common" repo:
dbus-1.2.4.2permissive.pet
dbus_DEV-1.2.4.2permissive.pet

Then rebooted.

Oracle Java JDK
The download page:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
I downloaded v7, this URL:
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

I don't know if this is the best way to install it, but this is what I did:
# tar -xf jdk-7u80-linux-i586.tar.gz
# cp -a -f --remove-destination jdk1.7.0_80/* /usr/


Android Studio
Here is the download page:
https://developer.android.com/sdk/index.html
I downloaded the studio-ide:
android-studio-ide-141.1980579-linux.zip

It expanded to folder "android-studio", that I installed:
# cp -a android-studio /usr/
# export PATH="$PATH:/usr/android-studio/bin"


...well, want that PATH at every bootup, so I created file /etc/profile.d/android_studio with that content. Note, contents of /etc/profile.d get called from /etc/profile.

I executed the startup script:
Opened a terminal in /usr/android-studio/bin, then
# ./studio.sh
An Internet connection is required at this point, as the rest of the SDK get downloaded, and expanded in folder /root/Android ...which after expansion, occupies a whopping 2.4GB.

Android M online course
Finally, I have put in 15 UK Pounds for this Kickstarter project:
https://www.kickstarter.com/projects/908213631/the-complete-android-m-developer-course-with-andro

...I had a look at one of the other courses developed by Rob Percival, it looks good. Text, code, and videos at each step. Plus, he speaks clearly (which is important, some fellows record videos and mumble their way through, much like modern British actors ).
I have to be patient though, the course won't be available until October.

Android M
Android M has not yet been released. Probably 2016. Here is some info:
https://www.androidpit.com/android-m-release-date-news-features-name

Rob will be giving JDK and SDK install instructions, Android-M-compatible versions, probably for Windows and Mac, so I will have to redo the installations then.


HB-2000 keyboard design fault

1 Comment
In my on-going "traveling light" project, I wrote about the tiny Bluetooth HB-2000 keyboard:
http://bkhome.org/news/?viewDetailed=00201

I own a couple of other Bluetooth keyboards, that are unwieldy in comparison. The HB-2000 is smaller and considerably lighter than them, eminently suitable where size and weight are important, such as traveling with a backpack or when a "carry on" bag is one's only luggage.

The HB-2000 is also considerably cheaper than the brand-name keyboards. However, I have discovered a design fault, shown in this photo:


At each side at the front, there are rubber feet, that glue to the printed circuit board. See the cutout in the metal frame.
The problem is that the printed circuit board is only glued, with sticky glue, to the metal frame, and the rubber feet are affixed to the board only, not the frame.

Consequently, after using for awhile, the printed circuit board lifts away from the metal frame, and the rubber feet sink into the frame.

I first noticed this when the keyboard started to wobble on a flat surface. At first, I wondered how the frame could have become distorted, then closer examination revealed the cause.
Is this just stupidity, or didn't the designers care?

I fixed it by moving the rubber feet onto the frame, and might look around for bigger feet that will cover up the metal cutout.

I still love this keyboard!

Another thing that I want to do is construct a cover, to protect the keys when packed tightly inside a backpack or whatever. The cover can be opened up, and I envision having a slot in it, into which my phone can be inserted, so it becomes a mounting base for the phone.
...if anyone has this keyboard, or plans to buy one, and wants to design such a cover, I welcome your thoughts on it.


Pages: [1] [2] [3] [4] [5] ...