-
9:00am
-
Keynote: Trends in Cloud and Mobile computing9:00am - 9:20am Nov 30Only a few years ago, infrastructure optimization was the Cloud's primary raison d'être. Cloud now plays a fundamental role to satisfy the expectation for innovation at unprecedented speed. Customer expectations today requires very short development cycles, with deep insights on application usage. I will provide a quick view of how we expect cloud and mobile to evolve, especially in the context of Platform-as-a-Service and the advent of the API economy.
-
Material design demystified.9:20am - 10:00am Nov 30We have all heard about material design, but what exactly is it? and most important how do we build it? In this talk I will go over the principles behind material design accompanied with code snippets and tips from the trenches on how to implement it in your apps.
Language: Hebrew
Level: Intermediate -
Introduction to Scala9:20am - 10:00am Nov 30Scala is a type safe programming language that runs on-top of the JVM. Scala was tagged as the ‘long time replacement for Java”. Scala is both object-oriented and functional thus allowing developers the easily express themselves using powerful tools without losing performance. In this session i'll introduce Scala, its benefits and why it can be used to create better code-base.
Language: Hebrew
Level: Intermediate
-
-
10:00am
-
Developing End-to-End Solutions with Bluemix - IBM Platform as a Service Cloud Offering10:00am - 10:40am Nov 30
-
Swagger - make your REST APIs accessible10:00am - 10:40am Nov 30RESTful APIs proved themselves as an essential ingredient of any modern architecture. It ancestor, SOAP based APIs, among others, defined the way to document the APIs in a standard manner. Is there a similar offer in the REST world? In this talk I will present the solution that is suggested by swagger I will discuss the technology and a possible methodology that can be applied.
Language: Hebrew
Level: Beginner
-
-
10:30am
-
Coffee Break10:40am - 11:00am Nov 30
-
-
11:00am
-
How to actually use promises11:00am - 11:40am Nov 30JavaScript promises are starting to show up everywhere. Yet they still appear a bit magic or strange to some people. Or not that easy to work with. Or incompatible with other code bases. And all the examples showing how to use them are way too far from the real world scenarios! They all forgot to tell you one thing: that promises can be really, really simple. They will make your code look like a completely synchronous program. If used right, you will not use a single callback or then-function again. You will not even see the promises. This talk will show you how to actually use promises.
Language: English
Level: Intermediate -
core.async, Clojure take on async programming11:00am - 11:40am Nov 30Async programming made prevalent in the couple of last years mainly due to higher performance characteristics and the common use of Javascript where callbacks are the only way of having background processing. Clojure that has been long been renounced for its concurrency primitives has now an exciting new channel based async programming library. It combines higher performance and scalability with the terseness and composition that Clojure offers. core.async fully supports Clojurescript (Javascript version of Clojure) alleviating the need to use callbacks thus cleaning up the code and solv
Language: Hebrew
Level: Intermediate -
Mobile Security Attacks: A Glimpse from the Trenches11:00am - 11:40am Nov 30Hackers today apply covert and persistent techniques to attack mobile devices. Attend this presentation to learn about the latest threats on mobile devices from the team who uncovered iOS malicious profiles and HTTP Request Hijacking. We will describe and demonstrate emerging mobile security threats: from physical, through network and up to application level. Hold on to your seats as we expose statistics and insights about real-world attacks on mobile-devices around the world.
Language: Hebrew
Level: Intermediate
-
-
11:30am
-
Yes Yes Yes, It's AngularJS!11:40am - 12:20pm Nov 30
-
JVM Memory Model11:40am - 12:20pm Nov 30The JVM memory model describes how threads in the Java eco-system interact through memory. While the memory model impact on developing for the JVM may not be obvious, it is the cause for certain number of "anomalies" that are, well, by design. In this presentation we will explore the aspects of the memory model - what it defines, including things like reordering of instructions, volatile members, monitors, atomics and JIT. Each anomaly will be explored via running code samples.
Language: Hebrew
Level: Beginner -
If you build it, it is no dream11:40am - 12:20pm Nov 30The Red Alert mobile app sends a push notification and a distinct alarm listing the location and time of the projected missile strike. This is the story about an app which solved a national security concern and saved lives. It’s about the challenges I experienced while creating an app during time of war in 48 hours, with no sleep, and a box of turkish coffee. I will address the the importance of recognizing being “at the right place at the right time” which along with quick thinking and optimized execution can get you over a million downloads and international recognition.
Language: English
Level: Beginner
-
-
12:00pm
-
Using Communication and Messaging APIs in The HTML5 World12:20pm - 1:00pm Nov 30HTML5 defines new standards for communication and messaging between the browser and the server. In this session we will deep dive into HTML5 messaging APIs such as postMessage and also into communication APIs such as CORS, server-side events and web sockets. In the session, we will also discuss where we can implement these APIs while building web applications.
Language: English
Level: Intermediate -
Pushing Java EE outside of the Enterprise : Home Automation & IoT12:20pm - 1:00pm Nov 30Java EE is a rich platform widely used in the Enterprise. This session will look at the relevance of Java EE outside of this traditional domain. We will see why Java EE is relevant for connected homes and more generally in the IoT space. We will look at the various extension points and technologies available in Java EE to integrate external systems, from the residential solution to the industrial grade protocol. HA is also by nature highly event driven so we will look at some facilities provided by the platform to easily cope with that. This session will be illustrated with live remote demos.
Language: English
Level: Intermediate -
From a Game to a Game Changer: Architecture Evolution in Practice12:20pm - 1:00pm Nov 30Everyone is talking about architecture and design patterns for software, but an often-overlooked challenge is how to migrate one architecture to another as your product evolves, while understanding the migration impact on existing users, customers, providers, and yourselves, whether as individuals or as part of a team. In this discussion, through personal experience and case studies, we’ll explore major methods to deal with architecture evolution: how to plan for them and how to make them happen.
Language: Hebrew
Level: Intermediate
-
-
1:00pm
-
Lunch1:00pm - 2:00pm Nov 30
-
-
2:00pm
-
Objective Superman2:00pm - 2:40pm Nov 30"The Objective-C runtime lets you uncover many private implementation details of system classes. You must not use any of this information in your final product." – Technical Note TN2239: iOS Debugging Magic. But how can we avoid this temptation? While being one of Apple's few open source projects, it always carried a seal of NSFW. It's not just a set of party tricks, but rather several generations of Apple's best minds working to produce a flexible environment, scaling from Watch to iMacs. We'll walk through examples and techniques allowing us to unleash the full power of the runtime.
Language: English
Level: Intermediate -
C10K and beyond2:00pm - 2:40pm Nov 30The C10K problem (concurrently handling ten thousand connections) bothers any infrastructure that is aimed to scale, moving one notch up the scale ladder to a high performance client/server is something that any company is bound to do in our era. In this talk I will inspect the concurrency models of that problem from Java perspective, starting with the old fashioned model of thread per connection, into the most widely used concurrency model of Event-driven/Actors, and the latest groundbreaking model of pseudo-synchronous with lightweight threads called Fibers/coroutines.
Language: Hebrew
Level: Intermediate
-
-
2:30pm
-
SpriteKit Intro: How to make a Flappy Bird type of game in less than a day.2:40pm - 3:20pm Nov 30In this session, we will get to know the basic functionalities of SpriteKit by observing a simple test case in the form of a Flappy Bird type of game. We will see how easy it is to code such a game from start to finish using SpriteKit, in even less than a day! The session will revolve around the following topics: - Create a new SpriteKit application template. - Decide on the physics your game will follow. - Setup the main character. - Start main character movement. - Adding obstacles. - Adding collision detection logic. - Finishing touches: adding sounds, score and a main screen.
Language: Hebrew
Level: Beginner -
Everything You Wanted to Know About Writing Async, Concurrent HTTP Apps in Java [CON3712]2:40pm - 3:20pm Nov 30Facing tens of millions of clients continuously downloading binaries from its repositories, JFrog decided to offer an OSS client that natively supports these downloads. This session shares the main challenges of developing a highly concurrent, resumable, async download library on top of an Apache HTTP client. It also covers other libraries JFrog tested and why it decided to reinvent the wheel. Consider yourself forewarned: lots of HTTP internals, NIO, and concurrency ahead!
Language: Hebrew
Level: Advanced
-
-
3:00pm
-
Coffee Break3:20pm - 3:40pm Nov 30
-
-
3:30pm
-
Get Off My Thread! - keep your UI super-responsive3:40pm - 4:20pm Nov 30The importance of keeping the main thread free in Android UI. Classic main thread busy pitfalls, simple workarounds (AsyncTask, IntentService), powerhouse workarounds (Guava Listenable Futures), building clean asynchronous internal APIs, and simple synchronization strategies.
Language: Hebrew
Level: Intermediate -
Nashorn: JavaScript That Doesn't Suck3:40pm - 4:20pm Nov 30One of Java 8's much-touted features, Nashorn is a fully-fledged JavaScript engine written purely in Java and intended to replace the aging Rhino engine. Completely rebuilt from scratch and leveraging several significant JVM advancements, Nashorn provides a robust and highly performant platform to host and embed JavaScript in your applications. In this talk I'll focus on the whys and the hows of Nashorn, provide a hopefully complete overview of the new engine and its features.
Language: Hebrew
Level: Intermediate
-
-
4:00pm
-
Automated testing for client-side4:20pm - 5:00pm Nov 30You always plan on writing tests for those 30K lines of Javascript, but you never get to it, right? Client-side developers are not used to writing tests, and are somewhat afraid of it. A GUI element is indeed a very hard thing to test. In this talk, I'll focus on the tools and best practices for writing client-side tests: - Jasmine framework - How to do unit / systems testing right with AngularJS - How to mock the server API - Some other cool tools like saucelabs - A lot of tips and best practices for unit testing, and system testing
Language: Hebrew
Level: Intermediate -
Lessons from the parallel universe4:20pm - 5:00pm Nov 30From multi core processors to distributed computing, concurrent programming models are becoming critical in the software world today. GPars, the concurrency library for the groovy language, offers developers intuitive and safe ways to handle Java or Groovy tasks concurrently. We will discuss the problems with the existing threading paradigm and demonstrate several use cases where GPars models may come in handy.
Language: Hebrew
Level: Intermediate
-