Tour of scala, first steps

Motivation

I attended Geecon 2018, this year’s IT conference. There are 2 main points I took into consideration. First, this is JVM, and as I can see there is a lot of that stuff running all around the world, so even if whole world would be magically converted to Python and stuff, it will take ages. And someone has to keep it running. Second, this is the language of Spark and Kafka, two of the projects of my interest in area of stream processing in Java world.

Czytaj dalej Tour of scala, first steps

Nieustające umieszczanie – CD z Travis

„continuous deployment” to nie tylko buzzword.  Dotyczy to każdego, kto tworzy jakiś kod, który da się umieścić (ang. deploy) na zewnątrz.  Jeśli chcę by mój kod klikał ktoś inny – niż ja zapamiętale wodząc przeglądarkę po localhoście – muszę zapewnić jego dostępność pod www.zewnętrznym-urlem.pl.  Aplikację można umieścić ręcznie, ale nie o tym tutaj.  Automatyzacja to twoja siostra, a Travis to twój brat.  O tym jak umieściłem Flask-apkę na Heroku przez Travisa poniżej.  Kod apki jest tutaj na Githubie. A reszta jest milczeniem.

Czytaj dalej Nieustające umieszczanie – CD z Travis

AWS Lambda part 4 – running from Android

The power coming from AWS Lambdas is clear when you think what and who can invoke it.  You can run it obviously from AWS Console.  But the real value of this solution is clear when you can use your exisiting microservice from the device or hitting some HTTP endpoint.  The last time me using Android is when there was no Intellij and emulators were heavier than my PC could endure.
Czytaj dalej AWS Lambda part 4 – running from Android

AWS Lambda part 3 – IO with Files using S3

Previously I wrote my first Lambda (part 1) and connected it to data store Dynamo DB (part 2).  Today I am going to use default file system for AWS system – S3.  Again using boto3 library is very handy.

Business case

To make it easy and treat DynamoDB as historical table only, I decided to make calculations based on the state written to file.  To calculate current state of the wallet I am subtracting operation amount from the last total.  And I will keep it in simple JSON on my bucket.

Reading from S3

Before I start to do the basic operations, let me mention that there are no folders on AWS file system, we have buckets here.  These are basic containers for S3 files.  Here is how we can easily read file from bucket using Pythonic Lambda.

Writing to S3

Writing is nothing simpler than using boto3.resource again. Play with it on your AWS landing page.

Permissions

Again we are to make all of our fun safe and clean.  So before running you will need to set permissions for user running lambda to use this file system.  Following policy AmazonS3FullAccess is a silver bullet to all s3 operations.

Summary

Of course it is only tip of the iceberg, when it comes to S3 file system.  It can accept any files, provides versioning and triggers, that can be leveraged to any processing I can imagine.  But what about saving simple JSON file?  Works.

AWS Lambda, part 2. Saving data in DynamoDB

The last time I was running bare Lambda function.  It was fun, but no persistence was touched.  Now if we are going to track real expenses we have to persist data somewhere.  One of the solutions made for that is to use DynamoDB table.

Czytaj dalej AWS Lambda, part 2. Saving data in DynamoDB

My First Lambda – playing with AWS, part 1

When reading through the whole internet lately I encountered AWS hype.  2015 I remember there was my first contact with this Amazon services but I skipped that somehow and forgot about my account.  Things changed when I learned that this portal allows you not only to host machines and real linux systems but Lambdas.  The code is here, check my Github.

Czytaj dalej My First Lambda – playing with AWS, part 1

Elasticsearch rozumie po polsku

Elasticsearch ma oficjalny polski plugin.  Stempel.  Udało mi się go testować i sprawdzać.  I choć polski analizator pozostawia trochę do życzenia to robi niezłą robotę.  Przypadek użycia?  Indeksujemy i wyszukujemy RSS feed z ofertami pracy ze znanego polskiego portalu.

Czytaj dalej Elasticsearch rozumie po polsku

Czytałeś bloga – napisz recenzję w 160 znakach

A więc od początku.  Wszystko zaczęło się od strony jvm-bloggers.com.  Dostrzegłem że tak na prawdę pisanie blogów to coś co możesz osiągnąć.  Ale czytanie też inspiruje!  Problem tylko taki że na internecie dzieje się bardzo dużo.  Ciężko to ogarnąć.  Dlatego wymyśliłem sobie mały zbiór opinii i recenzji, które mają pomóc podjąć mi i Tobie decyzję czy zapoznać się z danym materiałem.  Zainteresujmy się tym co na prawdę jest interesujące.  Zobacz tutaj na 160znakow.pl

Czytaj dalej Czytałeś bloga – napisz recenzję w 160 znakach

Flask can provide REST for RESTful Elasticsearch

API for ES – why

So what is the goal? I want to have small app, that will allow greedy HR workers to explore Projects I took part in. I believe, one’s experience is the most important feature of future (IT) worker; school was long time ago, courses are OK but who knows who helped to accomplish them?
Czytaj dalej Flask can provide REST for RESTful Elasticsearch