Profile

Cover photo
Anouar Sarout
Lives in Toronto
7,739 followers|3,934,054 views
AboutPostsVideos+1'sReviews

Stream

Anouar Sarout

Shared publicly  - 
1
Add a comment...

Anouar Sarout

Shared publicly  - 
1
Add a comment...

Anouar Sarout

Shared publicly  - 
 
SSH JUICE PRO مجانا حتى يوم 18 مارس
الرجاء نشر الخبر حتى يستفيد اكبر عدد ممكن من هذه التطبيقه المهمة والرائعة.. ثمنها الأصلي 7$.
https://sonelli.com/500k
 ·  Translate
1
Add a comment...
Have them in circles
7,739 people
 
 
The fundamental, philosophical change in UBUNTU™ 14.04 GUI programming

Though everything looks the same, more polished, quicker, more features... the inner core of UBUNTU™ fundamentally has changed. In philosphy its called paradigm shift . The result is, that everybody may now easily do his own programs as demo'd at the end of this abstract.

In former times, layouts were box oriented: Boxes in boxes in boxes. You might know this from MS Word™ editing. Placing a graphics in the text required an 'anchoring' (a fixed reference) - either in the text, so that graphics advances to follow in pages, when text was added before, or anchored on a fixed page, with text flowing around. Same within HTML. Body, text, table, table in table, graphics in table - everything follows the 'stacked boxes principle'. This philosophy you find in all kind of layouts and protocols. Old DVI (TeX output), Postscript™, PDF™, docx, xslx, pptx, XML, HTML, CSS3, SGML, XAML, JSON, BSON, YAML ... hierarchical, named trees, whereever you look. All built upon the old Lisp idea of "S-Expression" (named) trees.

Now, every functional element, that is visible on your desktop, has become an "independent object" with 'behaviour'. You might define it as an independent object 'button' and an independent object 'text' and you just tell the object 'text' to follow object 'button' in x and y coordinates. And suddenly you can move the button with your mouse and the text inside to button follows your mouse too. They now just appear as "one object".

In former times, the button could only be defined together with text. Now, the 'text' object is free to follow the 'button' rectangle. You even might give your 'text' object a delay in time to follow the 'button' object, what might look very funny.

In programming, things have fundamentally changed too. Everything now (window, scrollbar, buttons, texts, borders...) are 'free' GObject s (how they are called in GNOME GUI) or QObject s (Qt, KDE GUI).

Like a shopping list you may now simply write down, what you want to see on your screen and what objects you want to be coupled or decoupled.

For not breaking compatibility with good old code, what is #1 priority, e.g. in GNOME, some GObjects now come 'coupled' as default behaviour in the same environment/namespace/scope/behavioural group .

So, you still might still define a window with scrollbars and icons, buttons, text, graphics in the 'old fashioned' way, so that everything works as expected, like moving, rescaling... but - now you might decouple them to build more sophisticated, highly dynamic, fancy applications: So you mighht e.g. decouple and redefine your [OK] button to rotate all the time. Or blink, when you come near with your mouse pointer. Whatever is thinkable, now can be easily done!

Of course, all DOM objects within your webbrowser have got bindings to couple/decouple/change behaviour from inside via JavaScript: http://www.mrdoob.com/projects/chromeexperiments/google-gravity/
or from outside via DOM-GObject bindings. Look out for "GObject DOM" bindings or "QObject DOM" or "hidden DOM" bindings.

Here you can see, how DOM objects in your browser now become manipulated in 'real time', following the same new, mental model in your new UBUNTU™ 14.04 graphical user interface: http://nbubna.github.io/HTML/#Demo

Now to our example. Keep the new mental model always in mind, when watching, how a complete webbrowser comes into life on just one single page with Python. See how simple now this declarative way of programming is - like writing a wishlist for christmas in a rather 'natural way' or 'human language'

Create a basic webbrowser with Python GTK: http://youtu.be/JEW50aEVi4k

Same in Vala: https://bug463438.bugzilla-attachments.gnome.org/attachment.cgi?id=93084

You can see, that everybody can easily learn to write its own apps for UBUNTU™! With either Python, JavaScript, C++, C, PERL, Ruby, Basic, Lisp, Vala (a C# clone) ... You may choose between two main sophisticated and rock stable frameworks: Qt and GNOME/Clutter: http://youtu.be/Ay52qr8BPbI

Here you can see, how easy it is even for beginners in C programming language to write highly animated GUIs in the "declarative way" : http://www.tuxradar.com/content/clutter-beginners-tutorial

And now for programmers, who come from C# or JAVA, an example for an addicting game, written in Vala with GNOME/Clutter, just a few pages long: Swell-foop: http://youtu.be/V6M6VNoCwkI

Source: https://github.com/GNOME/swell-foop/blob/master/src/game-view.vala

Very worth mentioning is QtQuick alias QML. Being totally declarative its never been easier to write platform independent code. Android™, iOS™, Windows™ 7, Mac OS X™, UBUNTU™ ... See e.g. http://marble.kde.org/dev-intro.php

Have fun!
1
Add a comment...
Anouar Sarout's +1's are the things they like, agree with, or want to recommend.
Google Camera
market.android.com

Google Camera snaps quick and easy photos and videos, and has creative picture modes like Photo Sphere, Lens Blur and Panorama.Features • Ph

Win a $2000 PC upgrade though Canada Computers
www.canadacomputers.com

Canadacomputers.com offers the best prices on Computers, Computer Parts, Laptops, Hard Drives, PC Hardware & Accessories with fast shipping

Mailbox
market.android.com

The fast, fun mobile inbox that puts email in its place.Note: Currently for Gmail and iCloud accounts. Other email platforms coming soon. iO

Android Studio for Ubuntu
paolorotolo.github.io

Android Studio by Google packaged for Ubuntu.

Mjma3 | المجمع‎
plus.google.com

المجمع: يجمعك بالعلم والتقنية

Samsung Galaxy Note 3 Giveaway
www.newthinktank.com

I will be giving away 6 Samsung Galaxy Note 3s with 6 Samsung Galaxy Gear watches

صمم تطبيقات الاندرويد من داخل جهاز الاندرويد
xq55.ws

الكاتب : الحسن علي بسم الله الرحمن الرحيم ما الموضوع ؟ الموضوع موجه للمطورين, احيانا تكون قد را...

OmniROM
plus.google.com

Free to Use, Free to Modify, Free to Share.

Islami World Official
plus.google.com

IslamiWorld.com has everything that realated to islam

HTML5 Support in Android and IOS?
bzcareermongodb.blogspot.com

Introduction; Why Do We Care? Android KitKat (4.4) - Latest version of android; Fennec (Firefox for android); Android NDK; Conclusion. Intro

ROM Toolbox Pro
market.android.com

ROM Toolbox is THE MUST HAVE APP for every root user.ROM Toolbox combines all the great root apps into one monster app with a beautiful and

SwiftKey Keyboard
market.android.com

Celebrating the winter holidays with Google Play!SWIFTKEY - THE MIND-READING KEYBOARD No.1 best-selling app in 58 Google Play countries, ove

Hacker's Keyboard
market.android.com

Are you missing the key layout you're used to from your computer? This keyboard has separate number keys, punctuation in the usual places, a

الإمام المحدث الألباني
market.android.com

نضع بين يديك في هذا التطبيق ما تيسَّر من الكتب والتسجيلات والمقالات للعلامة المحدث والإمام المجدد محمد ناصر الدين الألباني. يمكنك أيضا البحث

Droid Life
plus.google.com

No one does Android news like we do.

طريقة جديدة للدخول إلى الماركت الأمريكي (بدون روت)
xq55.ws

الكاتب : لمسات المبدعين بسم الله الرحمن الرحيم يعاني البعض من مشكلة الدخول الى الماركت الامريكي ...

Contest: Win a Nexus Wireless Charger From Droid Life! – Droid Life
www.droid-life.com

Accessories · Apps · Games · Extras · Appearances · Contests · Deals · Downloads · News · Breaking · Exclusive · Humor · Interviews · Live ·

doesnt have any taste! bad tomato sauce! she forgot to put mashrums and she put the dipping sauce cup on top of the pizza!!
Public - 9 months ago
reviewed 9 months ago
Amazing college!
Public - 10 months ago
reviewed 10 months ago
Mashallah so nice /big Masjid, Sheikh Abdullah is always there with his amazing recitation :)
Public - a year ago
reviewed a year ago
Food: Very goodDecor: Very goodService: Very good
Public - a year ago
reviewed a year ago
6 reviews
Map
Map
Map
Quality: Very goodAppeal: GoodService: Good
Public - a year ago
reviewed a year ago
Mashallah, recommended for every one
Food: Very goodDecor: ExcellentService: Excellent
Public - a year ago
reviewed a year ago