Big data - ‘Big Data’ is similar to ‘small data’, but bigger in size.
But having data bigger it requires different approaches:Techniques, tools and architecture.
Web development- React.js,angular js,Vue.js
Mobile application development-API in mobile applications (cURL API),Develop in mobile applications (react-native)
elementary OS
Concurrency
2. 1 | P a g e
Contents
Acknowledgment................................................................................................................................... 2
Introduction............................................................................................................................................ 2
Discussion................................................................................................................................................ 3
1. Web based development and technologies.....................................................................................3
What is JavaScript ?....................................................................................................................................................... 3
Most Popular Programming Languages ............................................................................................................... 3
Importance of JS based framework........................................................................................................................ 3
Popular JavaScript Frameworks.............................................................................................................................. 4
Popular UI Frameworks.............................................................................................................................................. 5
API and Databases......................................................................................................................................................... 7
2. Mobile application development and trends .................................................................................8
API in mobile applications (cURL API) ................................................................................................................. 8
Develop in mobile applications (react-native).................................................................................................. 8
4. Big data processing and solutions deployment.............................................................................9
What is Big data?............................................................................................................................................................ 9
4 V’s of Big Data.............................................................................................................................................................. 9
How to handle big data?.............................................................................................................................................. 9
Why we need fast processor? ................................................................................................................................... 9
Parallelism vs concurrency........................................................................................................................................ 9
Why do popular language fail?...............................................................................................................................10
What is the paradigm that supports parallelism?..........................................................................................10
Functional vs Imperative..........................................................................................................................................10
SCALA in big data.........................................................................................................................................................10
Big Data Storage ...........................................................................................................................................................11
5. Elementary OS ........................................................................................................................................ 12
6. Cryptocurrency ...................................................................................................................................... 12
7. Future Needs........................................................................................................................................... 12
Conclusion .............................................................................................................................................13
3. 2 | P a g e
Acknowledgment
My sincere gratitude towards Mr. Ashan Rathanayake and Ms.Poornima Jayathunge a lectures
of Computer Science Department at Uva Wellassa University of Sri Lanka for his great
contribution to organize this tremendous workshop to improve our web development
knowledge. At the same time, I would like to thank the other lectures of Computer Science
Department for their support.
Next, I would like to thanks for the support given by the Administration of Uva Wellassa
University of Sri Lanka to conduct this workshop.
Finally, I would like to offer my gratitude to all the participants in this workshop, if they were
not there, the workshop cannot be conducted. I am thankful to every other person who
helped to do this workshop successfully.
Introduction
On 28th September 2018 a workshop was conducted by Vizumatix(Pvt)Ltd from 8.30 a.m.
onwards at E3 lab under the instructions of Mr. Ashan Rathanayake a lecture of Computer
Science Department at Uva Wellassa University of Sri Lanka.
It provided us knowledge about web-based development and technologies, mobile
application development and it trends and big data processing and solutions deployment.
They provided us valuable knowledge about those areas. Following are the things that were
discussed in the workshop.
4. 3 | P a g e
Discussion
1. Web based development and technologies
What is JavaScript ?
An object-oriented computer programming language commonly used to create interactive effects
within web browsers.
Most Popular Programming Languages
Importance of JS based framework
The importance of JavaScript as a web technology can be determined from the fact that it
is currently used by 94.5% of all websites. As a client-side programming language,
JavaScript helps web developers to make web pages dynamic and interactive by
implementing custom client-side scripts. At the same time, the developers can also use
cross-platform runtime engines like Node.js to write server-side code in JavaScript. They
can even combine JavaScript, HTML5 and CSS3 to create web pages that look good across
browsers, platforms, and devices.
5. 4 | P a g e
Popular JavaScript Frameworks
1. React.js
React is a framework that was originally created, and is maintained, by Facebook. This provides
a huge weight on the scales when choosing it for a project. It gives React a sense of stability that
many new frameworks lack.
• Facebook maintains the project.
• The high volume of adoption and continued growth mean it will be easier to find competent
React developers as well as help and outside components.
• The adoption of JSX allows for the structuring of components that will then compile into JS
React, when running on the server, can make for more SEO friendly web pages than other JS
frameworks, as the only thing seen by the client at that point is the generated HTML page(s).
• React Native can provide a nearly seamless mobile experience to pair alongside your React
application for the web.
Create React App Guide - https://github.com/facebook/create-react-app
2. Angular.js
Angular is the powerhouse that sits next to React at the top of the charts for JavaScript
frameworks. Angular 2+ has had literally years of development behind it, and Angular.js was
representative of a lot of lessons that aided the development of Angular 2 and future versions.
6. 5 | P a g e
3. Vue.js
Vue is growing into maturity, being now several years old, but is still looked at as a new player in
the JavaScript framework scene. The growth of the Vue community is stellar.
Popular UI Frameworks
1. Bootstrap
This list would be woefully incomplete without the inclusion of the wildly popular front-end
framework, Bootstrap. Created by Twitter developers and initially released in 2011, it’s the most
used open-source framework in the world.
Like any effective front-end framework, Bootstrap includes CSS, HTML and JavaScript, or JS,
components. It adheres to responsive web design standards, allowing you to develop responsive
sites of all complexities and sizes.
Because it is updated continually, Bootstrap typically includes the latest and best features. For
example, it added themes that met Google’s material design guidelines shortly after they were
published, and it was also upgraded to use Sass as a CSS preprocessor.
7. 6 | P a g e
2. Material UI
If you’re looking for a front-end framework that makes it easy to adhere to Google’s material
design guidelines, you can’t go wrong with Material UI. It is by far the most elaborate framework
to implement these guidelines thus far, but there is one caveat: It isn’t meant to be a starting point
for a brand-new web design project.
3. Semantic-UI
A relative newcomer on the scene, Semantic-UI stands out in a number of ways and is poised
to become one of the most popular front-end frameworks out there.
This framework’s main claim to fame is its simplicity. Because it uses natural language, the
code is self-explanatory. Even those with very little coding experience will feel fairly at home
working with this framework.
8. 7 | P a g e
4. Reactstrap
This library provides simple React bootstrap 4 components. With over 4k stars and n
early 100 contributors it’s a widely popular option for bootstrap fans.
API and Databases
1. rest API with Mysql
One of the core features of the restdb.io database cloud service is the Restful API which
automatically reflects your database schema. All restdb.io databases have a unique URL as a
REST endpoint. Client applications communicate through the URL with JSON objects.
URL- https://restdb.io/docs/rest-api
9. 8 | P a g e
2. Mobile application development and trends
API in mobile applications (cURL API)
Client for URLs (or cURL) is a software project comprised of two development efforts -
cURL and libcurl.
libcurl is a free, client-side URL transfer library with support for a wide range of
protocols. libcurl is portable, thread-safe, feature rich, and well supported on virtually
any platform. It is probably the most popular C-based, multi-platform file transfer library
in use.
cURL is a command-line tool for getting or sending files using URL syntax. Since cURL
uses libcurl, it supports the same range of common Internet protocols that libcurl does.
This tutorial will walk through the format and syntax used when making Oracle Eloqua
API requests with cURL. If you are not yet familiar with the structure of requests, see API
requests.
Develop in mobile applications (react-native)
React Native is a JavaScript framework for writing real, natively rendering mobile
applications for iOS and Android. It’s based on React, Facebook’s JavaScript library for
building user interfaces, but instead of targeting the browser, it targets mobile platforms.
In other words: web developers can now write mobile applications that look and feel truly
“native,” all from the comfort of a JavaScript library that we already know and love. Plus,
because most of the code you write can be shared between platforms, React Native makes
it easy to simultaneously develop for both Android and iOS.
URL- https://github.com/facebook/react-native
Create app use in test driven development method.
10. 9 | P a g e
4. Big data processing and solutions deployment
What is Big data?
‘Big Data’ is similar to ‘small data’, but bigger in size.
But having data bigger it requires different approaches: -Techniques, tools and
architecture.
Big data is a term for data sets that are so large or complex that traditional data
processing applications are inadequate to deal with them.
Big Data is a phrase used to mean a massive volume of both structured and
unstructured data that is so large it is difficult to process using
traditional database and software techniques. In most enterprise scenarios the volume of
data is too big or it moves too fast or it exceeds current processing capacity.
4 V’s of Big Data
✓ Volume - Data quantity
✓ Velocity -Data speed
✓ Variety-Data Type
✓ Veracity-Messiness
How to handle big data?
✓ Hardware – Modern clustered data centers, fast networks and intensive
computer power.
✓ Software – Modern functional programing languages and frameworks.
Why we need fast processor?
processor also communicates with other computer components, such as memory and
the hard drive. Because these components work together, a slow hard drive could make
an application run slowly even if your computer has a very fast processor. Random
Access Memory, or RAM, stores information that applications need.
Parallelism vs concurrency
Concurrency
• Dealing with several tasks simultaneously
• But with one task a time
• All Intel processors up to Pentium were concurrent
11. 10 | P a g e
Parallelism
• Dealing with several tasks simultaneously
• But with several tasks at any given time
• All Intel processors since Pentium can execute more then one instruction per
clock cycle
Why do popular language fail?
-Imperative paradigm-state
-Mutability
What is the paradigm that supports parallelism?
-Functional paradigm
Functional vs Imperative
Functional Imperative
Specify each step More directive in style
How to do stuff What you want to get
Data mutated Data transformed
Often has side effect Has no side effect
Accepts data/objects Accepts functions also
Hard to compose Funtional composition
SCALA in big data
A Hybrid Language for Big Data. Scala is a highly scalable general-purpose programming
language that combines aspects of both object-oriented and functional programming. It's
become increasingly important in the world of data science, rivaling more established
languages like Java and Python.
12. 11 | P a g e
Streaming in spark, flink, and kafka,
Big Data Storage
Big data storage is a storage infrastructure that is designed specifically to store, manage
and retrieve massive amounts of data, or big data. Big data storage enables the storage
and sorting of big data in such a way that it can easily be accessed, used and processed by
applications and services working on big data. Big data storage is also able to flexibly scale
as required.
Big data storage primarily supports storage and input/output operations on storage with
a very large number of data files and objects. A typical big data storage architecture is
made up of a redundant and scalable supply of direct attached storage (DAS) pools, scale-
out or clustered network attached storage (NAS) or an infrastructure based on object
storage format. The storage infrastructure is connected to computing server nodes that
enable quick processing and retrieval of big quantities of data. Moreover, most big data
storage architectures/infrastructures have native support for big data analytics solutions
such as,
• Hadoop
• Cassandra
• MongoDB
Conventional databases were not designed to store petabytes (PB) of data, then use
modern data stores.
13. 12 | P a g e
5. Elementary OS
• OS Type: Linux
• Based on: Debian, Ubuntu
• Origin: USA
• Architecture: x86_64
• Desktop: Pantheon
• Category: Beginners, Desktop, Live
Medium
• Status: Active
elementary OS is an Ubuntu-based desktop distribution. Some of its more interesting features
include a custom desktop environment called Pantheon and many custom apps including
Photos, Music, Videos, Calendar, Terminal, Files, and more. It also comes with some familiar
apps like the Epiphany web browser and a fork of Geary mail.
6. Cryptocurrency
A digital currency in which encryption techniques are used to regulate the generation of units
of currency and verify the transfer of funds, operating independently of a central bank.
Cryptocurrencies are a kind of alternative currency and digital currency (of which virtual
currency is a subset). Cryptocurrencies use decentralized control as opposed to centralized
digital currency and central banking systems.
most popular cryptocurrencies in circulation today.
• Bitcoin
• Litecoin
• Dogecoin
• Ethereum
7. Future Needs
• stackoverflow Account- https://stackoverflow.com
• github Account- https://github.com
• linkedin Account- https://www.linkedin.com
• slack Account- https://slack.com
14. 13 | P a g e
Conclusion
The workshop which was conducted by Vizumatix(Pvt)Ltd on 28th September 2018
helped all the participants to improve their knowledge regarding web-based
development and technologies, mobile application development and trends and big data
processing and solutions deployment and other said to developed our industry
knowledge.
The workshop was a great event which helped us to enhance our knowledge and it is a
guidance to our career. I am thankful to the all the supporters to this tremendous
workshop to make it success.