This document summarizes discussions from a Qt conference about various topics related to using Qt in embedded applications. It begins with introductions of the presenters and an overview of the structure. It then covers individual topics like kinetic scrolling implementations, building a MeeGo UI without libmeegotouch, sliding widgets, JSON parsing with QJSON, using D-BUS, responsiveness techniques, porting a Symbian app to Linux, and concludes with a discussion about vacations.
Servo is a new prototype web browser layout engine written in Rust that was launched by Mozilla in 2012 with a new architecture to achieve high parallelism on components like layout and painting. The current supported CSS properties allow Servo to be mostly operational on static sites like Wikipedia and GitHub, with a surprisingly small code footprint.
The objective of this talk is to describe its architecture in high level, source code organization and how to get started hacking and contributing to Servo. The implementation of a visual CSS feature will be explained as also considerations about Servo future roadmap.
Servo is a new prototype web browser layout engine written in Rust that was launched by Mozilla in 2012 with a new architecture to achieve high parallelism on components like layout and painting. The current supported CSS properties allow Servo to be mostly operational on static sites like Wikipedia and GitHub, with a surprisingly small code footprint.
The objective of this talk is to describe its architecture in high level, source code organization and how to get started hacking and contributing to Servo. The implementation of a visual CSS feature will be explained as also considerations about Servo future roadmap.
Smalltalk in the pocket - Building applications for the iPhoneEsteban Lorenzano
Bring Smalltalk into new technologies is always a hard but exciting job. In this talk we take another step from those already made, and we walk one of the possible approaches to build iPhone applications using Pharo.
Lean engineering for lean/balanced teams: lessons learned (and still learning...Balanced Team
Bill Scott, PayPal
How do you take a gigantic organization and begin to transform the products? One key is to change the way teams work together to build experiences by following a Lean UX methodology. However, essential to this is to have engineering fully onboard as an integrated partner in the process. In this talk, Bill Scott will share 6 principles gleaned from the last two years to transforming engineering and the technology stack to support this working model.
Puppet@Citygrid - Julien Rottenberg - PuppetCamp LA '12Puppet
Julien Rottenberg, CityGrid. Presentation of the tools and workflow for our puppet setup. How puppet helps us managing 500+ servers in a hybrid environment O&O Datacenter and EC2, hands free. Watch the video at http://youtu.be/FPwga7HwomM
PuppetCamp LA, May '12.
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in ActionBill Scott
Presented at Lean Day West - Portland, OR. Sept. 17, 2013
How do you take a gigantic organization like PayPal and begin to transform the experiences? Engineering is often the key blocker in being able to achieve a high rate of innovation. In this talk, Bill Scott will give specific examples on implemented Lean UX in a 13,000 person company, re-factored the technology stack and changed the way engineers work with design & product partners. In addition, Bill will provide additional examples that go back to his early days writing one of the first Macintosh games to his more recent work at Netflix and the power of treating the user interface layer as the experimentation layer.
This slide is translated version. Originally it was written in Korean. (http://www.slideshare.net/saltynut/how-do-we-drive-tech-changes )
It describes how do we drive technical changes onto our organizations had used old-fashioned java combinations(Java 1.6+Spring 3.x+MyBatis) and monolithic architecture.
Key point is what we need to do to drive changes, and I'll discuss what we did during Phase1 and what we are doing at Phase 2 for architecture, frontend, backend, methodologies/process.
Phase1
- Architecture : Frontend / Backend Separation
- Frontend : Angular.js, Grunt, Bower
- Backend : Java 1.7/Spring4, ORM
- Methodology/Process : Scrum, Git
Phase2
- Architecture : Micro-Service Architecture(MSA)
- Frontend : Content Router, E2E Test
- Backend : Polyglot, Multi-Framework
- Methodology/Process : Scrum+JIRA, Git Branch Policy, Pair Programming, Code Workshop
A Multiplatform, Multi-Tenant Challenge - Droidcon Lisbon 2023Pedro Vicente
What if you had to build a multiplatform (Android & iOS) and multi-tenant app with the objective of sharing the biggest amout of code possible while having all apps being UI/UX independent?
We want to take you through the discovery trip we made while building this. From architecture to ins and outs of KMM via Gradle magic that enabled us to have a Android, iOS and Desktop app.
Also sharing our rational over each of the options we took: Why not React Native? Or Xamarin? Should we use Compose Multiplatform?
Given at Agile Camp 2013, San Jose, CA. Sept. 21
How do you take a gigantic organization like PayPal that was entrenched in a culture of a “”long shelf life”” and transform it to a culture of rapid experimentation? Bill will give 3 principles applied to PayPal engineering to make it a full partner with Lean UX. This will be illustrated by showing how they re-factored the tech stack and changed the way engineers work in Lean streams with design & product partners and how it plays with agile.
As a backdrop Bill will discuss several historical factors in the field of software engineering that are antithetical to the Lean Startup mindset but still find their way into most large enterprises. By understanding this historical context and applying lean principles he will demonstrate how a lean transformation can take place in any enterprise.
This presentation was given at the jQuery conference 2010 in Mountain View and featured the first public premiere of a sneak peek video of our upcoming JavaScript game engine.
The video preview can be found here: http://youtu.be/Ol3qQ4CEUTo
Enjoy and follow me at @pbakaus on Twitter!
"Leveraging the Event Loop for Blazing-Fast Applications!", Michael Di PriscoFwdays
Can the Microtask Queue help you improve your performances by 100x? It turns out it can, but how? JavaScript is single-threaded, yet it provides a really powerful Event Loop to allow non-blocking operations, so let's try to tame this beast together and get the most out of it! As I like to say: The Event Loop is the only infinite loop you'll love.
Scratching the itch, making Scratch for the Raspberry PieESUG
Title: Scratching the itch, making Scratch for the Raspberry Pie
Speaker: Tim Rowledge
Fri, August 22, 12:00pm – 12:30pm
Abstract: Scratch was originally written in a Squeak 2.8 era image. Much has changed since then and to make the Raspberry Pi run Scratch as well as possible we have ported the code forward to a 4.5 image so it can run on a StackVM; and soon a Cog VM. A substantial amount of Smalltalk code has had to be rewritten to do this and yet we have to maintain complete compatibility with the original system to avoid overloading the teachers that use it in their classes. A new branch of Cog for the ARM cpu is being written as well.
Bio: Tim Rowledge has almost 30 years of Smalltalk experience, and almost as much with ARM. Somehow the two have always gone together.
Smalltalk in the pocket - Building applications for the iPhoneEsteban Lorenzano
Bring Smalltalk into new technologies is always a hard but exciting job. In this talk we take another step from those already made, and we walk one of the possible approaches to build iPhone applications using Pharo.
Lean engineering for lean/balanced teams: lessons learned (and still learning...Balanced Team
Bill Scott, PayPal
How do you take a gigantic organization and begin to transform the products? One key is to change the way teams work together to build experiences by following a Lean UX methodology. However, essential to this is to have engineering fully onboard as an integrated partner in the process. In this talk, Bill Scott will share 6 principles gleaned from the last two years to transforming engineering and the technology stack to support this working model.
Puppet@Citygrid - Julien Rottenberg - PuppetCamp LA '12Puppet
Julien Rottenberg, CityGrid. Presentation of the tools and workflow for our puppet setup. How puppet helps us managing 500+ servers in a hybrid environment O&O Datacenter and EC2, hands free. Watch the video at http://youtu.be/FPwga7HwomM
PuppetCamp LA, May '12.
6 Principles for Enabling Build/Measure/Learn: Lean Engineering in ActionBill Scott
Presented at Lean Day West - Portland, OR. Sept. 17, 2013
How do you take a gigantic organization like PayPal and begin to transform the experiences? Engineering is often the key blocker in being able to achieve a high rate of innovation. In this talk, Bill Scott will give specific examples on implemented Lean UX in a 13,000 person company, re-factored the technology stack and changed the way engineers work with design & product partners. In addition, Bill will provide additional examples that go back to his early days writing one of the first Macintosh games to his more recent work at Netflix and the power of treating the user interface layer as the experimentation layer.
This slide is translated version. Originally it was written in Korean. (http://www.slideshare.net/saltynut/how-do-we-drive-tech-changes )
It describes how do we drive technical changes onto our organizations had used old-fashioned java combinations(Java 1.6+Spring 3.x+MyBatis) and monolithic architecture.
Key point is what we need to do to drive changes, and I'll discuss what we did during Phase1 and what we are doing at Phase 2 for architecture, frontend, backend, methodologies/process.
Phase1
- Architecture : Frontend / Backend Separation
- Frontend : Angular.js, Grunt, Bower
- Backend : Java 1.7/Spring4, ORM
- Methodology/Process : Scrum, Git
Phase2
- Architecture : Micro-Service Architecture(MSA)
- Frontend : Content Router, E2E Test
- Backend : Polyglot, Multi-Framework
- Methodology/Process : Scrum+JIRA, Git Branch Policy, Pair Programming, Code Workshop
A Multiplatform, Multi-Tenant Challenge - Droidcon Lisbon 2023Pedro Vicente
What if you had to build a multiplatform (Android & iOS) and multi-tenant app with the objective of sharing the biggest amout of code possible while having all apps being UI/UX independent?
We want to take you through the discovery trip we made while building this. From architecture to ins and outs of KMM via Gradle magic that enabled us to have a Android, iOS and Desktop app.
Also sharing our rational over each of the options we took: Why not React Native? Or Xamarin? Should we use Compose Multiplatform?
Given at Agile Camp 2013, San Jose, CA. Sept. 21
How do you take a gigantic organization like PayPal that was entrenched in a culture of a “”long shelf life”” and transform it to a culture of rapid experimentation? Bill will give 3 principles applied to PayPal engineering to make it a full partner with Lean UX. This will be illustrated by showing how they re-factored the tech stack and changed the way engineers work in Lean streams with design & product partners and how it plays with agile.
As a backdrop Bill will discuss several historical factors in the field of software engineering that are antithetical to the Lean Startup mindset but still find their way into most large enterprises. By understanding this historical context and applying lean principles he will demonstrate how a lean transformation can take place in any enterprise.
This presentation was given at the jQuery conference 2010 in Mountain View and featured the first public premiere of a sneak peek video of our upcoming JavaScript game engine.
The video preview can be found here: http://youtu.be/Ol3qQ4CEUTo
Enjoy and follow me at @pbakaus on Twitter!
"Leveraging the Event Loop for Blazing-Fast Applications!", Michael Di PriscoFwdays
Can the Microtask Queue help you improve your performances by 100x? It turns out it can, but how? JavaScript is single-threaded, yet it provides a really powerful Event Loop to allow non-blocking operations, so let's try to tame this beast together and get the most out of it! As I like to say: The Event Loop is the only infinite loop you'll love.
Scratching the itch, making Scratch for the Raspberry PieESUG
Title: Scratching the itch, making Scratch for the Raspberry Pie
Speaker: Tim Rowledge
Fri, August 22, 12:00pm – 12:30pm
Abstract: Scratch was originally written in a Squeak 2.8 era image. Much has changed since then and to make the Raspberry Pi run Scratch as well as possible we have ported the code forward to a 4.5 image so it can run on a StackVM; and soon a Cog VM. A substantial amount of Smalltalk code has had to be rewritten to do this and yet we have to maintain complete compatibility with the original system to avoid overloading the teachers that use it in their classes. A new branch of Cog for the ARM cpu is being written as well.
Bio: Tim Rowledge has almost 30 years of Smalltalk experience, and almost as much with ARM. Somehow the two have always gone together.
14. How kinetic scrolling works?
Displacement is defined in factor of:
attenuation given by Easing curve
time elapsed between the drag event
other factors (e.g. friction, etc)
optimizations: clipping, lazy loading, ring buffer, snapshots, etc
31. ’Minor’ details: 7 months ago
Forgot the Buttons...
Rescalable button backgrounds
Borders on background
Centered Icons
Layouts/sizeHints sometimes are tricky
32. ’Minor’ details: 7 months ago
Forgot the Buttons...
Rescalable button backgrounds
Borders on background
Centered Icons
Layouts/sizeHints sometimes are tricky
33. ’Minor’ details: 7 months ago
Forgot the Buttons...
Rescalable button backgrounds
Borders on background
Centered Icons
Layouts/sizeHints sometimes are tricky
34. ’Minor’ details: 7 months ago
Forgot the Buttons...
Rescalable button backgrounds
Borders on background
Centered Icons
Layouts/sizeHints sometimes are tricky
35. ’Minor’ details: 7 months ago
Forgot the Buttons...
Rescalable button backgrounds
Borders on background
Centered Icons
Layouts/sizeHints sometimes are tricky
50. ’Minor’ details: 7 months ago
QGraphicsLayout is not a QObject
Multiple heritance is nasty!
Parenting issues of widgets
No documentation, of course...
51. ’Minor’ details: 7 months ago
QGraphicsLayout is not a QObject
Multiple heritance is nasty!
Parenting issues of widgets
No documentation, of course...
52. ’Minor’ details: 7 months ago
QGraphicsLayout is not a QObject
Multiple heritance is nasty!
Parenting issues of widgets
No documentation, of course...
53. ’Minor’ details: 7 months ago
QGraphicsLayout is not a QObject
Multiple heritance is nasty!
Parenting issues of widgets
No documentation, of course...