Tuesday, October 25, 2016

Good things


I will try here to keep here a list with various things that improved my day to day work!

Jenkins Server in minutes

If you want to have a rapid Jenkins server (eventually free for one year for your free AWS account) you can use this Jenkins preconfigured EC2 instance from AwsMarketlace. You press one button and the server is provisioned for you automatically (the password is shown in console). Link in Aws Marketplace: https://aws.amazon.com/marketplace/pp/B00NNZUF3Q

Apple Continuity

If you have an Apple Mac wits MacOS Sierra, iPhone/iPad (iOs 10), Apple Watch (OS 3) you can use some cool features based on Apple Continuity (more info here)
  • Universal Clipboard your clipboard is shared between devices - copy on a device and paste on another
  • Handoff - start working on a device and continue on another (you can  see the changes in real-time on both devices)
  • Auto Unlock - unlock your Mac with Apple Watch -> demo; tutorial

Git Workflows

If you want to improve your Git workflow you can use one of the workflows described here: https://www.atlassian.com/git/tutorials/comparing-workflows You can improve from a Centralized Workflow to Feature Branch Workflow and in the end to Gitflow Workflow. Or this simple flow. Or other workflows.


HDD

Very interesting topic: HDD - Hypothesis Driven Development - it was in my mind but it seems it is in other minds too. See this interesting article: https://barryoreilly.com/2013/10/21/how-to-implement-hypothesis-driven-development. And also this manifesto from Steve Black named Customer Development manifesto: https://steveblank.com/2012/03/29/nail-the-customer-development-manifesto/

PWA

First, I saw this announcement: Crosswalk 23 to be the last Crosswalk release and after this, I saw a Service Worker in the Ionic 2 templates.  PWA it is described here: https://developers.google.com/web/updates/2015/12/getting-started-pwa. How you can do this with  Angular and Spring Boot you can find here: https://stormpath.com/blog/progressive-web-applications-angular-spring-boot-stormpath. I remember that the Android Instant Apps was an announcement of Google http://www.theverge.com/2016/5/18/11703884/android-instant-apps-no-download.

Progressive Web Applications -


Friday, September 30, 2016

My Own Technologies Radar

After the Java One 2016 SF Conference I decided to clarify the stack of technologies that I like to (continue to) use, experiment or learn.

Happy to use
  • Java, Groovy, JavaScript
  • Spring instead of Java EE
  • Intellij Idea instead of Eclipse (I use Darcula LAF but old Eclipse shortcuts)
  • Git (Stash - Bitbucket, and not so much Github) instead of SVN
  • Gradle(Groovy scripting) instead of Maven, Ant
  • Spock and Geb instead of (in fact together) with JUnit
  • Angular instead of JQuery
  • Grails (Spring, Hibernate, Quartz)
  • Ionic (Angular, Cordova) for hybrid mobile applications (Android, iOS, Windows Phone)
  • AWS (I'm already using: Elastic Beanstalk, EC2, S3, CloudFront, Glacier, RDS, VPC, Route 53, IAM, CM, SES, WorkMail)
  • Atlassian Suite (Jira, HipChat, Bamboo, Bitbucket)
  • Apple products (Mac Book Pro -> macOS Sierra, iPhone -> iOS 10, Apple Watch -> watchOS 3)

To experiment and learn
  • Java 9 (modules, jshell)
  • Docker
  • Lambda expressions and streams (Java 8)
  • AWS Lambda + Api Gateway services
  • Scala (the last JVM language I will learn -> I will participate at  Scala eXchange 2016 in London)
  • Windows 10 and Windows Phone (because they are sharing the same store now)
  • Raspberry Pi (I already have a PI 3 MODEL B)

To keep an eye on (I used them in past but not currently)
  • Java EE (rebranded from JEE): Servlets, JSP, JAX-RS, JSF, EJB, CDI, JPA, etc
  • VertX (with Java 9 lambdas the syntax is more clean than before)
  • Firebase (for cloud serverless )
  • Jenkins
  • Mongo DB

Switch to new versions
  • Java 7 -> Java 8
  • Grails 2 -> Grails 3
  • Ionic 1 -> Ionic 2 (Angular 1 -> 2)

Java One 2016 SF

Some ideas and resources after Java One 2016 SF

Ideas

ORACLE like everybody in the market is doing cloud, micro services, reactive and ... ‘messaging bots’ these days. The last part is not clear for me. Why should Oracle do the 'messaging bots' like FaceBook?

Red Hat presentation where in general based on VertX so I think they want to promote it to the market!

I preferred Java Core presentations instead of Java EE (I’m a Spring fan so I just want to keep an eye on Java EE development).

I was interested in the new release of Java 9 (modularity and other improvements). I was interested in GC, concurrency, memory model for Java 8.

Three types of presentations
  • Singleton -> Venkart - it was always full with queues at conference rooms entrances
  • Pool of objects -> Core Oracle teams
    • very young presenters accompanied by elder ones
      • Java 9 is on good hands
      • the Java will have a good feature nX10 years from now
  • Prototypes -> sole wolfs presenting various technologies
Bad things
  • the conference web app was hard to be used - (we saw a PHP exception)
  • mobile app was not working at all (both Android and iOs)
  • to many session available in parralel in the middle of the day; to few in the morning
  • Java One is shadowed by the Oracle World conference

Links
JavaOne 2016 Youtube Channel (#85 - but where more than that; a big part of them where not been recorded by Oracle): https://www.youtube.com/playlist?list=PLPIzp-E1msrYicmovyeuOABO4HxVPlhEA 


Some interesting presentations (I didn’t participate but I watched the videos):


USA for me

Good things
  • Uber and Lyft works great
  • Airbnb works great
  • Delta Airlines has in-flight WiFi 
  • big sandy beaches in LA
  • good barista coffee (Big Shoulders - Chicago, Rose Park Roasters - LA Long Beach) - Starbucks was just an emergency solution for us

Bad things

  • Junk food everywhere
  • Drugs smells in downtown SF (I hope in Stanford campus is not the same smell)
  • homeless people in SF even near Moscone Center
  • phone SIM cards are very expensive comparing to Europe

The last conference for me was SpringOne 2GX 2015 (https://www.youtube.com/playlist?list=PLgGXSWYM2FpPuIFvbv6U_5cKLJB6PQbN4)