Michael Jentsch

Every Business Is a Digital Business

internet_schema„Every Business Is a Digital Business“: So steht es in der Einleitung zur „Accenture Technology Vision 2014“ von Accenture. Das Dokument ist dazu da, um Führungskräften aller Branchen eine technologische Vision/Inspiration zu geben und die möglichen Technologien im Unternehmen aufzuzeigen.

Es handelt sich in der aktuellen Fassung von 2014 um Trends, die schon von einigen Unternehmen in unterschiedlichen Branchen experimentiert wird. In einem Digitalen Business ist es von entscheidender Bedeutung, sich für die richtigen Technologien und Lösungen zu entscheiden. Für diese Entscheidung müssen Kundenbeziehungen, Kosten Nutzen Verhältnis und andere Anforderungen bewertet werden und die Rolle des Unternehmens und die möglichen Expansionspfade in andere Branchen überprüft werden, denn laut Accenture ist die Überwindung der  Branchenbarrieren eine große Chance zur Eröffnung neuer Wachstumsperspektiven.

Weiterlesen
Java oder PHP? Eine Frage weniger dank JPHP

java_php_jphpMuss man sich zwischen Java und PHP entscheiden wird die Entscheidung im Enterprise Umfeld oft zu Gunsten von Java getroffen. Dies hat verschiedene Gründe, auf die ich hier im Detail garnicht eingehen möchte.
Nun gibt es aber in einigen Fällen die Situation, dass beide Programmiersprachen ihre Stärke ausspielen könnten und man sich aber für eine entscheiden muss.

 

JPHP – PHP Code in der Java VM

Für diesen Fall gibt es nun JPHP. Hierbei handelt es sich um einen PHP Compiler, der ähnlich wie JRuby oder Jython aus PHP Code einen lauffähigen Bytecode erstellt, der in einer JVM lauffähig ist. Dabei wird JDK 1.6 und höher von JPHP unterstützt und der Java-Bytecode ist sowohl in der Oracle VM als auch in der OpenJDK lauffähig.… Weiterlesen

Einführung in JavaScript als PDF

schleifeWer dein Einstieg in eine neue Programmiersprache wagt, ist auf gute Dokumentation angewiesen. Das gilt besonders, für Programmieranfänger, die noch nicht so viel Erfahrung haben und das erste mal eine Schleife machen programmierensollen.
Zum Glück gibt es das Internet und Menschen, die bereit sind, ihr Wissen zu teilen. Einer dieser Menschen ist Mathias Schäfer. Er ist als Webentwickler spezialisiert auf die Frontend-Techniken HTML, CSS und JavaScript und bloggt unter molily.de.

Einführung in JavaScript – Creative Commons Lizenz

Er hat eine sehr umfangreiche Einführung in JavaScript unter http://molily.de/js/ veröffentlicht, die er unter die Creative Commons Lizenz gestellt hat. Man kann die JavaScript Einführung direkt online lesen oder bei GitHub (https://github.com/molily/javascript-einfuehrung) herunterladen.… Weiterlesen

Dies ist mein erster Test mit dem MAX7219 Chip am Espruino Board. Das Board ist über die 3 Ausgänge B13 bis B15 angeschlossen und steuert eine 8×8 LED Matrix an. Die habe ich für ein paar Euro bei ebay bestellt.

Mit den folgenden Zeilen JavaScript Code kann man das Beispiel aus dem Video nachstellen. Viel Spaß beim basteln :-).

clearInterval();
clearTimeout();

digitalWrite (LED1,0);
digitalWrite (LED2,0);
digitalWrite (LED3,1);

SPI2.setup({mosi:B15, sck:B13});
var disp = require("MAX7219").connect(SPI2,B14);

var stage = 0;
var off = [0,0,0,0,0,0,0,0];
var all = [255,255,255,255,255,255,255,255];
var half1 = [255,0,255,0,255,0,255,0];
var half2 = [0,255,0,255,0,255,0,255];
var diagonale = [1,2,4,8,16,32,64,128];
var smiley = [60,66,153,165,129,165,66,60];
var invertsmiley = [195,189,102,90,126,90,189,195];
var heart = [0,54,127,127,127,62,28,8];

function counter () {
  digitalWrite (LED1, 1);
  clearInterval ();
  var a = new Array(0, 0, 0, 0, 0, 0, 0, 0);
  setInterval(function() {
    disp.raw([a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7]]);
    disp.intensity(1);

    a[0]+= 1;
    for (i = 0; i < 7; i++)
    {
      if (a[i] > 255)
      {
        a[i] = 0;
        a[i+1]+=1;
      }
    }
    if (a[7] > 255)
    {
      a = new Array(0, 0, 0, 0, 0, 0, 0, 0);
    }
  }, 5);
}

function showAll () {
  // Alle LEDs einschalten
  disp.raw(off);
  intensity = 0;
  diff = 0.1;
  setInterval(function() {
    disp.intensity(intensity);
    if (intensity > 1 || intensity < 0)
      diff = -diff;
    intensity += diff;
    disp.raw(all);
  }, 100);

}

function showSmiley () {
  // Smiley zeichnen
  disp.intensity(1);
  disp.raw(smiley);
}

function blinkHeart () {
  // Herz blinken lassen  
  intensity = 0;
  diff = 0.1;
  setInterval(function() {
    disp.intensity(intensity);
    if (intensity > 1 || intensity < 0)
      diff = -diff;
    intensity += diff;
    disp.raw(heart);
  }, 100);
}

function showDiagonale () {
  // Diaginale Linie
  disp.intensity(1);
  disp.raw(diagonale);
}

function blinkSmiley () {
    on = 1;
    inv = 1;
    disp.intensity(on);
    setInterval(function() {
      if (inv)
        disp.raw(smiley);
      else
        disp.raw(invertsmiley);
      inv =!
Weiterlesen

Es gibt in der espruino API keine einfache onClick Methode. Da ich nun aber schon gefühlte 100 Mal danach gesucht habe, werde ich jetzt einfach hier meine Umsetzung espruino onClick Methode bloggen.

setWatch(doSomerhingStupid, BTN1, {repeat:true,edge:”rising”, debounce:1/*ms*/});

So einfach geht das. Mit dem Code wird bei jedem Klick auf den onboard Button “BTN1” die Methode doSomerhingStupid aufgerufen.

Meine Apps im Google Play-Strore Jetzt bei Google Play
Weiterlesen
Programmierung – Quo vadis?

Die ständig Sinkende Halbwertzeit des Fachwissens und die permanente Flut an neuen Technologien und Ideologien macht es dem Software Entwickler nicht leicht sich auf dem Laufenden zu halten und wer als Software Entwickler den Anschluss verpasst ist ganz schnell veraltet und muss sein Brot als Projektleiter oder schlimmeres verdienen :-).

Damit das nicht passiert, erstelle ich einmal im Jahr meine Hitliste der Programmier-Themen. Dabei kommt es nicht darauf an, ob es sich um eine Programmiersprache, ein Framework oder irgendetwas anderes handelt. Wichtig ist nur, wie aktiv das Thema in der IT Branche (Software Entwicklung International) diskutiert wird. Dieses Mal habe ich die Daten der Jahre 2009 – 2013 und den Januar 2014 ausgewertet und dabei ist folgendes Ergebnis herausgekommen.… Weiterlesen

Wer jetzt an Wiedergabe von MP3 oder Wav Files denkt, ist schon auf der falschen Fährte, denn hier geht es heute wirklich um Webseiten, die Texte vorlesen oder mit dem Benutzer sprechen können.

Kleine Einschränkung

Auch wenn es technisch schon möglich ist, das Webseiten Sprache versehen, geht es hier in dem Artikel nur um die Ausgabe von Sprache mit der „Speech Synthesis API“.

Sprachausgabe von Webseiten

Die Tatsache, dass der Browser mittlerweile über Lautsprecher und Mikrofon (falls vorhanden) mit dem Nutzer interagieren kann. Das bringt viele neue Möglichkeiten mit sich. So können z.B. Suchbegriffe nicht mehr nur eingegeben sondern direkt gesprochen werden.… Weiterlesen

Ich habe gerade mit AIDE die wohl simpelste Android App programmiert, die man sich nur denken kann. Die App gibt einfach nur die Android Device ID aus. Als Bonus Feature kann man die ID auch noch per E-Mail versenden. Die paar extra Zeilen waren es mir wert.

Die Sourcen zu dem Mini Projekt kann man unterhttps://github.com/msoftware/AndroidDeviceId finden.

So sieht die MainActivity aus:

package com.jentsch.deviceid;

import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import android.provider.Settings.Secure;
import android.content.*;

public class MainActivity extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String android_id = Secure.getString(getContentResolver(), Secure.ANDROID_ID);
TextView devid = (TextView)findViewById(R.id.deviceid);
devid.setText(android_id);
}

public void sendDeviceId(View view)
{
String android_id = Secure.getString(getContentResolver(), Secure.ANDROID_ID);

Intent i = new Intent(Intent.ACTION_SEND);
i.setType(“message/rfc822″);
i.putExtra(Intent.EXTRA_SUBJECT, “My Device Id”);
i.putExtra(Intent.EXTRA_TEXT   , “My Device Id is ” + android_id);
try {
startActivity(Intent.createChooser(i, “Send mail…”));
} catch (android.content.ActivityNotFoundException ex) {
Toast.makeText(this, “There are no email clients installed.”, Toast.LENGTH_SHORT).show();
}
}
}

Was soll der Quatsch?… Weiterlesen

Espruino Board nun im Online Shop

Seit gestern ist es so weit.  Das Espruino Board ist nun offiziell in Online Shop von phenoptix.com angekommen. Nachdem Gordon Williams ein paar Wochen nach geeigneten Unternehmen gesucht hat, ist er nun fündig geworden. Das Board kann unter http://www.phenoptix.com/products/espruino-board-javascript-on-an-arm-based-board für £24.99 GBP gekauft werden. Das entspricht aktuell ca.  30€ und ist nicht zu viel für dieses kleine JavaScript Microcontroler Board.

Ich bin jedenfalls sehr erleichtert. Mit den 5 Kickstarter Boards die ich (incl.  HC-05 Bluetooth Board) für die 99 GBP bekommen habe komme ich zwar eine Weile aus,  aber was ist,  wenn mal ein Board kaputt geht.  Außerdem haben mich schon einige Bekannte angesprochen ob ich ihnen ein Board überlassen kann. … Weiterlesen

Espruino Bluetooth HC-05 aufgelötet

Jetzt habe ich die Espruino Boards schon einige Zeit und am Wochenende habe ich wieder ein neues kleines Projekt angefangen und da fällt mir auf, die Bilder von den Espruino Boards mit den aufgelöteten Bluetooth Modulen (HC-05) sind noch nicht online.

Aber das lässt sich ja ändern :-). Hier also die Bilder.

IMG_20140122_193547

IMG_20140122_200733

IMG_20140122_200658

to be continued

Meine Apps im Google Play-Strore Jetzt bei Google Play
Weiterlesen