Find in Array — Java 8 Style

ExplodingCup6small 150x150 Find in Array    Java 8 Style photo    technology news blogroll  performance parallel processing parallel arrays lambda expressions jdk8 JDK java streams java 8 Java functional programming code speed code complexity array traversal Java 8 has added support for parallel processing arrays — as I’m sure most of you know. There are lots of official release documents from Oracle talking about how employing these parallel methods and classes improves speed of your application — and as to be expected, there are lots of bloggers who set off to write sample code around it and analyze the performance.

I am still relatively new to Java 8, I’ll confess, though I do like the new fork/join paradigm Java 8 introduced and the support for parallelism in this version. One thing I’ve been looking at more closely is streams — which allows one to easily start dwelling into parallel processing.

The idea is relatively simple, you create a Stream instance for your “data” (be it an array, collection, I/O stream etc) and then this can be broken down into smaller chunks under the cover and processed.

Read the rest of Find in Array — Java 8 Style

Flat Structure

iStock 000001520729XSmall office chair sofa 150x150 Flat Structure photo    random thoughts blogroll  startups startup org chart management hierarchy flat structure CTO company CEO career development career I see this a lot nowadays — and I’m sure it’s not just me who notices it: every other job advert you see out there, or every other company seems to pride themselves nowadays with “practicing a flat structure”. Apparently, this is supposed to improve efficiency and motivation, according to their own bragging.

I’m talking mostly about startups here, by the way, though I bet you if you set off to research this in-depth, you will find a few larger organizations which do the same.

It normally goes like this: there are the founders (2 or more) who will assign themselves some titles (CEO, CTO, CCO and the likes). Then everyone else in the team is on the same par. This, we are being told, motivates the employees to work harder: because there are no titles “for grabs”, apparently, the employees will focus on projects more. Also, apparently, doing so encourages collaboration: because there is no immediate boss to make decisions, all decisions need to be made in consensus, thus forcing pretty much everyone to talk to everyone.

Read the rest of Flat Structure

Twitter Does Wine? :)

It appears so … together with a hashtag and everything! icon smile Twitter Does Wine? :) photo    photos news fun time blogroll  wine twitter schwag party hashtag

20140830 194254 300x225 Twitter Does Wine? :) photo    photos news fun time blogroll  wine twitter schwag party hashtag

Of Engineers and Creating Things

iStock 000025150953XSmall computer tables apps mobiles 150x150 Of Engineers and Creating Things photo    technology random thoughts blogroll  TED talks TED software engineering software engineer software silicon valley science recruiting recruiters nerd hamid ghanadan geek engineering creativity creative I had a chat recently with someone about engineers, and it is because of that chat I feel I need to write this, because the person I was talking to made some interesting points about engineers (mainly in Silicon Valley, due to their geographical position at the moment, but this I’m sure it’s often the case allover the world). First of all, I ought to mention that the person I spoke with about this is highly intelligent and educated, and spent most of their career surrounded by engineers; as such, the opinions expressed are not based on hear-say but rather on things they encountered themselves while dealing with engineers.

Even more, I agree with some of the points we discussed about — and sadly, I see the industry promoting some of them, in my opinion, to the detriment of (software) engineering. As such in an (ahem!) uncustomary fashion for myself, I set off to moan blog about it icon smile Of Engineers and Creating Things photo    technology random thoughts blogroll  TED talks TED software engineering software engineer software silicon valley science recruiting recruiters nerd hamid ghanadan geek engineering creativity creative

Read the rest of Of Engineers and Creating Things

Tracking Users Online — Part 3

iStock 000003369160XSmall 150x150 Tracking Users Online    Part 3 photo    technology news blogroll  web application web transparent pixel tomcat spring framework spring servlet api servlet pixel server online privacy JDK java8 Java internet http headers http gif pixel cookies content caching caching browser cache browser 3rd party cookies I’ve been lucky enough to get some time on my hands to put together a small release of the PixelServer project — and this is the post to accompany it.

If you’re familiar with my posts from this series (see the previous entry here btw), you know that the code is hosted on Github under https://github.com/liviutudor/PixelServer.

This is a minor release, so version number went up from 1.0.0 to 1.0.1 — as such the release tag is pixelserver-1.0.1 and you can fetch this release from Github using : https://github.com/liviutudor/PixelServer/releases/tag/pixelserver-1.0.1 .

One thing about this release — and others to come from now on: the project uses the Spring framework and for most things it uses version 4.0.5.RELEASE. As it turns out, starting with version 4.0, Spring framework relies on the version 3.0 of the Servlet API and since in this project I’m using 2.5, I’ve decided to use version 3.2.3 just for spring-test. This way, this project can still be deployed in Tomcat 6 or other containers not using Servlet API 3.0.

Read the rest of Tracking Users Online — Part 3

Mobile Advertising Takes Us Back in the ’90s

iStock 000014925836XSmall 150x150 Mobile Advertising Takes Us Back in the 90s photo    technology random thoughts blogroll  web user experience online advertising mobile internet mobile games mobile apps mobile advertising mobile internet in app purchase advertising platform advertising I have to get this off my chest as it’s been bugging me for a while and just been reminded this morning of this issue so had to pick up the keyboard and blog (moan?) about it.

I’m not the biggest mobile user — arguably! — however, like most people out there I find myself often filling in time by using my phone. Whether it is to read and reply to emails, make some quick notes in Evernote or simply play a game.

Part of this experience, I’ve learned, involves occasionally being presented with “product recommendations” (read “advertising”) — we get this all the time on the web, where adverts relevant to either our activities or the context of the page decorate the page. Sometimes we ignore them sometimes we decide to click on them — as long as they are not intrusive I think we all learned to live with them and use them when relevant.

Sadly, I see that not the same applies to mobile platform advertising! icon sad Mobile Advertising Takes Us Back in the 90s photo    technology random thoughts blogroll  web user experience online advertising mobile internet mobile games mobile apps mobile advertising mobile internet in app purchase advertising platform advertising

Read the rest of Mobile Advertising Takes Us Back in the ’90s

Tracking Users Online — Part 2

iStock 000003369160XSmall 150x150 Tracking Users Online    Part 2 photo    technology news  web application web transparent pixel spring mvc spring framework spring seo privacy pixel server online privacy online advertising mvc maven project maven malware linux jsp js jdk8 JDK javascript java 8 Java IP address internet browser internet http header http google github git gif pixel gif image gif browser apache tomcat amazon s3 amazon cloud 3rd party cookies First release of this project on Github is now out there. And as promised in my “pilot” post of this series, this post will walk you through what went into this release and why.

The project itself as you recall is available on Github in this repository: https://github.com/liviutudor/PixelServer.

The version for this release is pixelserver-1.0.0 –and the link to the release is this: https://github.com/liviutudor/PixelServer/releases/tag/pixelserver-1.0.0 . Please note that I currently “deploy” this artifact into a private Amazon S3-based repo — once I figure out how to make that public I will include the link to the binary downloads too. However, for now, simply run mvn package into the project folder and you will get the war file.

Read the rest of Tracking Users Online — Part 2

Cherry Danish :)

Apparently, according to Urban Dictionary, this is not what it says on the tin icon smile Cherry Danish :) photo    random thoughts photos fun time blogroll  urban dictionary pastry food porn cherry danish

Dead cheap though icon wink Cherry Danish :) photo    random thoughts photos fun time blogroll  urban dictionary pastry food porn cherry danish

20140920 164737 300x225 Cherry Danish :) photo    random thoughts photos fun time blogroll  urban dictionary pastry food porn cherry danish

Vista Point — Hawai’i — September/2014

Read the rest of Vista Point — Hawai’i — September/2014

Sandy Beach — Hawai’i