Im sure my answer / comment on What is Gradle in Android Studio? will get downvoted into oblivion with short-shrift fairly soon. (Maybe deservedly).

But I’ll make it here :

[quote]

At the risk of being discursive I think behind this is the question of why the Android Studio / Gradle experience is so bad.

Typical Clojure experience :

* download project with dependencies listed in project.clj.
* Leiningen gets the dependencies thanks to Clojars and Maven.
* Project compiles.

Typical Android Studio / Gradle experience :

* “Import my Eclipse project”.
* OK project imported.
* Gradle is doing it’s thang … wait … wait … wait … Gradle has finished.
* Compile … can’t compile because I don’t know what an X is / can’t find Y library.

I’m not sure this is Gradle’s fault exactly. But the “import from Eclipse project” seems pretty flaky. For all of Gradle’s alleged sophistication and the virtues of a build-system, Android Studio just doesn’t seem to import the build dependencies or build-process from Eclipse very well.

It doesn’t tell you when it’s failed to import a complete dependency graph. The Android Studio gives no useful help or tips as to how to solve the problem. It doesn’t tell you where you can manually look in the Eclipse folders. It doesn’t tell you which library seems to be missing. Or help you search Maven etc. for them.

In 2016 things like Leiningen / Clojars, or node’s npm, or Python’s pip, or the Debian apkg (and I’m sure many similar package managers for other languages and systems) all work beautifully … missing dependencies are thing of the past.

Except with Android. Android Studio is now the only place where I still seem to experience missing-dependency hell.

I’m inclined to say this is Google’s fault. They broke the Android ecosystem (and thousands of existing Android projects / online tutorials) when they cavalierly decided to shift from Eclipse to Android Studio / Gradle without producing a robust conversion process. People whose projects work in Eclipse aren’t adapting them to AS (presumably because it’s a pain for them). And people trying to use those projects in AS are hitting the same issues.

And anyway, if Gradle is this super-powerful build system, why am I still managing a whole lot of other dependencies in the sdk manager? Why can’t a project that needs, say, the ndk specify this in its Gradle file so that it gets automatically installed and built-against when needed? Why is NDK special? Similarly for target platforms? Why am I installing them explicitly in the IDE rather than just checking my project against them and having this all sorted for me behind the scenes?

[/quote]

The browser keeps evolving to become a more comprehensive platform, operating system.

WebAssembly is a new proposed standard bytecode that the major browser-makers are committing to support. It will interop with javascript (I believe) and HTML5 APIs, and is intended as a compile-target for other languages.

More information here.

Good news. The latest version of BTSync actually lets me specify which folder on my Android tablet I want to sync.

That means I can explicitly tell it to sync. the OWL directory that OWLdroid uses by default. (Somewhere between updates of Android and BTSync last year, this facility got lost.)

So it’s looking like BTSyncing between my tablet and laptop are working again. So OWLdroid is a viable piece of software again. (The syncing with the laptop makes a huge difference in day-to-day usefulness.)

Yes, I know this isn’t great. I need to figure out how to ensure that OWLdroid works. The longer term plan is to move to having remoteStorage.js as an option. But that’s a little way down my todo-queue.

Hmmm … I seem to be having problems with the latest Android / BTSyncing for OWL.

For some reason the latest Android and BTSync won’t sync in the directory that OWL writes into. It keeps trying to sync. into the Downloads directory.

This will probably need an update to OWLdroid to fix. Either to change the default location it writes pages to. Or to let the user specify.

Irritating. Will try to get to it soon.

Been meaning to do a video demo of OWL for a while, to make it clear what it really is. Today there was some Twitter discussion of Fargo + TiddlyWiki + syncing so I had to drop a link. And decided that it was better to have a rough and ready video example than to wait until I did it properly.

So here it is. Please excuse the whole “one-handed camera while I try to drive everything from the other hand” bit.

I hope it gets the idea across.

Giles Bowkett :

This is, in my opinion, the strongest argument for seeing Unix and basic coding skills as fundamental required literacy today. As prostheses for memory and identity, computers are too useful not to use, but if you don’t know how to craft your own code which gives you a UX which matches the way you think, you’re doomed to matching the way you think to the available tools, and even the best available tools basically suck. Interaction design is not only incredibly hard to do well, it’s also incredibly idiosyncratic.

My Quora question :

I mean, I know why. It’s a security thing.

But why couldn’t a browser have an API for scripts to read / write the file system and a security feature where the web-app has to ask and be given permission by the user before it runs? (Just as Android apps. have to tell you what permissions they need before you install them.) Couldn’t the browsers successfully police this?

Surely if the browser manufacturers were to offer this capability, they’d more or less kill native Windows / Macintosh application development overnight and become the default platform for desktop computers. (So maybe Microsoft don’t have the incentive, but Google and Firefox do.)

I’m a couple of days into LinkBlogging using Fargo, (at Yelling At Strangers From The Sky) and I have to say, I’m getting into the swing and it’s great.

If you keep the outline open in a tab, it’s about as fast and convenient to post to Fargo as posting a link to Plus or Twitter. (Which is where traditional blogs like WordPress / Blogger often fall short). In fact, G+ is now getting bloated that it can take 10 seconds just to open the “paste a new message” box. It’s a lot faster than that.

It would be nice if it could automatically include a picture or chunk of text from the original page the way FB / G+ do, that’s turned out to be a compelling experience for me, but it’s a nice not must-have.

A question, is there any kind of API for the outline inside the page which a bookmarklet could engage with? (Is that even possible given the browser security model?)