Transfer Learning for Image Classification – Part1

One of the most useful and emerging applications in the ML domain nowadays is using the transfer learning technique; it provides high portability between different frameworks and platforms. Once you’ve trained a neural network, what you get is a set of trained hyperparameters’ values. For example, LeNet-5 has 60k parameter values, AlexNet has 60 million, and VGG- 16 has about 138 million […]

Continue Reading

An Introduction to Scala Functional Programming – Part 2

First Class Function and Higher Order Function One of the key factors in Scala that beautifully blends functional paradigm into object-oriented paradigm is that functions are objects. In functional programming, functions are first-class citizens. A first-class function is a function that can be – Assigned to variables, – Passed as an argument to the other […]

Continue Reading

An Introduction to Scala Functional Programming – Part 1

Expression-Oriented Programming In expression-oriented programming every statement is an expression. To understand EOP, you have to understand the difference between a statement and an expression. A statement executes code, but does not return any value, for example: customer.computeDiscount() An expression returns value. Expressions are blocks of code that evaluate to a value as seen here: […]

Continue Reading

An Introduction to Reactive Programming with RxJava – Part 2

Introducing RxJava To write reactive programs, we need a library or a specific programming language, because building something like that ourselves is quite a difficult task. Java is not really a reactive programming language (it provides some tools like the java.util.Observable class, but they are quite limited). It is a statically typed, object-oriented language, and […]

Continue Reading

An Introduction to Reactive Programming with RxJava – Part 1

Nowadays, the term reactive programming is trending. Libraries and frameworks in various programming languages are emerging. Blog posts, articles and presentations about reactive programming are being created. Big companies, such as Facebook, SoundCloud, Microsoft, and Netflix, are supporting and using this concept. So we, as programmers, are starting to wonder about it. Why are people […]

Continue Reading

What Is Apache Spark

Apache Spark is a cluster computing platform designed to be fast and general-purpose. On the speed side, Spark extends the popular MapReduce model to efficiently support more types of computations, including interactive queries and stream processing. Speed is important in processing large datasets, as it means the difference between exploring data interactively and waiting minutes […]

Continue Reading

BDD with Cucumber and Ruby: fast intro for impatient developers

Cucumber is a very fun and cool tool for writing automated acceptance tests to support software development in the behavior-driven development (BDD) style. Getting ready In the BDD style, when a developer starts writing a test case, unlike writing a test method in TDD, he/she writes a “feature” belonging to a “story” which describes the […]

Continue Reading

Why Scala – Part 1

Scala is a general-purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional programming languages, enabling programmers to be more productive. Martin Odersky (the creator of Scala) and his team started development on Scala in 2001 in the programming methods laboratory […]

Continue Reading