This document describes a redundant manager for a distributed storage system. The system uses consistent hashing to map files to primary and secondary storage nodes arranged in a ring topology. Each file has 3 replicas distributed across the nodes for redundancy. The redundant manager monitors the nodes and replicas to ensure consistency is maintained if nodes are added or removed from the storage system.
Webinar - Centralising syslogs with the new beats, logstash and elasticsearchOlinData
This webinar will cover details on Centralising syslogs with the help of Beats, Logstash and Elasticsearch. This will help you to Centralise logs for monitoring and analysis.
Declare your infrastructure: InfraKit, LinuxKit and MobyMoby Project
InfraKit is a toolkit for infrastructure orchestration. With an emphasis on immutable infrastructure, it breaks down infrastructure automation and management processes into small, pluggable components. These components work together to actively ensure the infrastructure state matches the user's specifications. InfraKit therefore provides infrastructure support for higher-level container orchestration systems and can make your infrastructure self-managing and self-healing.
The document discusses using Puppet to manage infrastructure on Google Compute Engine (GCE). It provides an overview of the Google Cloud Platform and its components like App Engine, Compute Engine, Cloud Storage, etc. It then dives deeper into features of GCE including fast startup times, different storage options, networking capabilities and high performance. The document concludes by demonstrating how to use Puppet to provision GCE resources like instances, disks and load balancers to create an automated and scalable web infrastructure on GCE.
UnQLite is an embeddable, serverless, zero-configuration NoSQL database that uses a single database file with no external dependencies. It provides ACID transactions with key-value and document storage and supports efficient O(1) lookups. The database can be accessed from C code using a simple API to open and close the database, store, retrieve, append, and delete key-value pairs, and iterate over records with a cursor. It also supports loading and storing files and scripting functionality through Jx9 scripts.
This document provides instructions for installing and configuring the OpenStack Glance image service. It begins with setting up the necessary variables and creating the Glance service and database in Keystone. It then walks through installing and configuring Glance, verifying the installation, and uploading two test images. It concludes by discussing some concepts of Glance like image formats and providing references for more documentation. The next steps outlined are expanding the deployment to two servers by modifying Vagrant files and installing necessary Nova packages to introduce compute functionality.
Deploying Percona XtraDB Cluster in OpenshiftAlexander Rubin
This document discusses deploying and managing a Percona XtraDB Cluster (PXC) on OpenShift using the Percona-Lab/percona-openshift Helm chart. It includes steps to deploy the PXC cluster, Proxysql, services, and monitoring using PMM. Backup and restore options using Jobs are also mentioned.
Shelly Cloud is a Platform as a Service (PaaS) that allows for painless Ruby deployments through git pushes. Developers can focus on building applications rather than deployment and infrastructure by using Shelly Cloud to host and run Ruby applications. Shelly Cloud supports Ruby, Rails, Sinatra and other Rack-based applications. It provides features like running periodic tasks, background processing, storing files, caching, sending emails, and more through an easy to use command line interface and cloud management through a Cloudfile.
This document describes a redundant manager for a distributed storage system. The system uses consistent hashing to map files to primary and secondary storage nodes arranged in a ring topology. Each file has 3 replicas distributed across the nodes for redundancy. The redundant manager monitors the nodes and replicas to ensure consistency is maintained if nodes are added or removed from the storage system.
Webinar - Centralising syslogs with the new beats, logstash and elasticsearchOlinData
This webinar will cover details on Centralising syslogs with the help of Beats, Logstash and Elasticsearch. This will help you to Centralise logs for monitoring and analysis.
Declare your infrastructure: InfraKit, LinuxKit and MobyMoby Project
InfraKit is a toolkit for infrastructure orchestration. With an emphasis on immutable infrastructure, it breaks down infrastructure automation and management processes into small, pluggable components. These components work together to actively ensure the infrastructure state matches the user's specifications. InfraKit therefore provides infrastructure support for higher-level container orchestration systems and can make your infrastructure self-managing and self-healing.
The document discusses using Puppet to manage infrastructure on Google Compute Engine (GCE). It provides an overview of the Google Cloud Platform and its components like App Engine, Compute Engine, Cloud Storage, etc. It then dives deeper into features of GCE including fast startup times, different storage options, networking capabilities and high performance. The document concludes by demonstrating how to use Puppet to provision GCE resources like instances, disks and load balancers to create an automated and scalable web infrastructure on GCE.
UnQLite is an embeddable, serverless, zero-configuration NoSQL database that uses a single database file with no external dependencies. It provides ACID transactions with key-value and document storage and supports efficient O(1) lookups. The database can be accessed from C code using a simple API to open and close the database, store, retrieve, append, and delete key-value pairs, and iterate over records with a cursor. It also supports loading and storing files and scripting functionality through Jx9 scripts.
This document provides instructions for installing and configuring the OpenStack Glance image service. It begins with setting up the necessary variables and creating the Glance service and database in Keystone. It then walks through installing and configuring Glance, verifying the installation, and uploading two test images. It concludes by discussing some concepts of Glance like image formats and providing references for more documentation. The next steps outlined are expanding the deployment to two servers by modifying Vagrant files and installing necessary Nova packages to introduce compute functionality.
Deploying Percona XtraDB Cluster in OpenshiftAlexander Rubin
This document discusses deploying and managing a Percona XtraDB Cluster (PXC) on OpenShift using the Percona-Lab/percona-openshift Helm chart. It includes steps to deploy the PXC cluster, Proxysql, services, and monitoring using PMM. Backup and restore options using Jobs are also mentioned.
Shelly Cloud is a Platform as a Service (PaaS) that allows for painless Ruby deployments through git pushes. Developers can focus on building applications rather than deployment and infrastructure by using Shelly Cloud to host and run Ruby applications. Shelly Cloud supports Ruby, Rails, Sinatra and other Rack-based applications. It provides features like running periodic tasks, background processing, storing files, caching, sending emails, and more through an easy to use command line interface and cloud management through a Cloudfile.
This document discusses using Gluster object storage with OpenStack Swift. Gluster-Swift mounts the Swift storage using FUSE and allows Swift to interface with Gluster backends. This avoids reimplementing the Swift object API. Gluster-Swift overrides Swift's distribution and replication to use the Gluster backend. The Swift API is implemented using FUSE operations on the Gluster volume. Future work includes upgrading Gluster-Swift, packaging, optimizations, and potentially developing a native Gluster object interface.
2013 PyCon SG - Building your cloud infrastructure with PythonGeorge Goh
1) The document discusses using the Python boto library to programmatically build cloud infrastructure on Amazon Web Services (AWS).
2) It provides examples of using boto to create an EC2 instance in Singapore with SSH access only, and to create an S3 bucket in Singapore configured to allow image uploads.
3) The document then explains how to put these components together into a photo uploading application that runs on an EC2 instance and stores photos in the S3 bucket, initializing the instance using user data to automatically deploy the application.
The document describes how to use a Python script to configure multiple switches simultaneously by storing the switch IP addresses in a file and looping through each IP to telnet to the switch and make configuration changes. It includes creating a file with the list of switch IPs, a Python script that opens the file, strips newlines, telnets to each switch, authenticates, enters configuration mode, configures loopback interfaces, saves the configuration, and exits telnet.
Blockchain Workshop - Software Freedom Day 2017Zied GUESMI
This document provides an introduction to building decentralized applications (dapps) using the Ethereum blockchain. It outlines the key concepts of blockchain and Ethereum, describes how to set up a development environment and tools for building dapps, and demonstrates a "hello world" dapp example. The document discusses smart contracts, Ether currency, gas costs, and using Solidity and web3.js for dapp development on Ethereum.
This document summarizes Apache Abdera, an open source library for working with Atom feeds and documents. It allows users to easily parse Atom feeds and access the data. Key details include that it is an Apache incubating project with an Apache 2.0 license and can be found on their website at http://incubator.apache.org/abdera/. It also provides a code example of how to parse an Atom feed and access the entry titles and IDs.
The document discusses using Pusher to build real-time web applications. It covers dynamic web technologies like polling, Comet, and WebSockets. It demonstrates how to use Pusher with Ruby and JavaScript to send and receive data in real-time across different events. References are provided for learning more about WebSockets, Pusher, and building real-time applications. The goal is to develop real-time web applications using the Pusher platform.
Node.js is an asynchronous event-driven JavaScript runtime that aims to build scalable network applications. It uses an event loop model that keeps the process running and prevents blocking behavior, allowing non-blocking I/O operations. This makes Node well-suited for real-time applications that require two-way connections like chat, streaming, and web sockets. The document outlines Node's core components and capabilities like modules, child processes, HTTP and TCP servers, and its future potential like web workers and streams.
StackExchange.Redis is a .NET client for Redis that provides high performance access to Redis features. It supports synchronous and asynchronous usage, configuration of multiple Redis servers, transactions, scripting, and pub/sub functionality. The document provides examples of using different Redis data types like strings, hashes, lists, sets, sorted sets, and server commands via the StackExchange.Redis client.
This document provides an introduction to Node.js including its history, uses, advantages, and community. It describes how Node.js uses non-blocking I/O and JavaScript to enable highly scalable applications. Examples show how Node.js can run HTTP servers and handle streaming data faster than traditional blocking architectures. The document recommends Node.js for real-time web applications and advises against using it for hard real-time systems or CPU-intensive tasks. It encourages participation in the growing Node.js community on mailing lists and IRC.
This document provides instructions for installing and configuring an OpenStack cloud including Nova, Swift, and Eucalyptus. It outlines steps to install and run Nova, configure volumes, create projects/users/networks. It also describes how to bundle/upload an image, launch an instance, associate elastic IPs. Further, it details how to add a Swift user and account and use the Swift API. Finally, it shows how to launch an instance on Eucalyptus.
LinuxKit, a toolkit for building custom minimal, immutable Linux distributions.
Secure defaults without compromising usability
Everything is replaceable and customisable
Immutable infrastructure applied to building Linux distributions
Completely stateless, but persistent storage can be attached
Easy tooling, with easy iteration
Built with containers, for running containers
Designed for building and running clustered applications, including but not limited to container orchestration such as Docker or Kubernetes
Designed from the experience of building Docker Editions, but redesigned as a general-purpose toolkit
Designed to be managed by external tooling, such as Infrakit or similar tools
Includes a set of longer-term collaborative projects in various stages of development to innovate on kernel and userspace changes, particularly around security
Kernels are functions that run on GPUs in parallel across multiple threads and blocks. Kernels are launched with an execution configuration that defines the number of blocks in the grid and the number of threads in each block, allowing thousands of threads to run simultaneously and take advantage of the GPU's parallel architecture.
Elasticsearch is a distributed, open source search and analytics engine. It allows for horizontal scaling with no single point of failure. Data is automatically rebalanced across nodes in a cluster. Elasticsearch is used by many large companies and sees heavy use for log analytics and search capabilities. It uses RESTful APIs and JSON documents.
Nodester is an open source platform that provides free Node.js hosting. It currently hosts around 2,000 apps and is built on Amazon EC2 instances. The main components are proxy.js which handles all HTTP and Websocket requests, and app.js which handles the REST API, CLI, and nodester.com site. The system utilizes chroot and Unionfs for sandboxing apps, and the roadmap includes separating out features, reorganizing the system layout, and potentially exploring alternative sandboxing methods like SELinux.
Nodester is an open source platform that provides free Node.js hosting. It currently hosts around 2,000 apps and is built on Amazon EC2 instances. The main components are proxy.js which handles all HTTP and Websocket requests, and app.js which handles the REST API, CLI, and nodester.com site. The roadmap includes separating out features, reorganizing the system layout, looking at alternative sandboxing, and potentially breaking components out to their own VMs.
This document provides instructions for deploying Docker and Kubernetes on an Ubuntu server. It includes steps to install Docker, initialize a Kubernetes cluster with kubeadm, join additional nodes, and deploy the Kubernetes Dashboard for management and monitoring.
Learn about the exciting new REST Resource API powered by Python's new asyncio library. In this talk you'll learn about some of the amazing things you can do with Guillotina and how you can leverage it to build your next JavaScript web application.
Everett Toews gave a talk about DevStack, an all-in-one installation of OpenStack that allows for development, testing, and learning of OpenStack locally. He demonstrated DevStack by launching virtual machines in the OpenStack cloud. DevStack provides an easy way to run OpenStack locally for development and testing purposes without requiring complex installation or configuration of the individual OpenStack components.
This document provides an introduction to asynchronous programming in Python using asyncio. It defines asyncio as a module that provides infrastructure for writing single-threaded concurrent code using coroutines. It discusses how asyncio allows I/O to be handled asynchronously using coroutines and without blocking threads. It highlights some benefits of asyncio like improved performance and scalability for web applications by allowing many network connections to be handled simultaneously without blocking. It provides examples of how to get started with asyncio by running coroutines concurrently using tasks and futures.
This document compares different methods for measuring performance and timing logic in Java, including System.currentTimeMillis(), System.nanoTime(), the StopWatch class from Apache Commons Lang, and the StopWatch utility from Spring Core. Code examples are provided for each method to demonstrate how to use it and sample output is shown. The Spring and Commons StopWatch implementations are then compared in terms of functionality.
The document discusses using a Raspberry Pi, Beacons, and Node.js to broadcast URLs from physical objects. It provides code examples for setting up a Raspberry Pi with Node.js, installing necessary libraries, and programming the device to broadcast URLs using the Eddystone beacon format over Bluetooth Low Energy. The code parses beacon signals to extract URLs and notifies the user of nearby physical web objects.
Beginning icloud development - Cesare Rocchi - WhyMCAWhymca
The document discusses beginning development with iCloud. It provides an overview of iCloud and how it works, outlines alternatives to iCloud like Dropbox and Parse, and dives into some technical details of implementing iCloud syncing for documents and custom data types using features like UIDocument, NSMetadataQuery, NSUbiquitousKeyValueStore, and conflict resolution. Tips are provided around testing, file handling best practices, and deciding whether to use iCloud or alternative services.
This document discusses using Gluster object storage with OpenStack Swift. Gluster-Swift mounts the Swift storage using FUSE and allows Swift to interface with Gluster backends. This avoids reimplementing the Swift object API. Gluster-Swift overrides Swift's distribution and replication to use the Gluster backend. The Swift API is implemented using FUSE operations on the Gluster volume. Future work includes upgrading Gluster-Swift, packaging, optimizations, and potentially developing a native Gluster object interface.
2013 PyCon SG - Building your cloud infrastructure with PythonGeorge Goh
1) The document discusses using the Python boto library to programmatically build cloud infrastructure on Amazon Web Services (AWS).
2) It provides examples of using boto to create an EC2 instance in Singapore with SSH access only, and to create an S3 bucket in Singapore configured to allow image uploads.
3) The document then explains how to put these components together into a photo uploading application that runs on an EC2 instance and stores photos in the S3 bucket, initializing the instance using user data to automatically deploy the application.
The document describes how to use a Python script to configure multiple switches simultaneously by storing the switch IP addresses in a file and looping through each IP to telnet to the switch and make configuration changes. It includes creating a file with the list of switch IPs, a Python script that opens the file, strips newlines, telnets to each switch, authenticates, enters configuration mode, configures loopback interfaces, saves the configuration, and exits telnet.
Blockchain Workshop - Software Freedom Day 2017Zied GUESMI
This document provides an introduction to building decentralized applications (dapps) using the Ethereum blockchain. It outlines the key concepts of blockchain and Ethereum, describes how to set up a development environment and tools for building dapps, and demonstrates a "hello world" dapp example. The document discusses smart contracts, Ether currency, gas costs, and using Solidity and web3.js for dapp development on Ethereum.
This document summarizes Apache Abdera, an open source library for working with Atom feeds and documents. It allows users to easily parse Atom feeds and access the data. Key details include that it is an Apache incubating project with an Apache 2.0 license and can be found on their website at http://incubator.apache.org/abdera/. It also provides a code example of how to parse an Atom feed and access the entry titles and IDs.
The document discusses using Pusher to build real-time web applications. It covers dynamic web technologies like polling, Comet, and WebSockets. It demonstrates how to use Pusher with Ruby and JavaScript to send and receive data in real-time across different events. References are provided for learning more about WebSockets, Pusher, and building real-time applications. The goal is to develop real-time web applications using the Pusher platform.
Node.js is an asynchronous event-driven JavaScript runtime that aims to build scalable network applications. It uses an event loop model that keeps the process running and prevents blocking behavior, allowing non-blocking I/O operations. This makes Node well-suited for real-time applications that require two-way connections like chat, streaming, and web sockets. The document outlines Node's core components and capabilities like modules, child processes, HTTP and TCP servers, and its future potential like web workers and streams.
StackExchange.Redis is a .NET client for Redis that provides high performance access to Redis features. It supports synchronous and asynchronous usage, configuration of multiple Redis servers, transactions, scripting, and pub/sub functionality. The document provides examples of using different Redis data types like strings, hashes, lists, sets, sorted sets, and server commands via the StackExchange.Redis client.
This document provides an introduction to Node.js including its history, uses, advantages, and community. It describes how Node.js uses non-blocking I/O and JavaScript to enable highly scalable applications. Examples show how Node.js can run HTTP servers and handle streaming data faster than traditional blocking architectures. The document recommends Node.js for real-time web applications and advises against using it for hard real-time systems or CPU-intensive tasks. It encourages participation in the growing Node.js community on mailing lists and IRC.
This document provides instructions for installing and configuring an OpenStack cloud including Nova, Swift, and Eucalyptus. It outlines steps to install and run Nova, configure volumes, create projects/users/networks. It also describes how to bundle/upload an image, launch an instance, associate elastic IPs. Further, it details how to add a Swift user and account and use the Swift API. Finally, it shows how to launch an instance on Eucalyptus.
LinuxKit, a toolkit for building custom minimal, immutable Linux distributions.
Secure defaults without compromising usability
Everything is replaceable and customisable
Immutable infrastructure applied to building Linux distributions
Completely stateless, but persistent storage can be attached
Easy tooling, with easy iteration
Built with containers, for running containers
Designed for building and running clustered applications, including but not limited to container orchestration such as Docker or Kubernetes
Designed from the experience of building Docker Editions, but redesigned as a general-purpose toolkit
Designed to be managed by external tooling, such as Infrakit or similar tools
Includes a set of longer-term collaborative projects in various stages of development to innovate on kernel and userspace changes, particularly around security
Kernels are functions that run on GPUs in parallel across multiple threads and blocks. Kernels are launched with an execution configuration that defines the number of blocks in the grid and the number of threads in each block, allowing thousands of threads to run simultaneously and take advantage of the GPU's parallel architecture.
Elasticsearch is a distributed, open source search and analytics engine. It allows for horizontal scaling with no single point of failure. Data is automatically rebalanced across nodes in a cluster. Elasticsearch is used by many large companies and sees heavy use for log analytics and search capabilities. It uses RESTful APIs and JSON documents.
Nodester is an open source platform that provides free Node.js hosting. It currently hosts around 2,000 apps and is built on Amazon EC2 instances. The main components are proxy.js which handles all HTTP and Websocket requests, and app.js which handles the REST API, CLI, and nodester.com site. The system utilizes chroot and Unionfs for sandboxing apps, and the roadmap includes separating out features, reorganizing the system layout, and potentially exploring alternative sandboxing methods like SELinux.
Nodester is an open source platform that provides free Node.js hosting. It currently hosts around 2,000 apps and is built on Amazon EC2 instances. The main components are proxy.js which handles all HTTP and Websocket requests, and app.js which handles the REST API, CLI, and nodester.com site. The roadmap includes separating out features, reorganizing the system layout, looking at alternative sandboxing, and potentially breaking components out to their own VMs.
This document provides instructions for deploying Docker and Kubernetes on an Ubuntu server. It includes steps to install Docker, initialize a Kubernetes cluster with kubeadm, join additional nodes, and deploy the Kubernetes Dashboard for management and monitoring.
Learn about the exciting new REST Resource API powered by Python's new asyncio library. In this talk you'll learn about some of the amazing things you can do with Guillotina and how you can leverage it to build your next JavaScript web application.
Everett Toews gave a talk about DevStack, an all-in-one installation of OpenStack that allows for development, testing, and learning of OpenStack locally. He demonstrated DevStack by launching virtual machines in the OpenStack cloud. DevStack provides an easy way to run OpenStack locally for development and testing purposes without requiring complex installation or configuration of the individual OpenStack components.
This document provides an introduction to asynchronous programming in Python using asyncio. It defines asyncio as a module that provides infrastructure for writing single-threaded concurrent code using coroutines. It discusses how asyncio allows I/O to be handled asynchronously using coroutines and without blocking threads. It highlights some benefits of asyncio like improved performance and scalability for web applications by allowing many network connections to be handled simultaneously without blocking. It provides examples of how to get started with asyncio by running coroutines concurrently using tasks and futures.
This document compares different methods for measuring performance and timing logic in Java, including System.currentTimeMillis(), System.nanoTime(), the StopWatch class from Apache Commons Lang, and the StopWatch utility from Spring Core. Code examples are provided for each method to demonstrate how to use it and sample output is shown. The Spring and Commons StopWatch implementations are then compared in terms of functionality.
The document discusses using a Raspberry Pi, Beacons, and Node.js to broadcast URLs from physical objects. It provides code examples for setting up a Raspberry Pi with Node.js, installing necessary libraries, and programming the device to broadcast URLs using the Eddystone beacon format over Bluetooth Low Energy. The code parses beacon signals to extract URLs and notifies the user of nearby physical web objects.
Beginning icloud development - Cesare Rocchi - WhyMCAWhymca
The document discusses beginning development with iCloud. It provides an overview of iCloud and how it works, outlines alternatives to iCloud like Dropbox and Parse, and dives into some technical details of implementing iCloud syncing for documents and custom data types using features like UIDocument, NSMetadataQuery, NSUbiquitousKeyValueStore, and conflict resolution. Tips are provided around testing, file handling best practices, and deciding whether to use iCloud or alternative services.
ObjectiveResource is an Objective-C port of Ruby on Rails' ActiveResource. It provides a way to serialize objects to and from Rails' standard RESTful web-services (via XML or JSON) and handles much of the complexity involved with invoking web-services of any language from the iPhone.
This talk shows you how easy it is to create a 2-way communication channel between a very basic Rails application and an iPhone app.
RestKit is an open-source framework for iOS that makes it easy to communicate with RESTful web services. It handles network requests, object mapping from JSON/XML to core data, and allows for easy manipulation of remote objects through a router. RestKit takes care of common tasks like serialization, authentication, caching, and makes working with REST APIs seamless. It provides a complete solution for working with RESTful backends in iOS applications from the network layer to data storage and manipulation.
Taking Objective-C to the next level. UA Mobile 2016.UA Mobile
The document discusses 5 ways to improve Objective-C code while still using Objective-C. It covers: 1) Adding nullability to method parameters and returns to reduce null errors, 2) Using constants to increase predictability, 3) Enforcing designated initializers to ensure objects are initialized correctly, 4) Managing weak references to prevent issues with delegates being released, and 5) Using static analysis to catch nullability and other issues. The overall message is that small changes can make Objective-C code more robust and predictable without needing to rewrite it in another language.
Hızlı Cocoa Geliştirme (Develop your next cocoa app faster!)Sarp Erdag
This document provides links and code snippets for several iOS development libraries and frameworks. It includes code for making network requests using AFNetworking, parsing JSON with RestKit, displaying loading indicators with MBProgressHUD, pulling to refresh with SVPullToRefresh, theming interfaces with NUI, displaying alerts and action sheets with BlockAlerts, formatting dates with SEHumanizedTimeDiff, authenticating with social networks using HPSocialNetworkManager, and displaying tweets with link handling using STTweetLabel.
Multi Client Development with Spring - Josh Long jaxconf
This document provides an overview of Spring's support for building multi-client web applications. It discusses Spring's servlet support including the Servlet 3.0 initializer classes. It also covers Spring MVC, building mobile-friendly applications, native Android development with Spring, REST support, and securing applications with Spring Security. The document contains examples of core Spring features like controllers and uses diagrams to illustrate classic Spring MVC architecture. It aims to demonstrate these techniques through examples and code snippets.
This document provides an overview and outline of Class 13 for iOS app software design in Chinese. It discusses topics such as:
- Extracting data from the network
- NSURLConnection
- NSXMLParser
- URL schemes
It provides examples on how to use NSURLConnection to download image files and display download progress, as well as how to use POST methods. It also discusses using NSXMLParser to parse RSS feeds from the network.
case3h231/diamond.gif
case3h231/energy.jpg
case3h231/modernizr-2.js
/*!
* Modernizr v2.0.6
* http://www.modernizr.com
*
* Copyright (c) 2009-2011 Faruk Ates, Paul Irish, Alex Sexton
* Dual-licensed under the BSD or MIT licenses: www.modernizr.com/license/
*/
/*
* Modernizr tests which native CSS3 and HTML5 features are available in
* the current UA and makes the results available to you in two ways:
* as properties on a global Modernizr object, and as classes on the
* <html> element. This information allows you to progressively enhance
* your pages with a granular level of control over the experience.
*
* Modernizr has an optional (not included) conditional resource loader
* called Modernizr.load(), based on Yepnope.js (yepnopejs.com).
* To get a build that includes Modernizr.load(), as well as choosing
* which tests to include, go to www.modernizr.com/download/
*
* Authors Faruk Ates, Paul Irish, Alex Sexton,
* Contributors Ryan Seddon, Ben Alman
*/
window.Modernizr = (function( window, document, undefined ) {
var version = '2.0.6',
Modernizr = {},
// option for enabling the HTML classes to be added
enableClasses = true,
docElement = document.documentElement,
docHead = document.head || document.getElementsByTagName('head')[0],
/**
* Create our "modernizr" element that we do most feature tests on.
*/
mod = 'modernizr',
modElem = document.createElement(mod),
mStyle = modElem.style,
/**
* Create the input element for various Web Forms feature tests.
*/
inputElem = document.createElement('input'),
smile = ':)',
toString = Object.prototype.toString,
// List of property values to set for css tests. See ticket #21
prefixes = ' -webkit- -moz- -o- -ms- -khtml- '.split(' '),
// Following spec is to expose vendor-specific style properties as:
// elem.style.WebkitBorderRadius
// and the following would be incorrect:
// elem.style.webkitBorderRadius
// Webkit ghosts their properties in lowercase but Opera & Moz do not.
// Microsoft foregoes prefixes entirely <= IE8, but appears to
// use a lowercase `ms` instead of the correct `Ms` in IE9
// More here: http://github.com/Modernizr/Modernizr/issues/issue/21
domPrefixes = 'Webkit Moz O ms Khtml'.split(' '),
ns = {'svg': 'http://www.w3.org/2000/svg'},
tests = {},
inputs = {},
attrs = {},
classes = [],
featureName, // used in testing loop
// Inject element with style element and some CSS rules
injectElementWithStyles = function( rule, callback, nodes, testnames ) {
var style, ret, node,
div = document.createElement('div');
if ( parseInt(nodes, 10) ) {
// In order not to give false positives we create a node for each test
// This also allows the method to scale for unspecified uses
while ( nodes-- ) {
node = document.createElement(' ...
MPD2011 | Сергей Клюев "RESTfull iOS with RestKit"ITGinGer
RestKit is an iOS framework that simplifies communication with RESTful web services. It includes a networking layer for sending and receiving HTTP requests, object mapping for serializing responses to Objective-C objects, integration with Core Data for storage, and pluggable parsing layers for different data formats like JSON and XML. RestKit handles common tasks like authentication, request queuing, response parsing, and object lifecycles to provide a complete solution for working with REST APIs in iOS applications.
The document discusses best practices for iOS development using Xcode, including organizing code into groups and folders based on separation of concerns, implementing isolated and standalone data sources and views, and writing tests for components in isolation to avoid dependencies on other parts of the app. It provides an example of a category test for parsing timestamps, implementing and testing a standalone data source class, and exercises for further improving testing isolation.
The document contains code snippets for Java network security programming. Experiment 1 deals with network security programming using TCP/IP protocols for different layers. Experiment 2 focuses on socket security programming involving address structures and functions. Experiment 3 is about APIs security programming for non-blocking sockets and timeouts. Experiment 4 implements a basic web server for firewall programming. The remaining experiments cover CORBA, cryptography, digital signatures and Java network security in general.
Java9 Beyond Modularity - Java 9 más allá de la modularidadDavid Gómez García
These are the slides I used for my "Java 9 beyond modularity" at several different local meetups and conferences in Spain during 2017
Java 9 is about to reach its public release scheduled for September 2017. If we ask what are the new features that this new version will include, probably the first that comes to our head is modularity.
But java 9 brings with a lot of features beyound Jigsaw, JPMS or modularity. In this talk we will talk about at least 9 other new features that include this new version of Java that are interesting and maybe will end up being more used than the modularity itself for those who embrace the new version.
Those are changes that come to complement and improve even more the set of new tools (like Streams, Optionals, etc...) that Java 8 brought to us.
We'll take a look at small changes in language syntax (such as new ways of using try-with-resources), changes in Collections APIs and Streams, new tools like VarHandles, new APIs such as the Flow API, and As we allow the inclusion of reactive programming with Java.
Do you want to see in Java 9 beyond modularity? Do you want to have a more complete view of what you can provide? Let's take a look toghether!
Javascript Continues Integration in Jenkins with AngularJSLadislav Prskavec
The document describes a ToDo application built with AngularJS that uses MongoDB hosted on MongoHQ. It retrieves and saves ToDo items to the MongoDB database via a PHP proxy. It also discusses testing the application using tools like PhantomJS, Jasmine, JSCoverage, JSDoc, and continuous integration with Jenkins.
Eddystone Beacons - Physical Web - Giving a URL to All ObjectsJeff Prestes
More mobile technologies are empowering people and machines to become more autonomous. In the same way as people, machines need ways to be identified to other sources in a connected environment. This begs the question, why not give a URL to objects? With Eddystone, a new Google specification for Beacon data, this is possible, and it works with both Android and iOS based devices.
With it you can implement what physical-web.org stands
The document discusses Eddystone, a new Bluetooth beacon protocol from Google that allows physical objects to broadcast URLs. It describes the different Eddystone frame types (telemetry, UID, URL) and how the Physical Web app can detect beacons broadcasting URLs using the Eddystone format. The presentation then demonstrates how to set up beacon advertising with a URL using Node.js and how Android apps can detect nearby Eddystone beacons to parse the broadcast URLs.
Spark with Elasticsearch - umd version 2014Holden Karau
Holden Karau gave a talk on using Apache Spark and Elasticsearch. The talk covered indexing data from Spark to Elasticsearch both online using Spark Streaming and offline. It showed how to customize the Elasticsearch connector to write indexed data directly to shards based on partitions to reduce network overhead. It also demonstrated querying Elasticsearch from Spark, extracting top tags from tweets, and reindexing data from Twitter to Elasticsearch.
The document discusses iPhone app development using Objective-C. It covers the basics of getting started, including what is needed to begin like a Mac, Xcode, and an iPhone. It then explains key Objective-C concepts like classes, methods, and memory management using retain counts. The document also discusses unit testing iOS apps using OCUnit and some Xcode tips. It emphasizes testing first and concludes by noting the market demands more apps and there is room for improvement.
Physical Web is an important component for the Smart Cities and for monetizing IoT projects. This talk explain what is it and how to implement it using Eddystone protocol.
Some thoughts on asynchrony in a modern world, inspired by Reactive Extensions and await in C#, for the Obj-C audience at CocoaHeads Stockholm June 2012.
Please read the notes on each slide to make sense of them, the slides are not understandable by themselves.
Similar to Techfest 2013 No RESTKit for the Weary (20)
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive functioning. Exercise causes chemical changes in the brain that may help boost feelings of calmness, happiness and focus.
Everything Staffing Folks Should Know About Mobile DevelopmentMatt Galloway
The document discusses the benefits of exercise for mental health. Regular physical activity can help reduce anxiety and depression and improve mood and cognitive functioning. Exercise causes chemical changes in the brain that may help boost feelings of calmness, happiness and focus.
The document repeats the date "Friday, October 11, 13" multiple times without providing any other context or information. It is unclear what the purpose or topic of the document is as only the date is listed on each line.
The document discusses the benefits of meditation for reducing stress and anxiety. Regular meditation practice can help calm the mind and body by lowering heart rate and blood pressure. Studies have shown that meditating for just 10-20 minutes per day can have significant positive impacts on both mental and physical health over time.
An overview of resources in and around the Tulsa, Oklahoma area for startups and small business. Presented at the Tulsa Chamber of Commerce Small Business Forum on February 22, 2011.
This document summarizes a 9-week study of Twitter use in Oklahoma from March 29 to May 31, 2009. Over 1.5 million tweets from over 18,000 self-identified Oklahomans were analyzed. The study found that an estimated 31,000-47,000 Oklahomans, or about 1% of the state population, are active on Twitter. College towns like Stillwater had higher Twitter usage rates than other areas.
Love 1:46pm twitter event april 22 & 23, 2009Matt Galloway
In an attempt to capture the attention of
@realhughjackman, and to experiment with
using Twitter to increase awareness, Brains on Fire and Love146 asked tweeps to post their support for the Love146 movement at 1:46pm Eastern Time on April 22 & 23, 2009.
This report illustrates the activity on Twitter related to this event.
Tulsa Area United Way Agencies' Website Assessment & RecommendationsMatt Galloway
Report summarizing the results of a cursory review that was was performed for each website of the 64 Tulsa Area United Way agencies with websites*. All reviews were conducted between August 1, 2009, and September 7, 2009.
From Natural Language to Structured Solr Queries using LLMsSease
This talk draws on experimentation to enable AI applications with Solr. One important use case is to use AI for better accessibility and discoverability of the data: while User eXperience techniques, lexical search improvements, and data harmonization can take organizations to a good level of accessibility, a structural (or “cognitive” gap) remains between the data user needs and the data producer constraints.
That is where AI – and most importantly, Natural Language Processing and Large Language Model techniques – could make a difference. This natural language, conversational engine could facilitate access and usage of the data leveraging the semantics of any data source.
The objective of the presentation is to propose a technical approach and a way forward to achieve this goal.
The key concept is to enable users to express their search queries in natural language, which the LLM then enriches, interprets, and translates into structured queries based on the Solr index’s metadata.
This approach leverages the LLM’s ability to understand the nuances of natural language and the structure of documents within Apache Solr.
The LLM acts as an intermediary agent, offering a transparent experience to users automatically and potentially uncovering relevant documents that conventional search methods might overlook. The presentation will include the results of this experimental work, lessons learned, best practices, and the scope of future work that should improve the approach and make it production-ready.
Session 1 - Intro to Robotic Process Automation.pdfUiPathCommunity
👉 Check out our full 'Africa Series - Automation Student Developers (EN)' page to register for the full program:
https://bit.ly/Automation_Student_Kickstart
In this session, we shall introduce you to the world of automation, the UiPath Platform, and guide you on how to install and setup UiPath Studio on your Windows PC.
📕 Detailed agenda:
What is RPA? Benefits of RPA?
RPA Applications
The UiPath End-to-End Automation Platform
UiPath Studio CE Installation and Setup
💻 Extra training through UiPath Academy:
Introduction to Automation
UiPath Business Automation Platform
Explore automation development with UiPath Studio
👉 Register here for our upcoming Session 2 on June 20: Introduction to UiPath Studio Fundamentals: https://community.uipath.com/events/details/uipath-lagos-presents-session-2-introduction-to-uipath-studio-fundamentals/
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor IvaniukFwdays
At this talk we will discuss DDoS protection tools and best practices, discuss network architectures and what AWS has to offer. Also, we will look into one of the largest DDoS attacks on Ukrainian infrastructure that happened in February 2022. We'll see, what techniques helped to keep the web resources available for Ukrainians and how AWS improved DDoS protection for all customers based on Ukraine experience
What is an RPA CoE? Session 2 – CoE RolesDianaGray10
In this session, we will review the players involved in the CoE and how each role impacts opportunities.
Topics covered:
• What roles are essential?
• What place in the automation journey does each role play?
Speaker:
Chris Bolin, Senior Intelligent Automation Architect Anika Systems
"What does it really mean for your system to be available, or how to define w...Fwdays
We will talk about system monitoring from a few different angles. We will start by covering the basics, then discuss SLOs, how to define them, and why understanding the business well is crucial for success in this exercise.
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...Jason Yip
The typical problem in product engineering is not bad strategy, so much as “no strategy”. This leads to confusion, lack of motivation, and incoherent action. The next time you look for a strategy and find an empty space, instead of waiting for it to be filled, I will show you how to fill it in yourself. If you’re wrong, it forces a correction. If you’re right, it helps create focus. I’ll share how I’ve approached this in the past, both what works and lessons for what didn’t work so well.
"Choosing proper type of scaling", Olena SyrotaFwdays
Imagine an IoT processing system that is already quite mature and production-ready and for which client coverage is growing and scaling and performance aspects are life and death questions. The system has Redis, MongoDB, and stream processing based on ksqldb. In this talk, firstly, we will analyze scaling approaches and then select the proper ones for our system.
How information systems are built or acquired puts information, which is what they should be about, in a secondary place. Our language adapted accordingly, and we no longer talk about information systems but applications. Applications evolved in a way to break data into diverse fragments, tightly coupled with applications and expensive to integrate. The result is technical debt, which is re-paid by taking even bigger "loans", resulting in an ever-increasing technical debt. Software engineering and procurement practices work in sync with market forces to maintain this trend. This talk demonstrates how natural this situation is. The question is: can something be done to reverse the trend?
QA or the Highway - Component Testing: Bridging the gap between frontend appl...zjhamm304
These are the slides for the presentation, "Component Testing: Bridging the gap between frontend applications" that was presented at QA or the Highway 2024 in Columbus, OH by Zachary Hamm.
Essentials of Automations: Exploring Attributes & Automation ParametersSafe Software
Building automations in FME Flow can save time, money, and help businesses scale by eliminating data silos and providing data to stakeholders in real-time. One essential component to orchestrating complex automations is the use of attributes & automation parameters (both formerly known as “keys”). In fact, it’s unlikely you’ll ever build an Automation without using these components, but what exactly are they?
Attributes & automation parameters enable the automation author to pass data values from one automation component to the next. During this webinar, our FME Flow Specialists will cover leveraging the three types of these output attributes & parameters in FME Flow: Event, Custom, and Automation. As a bonus, they’ll also be making use of the Split-Merge Block functionality.
You’ll leave this webinar with a better understanding of how to maximize the potential of automations by making use of attributes & automation parameters, with the ultimate goal of setting your enterprise integration workflows up on autopilot.
AppSec PNW: Android and iOS Application Security with MobSFAjin Abraham
Mobile Security Framework - MobSF is a free and open source automated mobile application security testing environment designed to help security engineers, researchers, developers, and penetration testers to identify security vulnerabilities, malicious behaviours and privacy concerns in mobile applications using static and dynamic analysis. It supports all the popular mobile application binaries and source code formats built for Android and iOS devices. In addition to automated security assessment, it also offers an interactive testing environment to build and execute scenario based test/fuzz cases against the application.
This talk covers:
Using MobSF for static analysis of mobile applications.
Interactive dynamic security assessment of Android and iOS applications.
Solving Mobile app CTF challenges.
Reverse engineering and runtime analysis of Mobile malware.
How to shift left and integrate MobSF/mobsfscan SAST and DAST in your build pipeline.
ScyllaDB is making a major architecture shift. We’re moving from vNode replication to tablets – fragments of tables that are distributed independently, enabling dynamic data distribution and extreme elasticity. In this keynote, ScyllaDB co-founder and CTO Avi Kivity explains the reason for this shift, provides a look at the implementation and roadmap, and shares how this shift benefits ScyllaDB users.
"Scaling RAG Applications to serve millions of users", Kevin GoedeckeFwdays
How we managed to grow and scale a RAG application from zero to thousands of users in 7 months. Lessons from technical challenges around managing high load for LLMs, RAGs and Vector databases.
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
High performance Serverless Java on AWS- GoTo Amsterdam 2024Vadym Kazulkin
Java is for many years one of the most popular programming languages, but it used to have hard times in the Serverless community. Java is known for its high cold start times and high memory footprint, comparing to other programming languages like Node.js and Python. In this talk I'll look at the general best practices and techniques we can use to decrease memory consumption, cold start times for Java Serverless development on AWS including GraalVM (Native Image) and AWS own offering SnapStart based on Firecracker microVM snapshot and restore and CRaC (Coordinated Restore at Checkpoint) runtime hooks. I'll also provide a lot of benchmarking on Lambda functions trying out various deployment package sizes, Lambda memory settings, Java compilation options and HTTP (a)synchronous clients and measure their impact on cold and warm start times.
3. rvice Calls on iOS
Web Se
Define your URL
NSString *url = @”http://somewebservice.com/objects.json”;
Make the Call
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
ese delegate methods!!!
Then implement all of th
-
(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
(void)connectionDidFinishLoading:(NSURLConnection *)connection
and now you have to parse
the JSON in NSData
into something useful...
Tuesday, January 28, 14
4. n is great, but...
NSJSONSerializatio
-(void) parseJSONIntoModel:(NSData *) jsonData {
NSError *error = nil;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:jsonData
options:NSJSONReadingAllowFragments
error:&error];
if (error!=nil) {
// TODO: Insert annoying JSON error handler here.
}
if ([json isKindOfClass:[NSArray class]]) {
//TODO: Uh. I was expecting a dictionary but apparently this is an array. Writng some handling code here.
}
for(NSString *key in [json allKeys]) {
if ([key isEqualToString:@"user"]) {
NSDictionary *userDictionary = [json objectForKey:key];
NSNumber *userId = [userDictionary objectForKey:@"id"];
RKGUser *user = [[ObjectFactory sharedFactory] userForUserId:userId];
if (user==nil) {
user = [[ObjectFactory sharedFactory] newUser];
user.userId=useriD;
}
}
.
.
.
user.name = [userDictionary objectForKey:@"name"];
user.username = [userDictionary objectForKey:@"username"];
user.phone = [userDictionary objectForKey:@"phone"];
user.email = [userDictionary objectForKey:@"email"];
Tuesday, January 28, 14
7. RestKit is...
rce & available on GitHub
* Open Sou
* Built on AFNetworking
Beautifully multi-threaded
*
eamlessly with CoreData
* Integrates s
o works with plain objects
* Als
lationships, nesting, etc.
* Handles re
on mapping like an ORM
* Based
* Very configurable
, POST, PATCH, etc.
ndles all REST verbs - GET
* Ha
y actively maintained
* Ver
ase seeding, search,
ch of other stuff - datab
* A bu n
XML, etc.
Tuesday, January 28, 14
8. ing RestKit
Install
I <3 CocoaPods
$ cd /path/to/MyProject
$ touch Podfile
$ edit Podfile
platform :ios, '5.0'
# Or platform :osx, '10.7'
pod 'RestKit', '~> 0.20.0'
$ pod install
$ open MyProject.xcworkspace
Tuesday, January 28, 14
10. Using RestKit: The Object
@interface Joke : NSObject
@property (nonatomic, strong) NSNumber *jokeId;
@property (nonatomic, strong) NSString *text;
@end
@implementation Joke
@end
Tuesday, January 28, 14
11. Using RestKit: The Setup
-(void) setupRestKit {
RKObjectManager *objectManager =
[RKObjectManager managerWithBaseURL:[NSURL URLWithString:@"http://api.icndb.com/"]];
objectManager.requestSerializationMIMEType=RKMIMETypeJSON;
[RKObjectManager setSharedManager:objectManager];
.
.
.
eps for CoreData, authentication, etc.)
(There are a few extra st
Tuesday, January 28, 14
12. Using RestKit: The Mappin
g
RKObjectMapping *jokeMapping = [RKObjectMapping mappingForClass:[Joke class]];
[jokeMapping addAttributeMappingsFromDictionary:@{
@"id":
@"joke":
@"jokeId",
@"text"}];
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor
responseDescriptorWithMapping:jokeMapping
method:RKRequestMethodGET
pathPattern:@"jokes"
keyPath:@"value"
statusCodes:RKStatusCodeIndexSetForClass(RKStatusCodeClassSuccessful)];
[[RKObjectManager sharedManager] addResponseDescriptor:responseDescriptor];
Tuesday, January 28, 14
13. I <3 Singletons
a singleton, so
KObjectManager is
R
apping steps need
the setup and m
e, usually at app
only be done onc
launch.
it and forget it. :)
Se t
Tuesday, January 28, 14
14. Using RestKit: The Call
[[RKObjectManager sharedManager] getObjectsAtPath:@"jokes"
parameters:nil
success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
self.jokes = mappingResult.array;
[self.tableView reloadData];
}
failure:^(RKObjectRequestOperation *operation, NSError *error) {
[self displayError:error];
}];
RKMappingResult has
count,firstObject, array,
dictionary,
and set properties
Tuesday, January 28, 14
15. Using RestKit: The Mappin
gf
or POST
RKObjectMapping *inverseJokeMapping = [jokeMapping inverseMapping];
RKRequestDescriptor *requestDescriptor = [RKRequestDescriptor
requestDescriptorWithMapping:inverseJokeMapping
objectClass:[Joke class]
rootKeyPath:@"jokes"
method:RKRequestMethodPOST ];
[[RKObjectManager sharedManager] addRequestDescriptor:requestDescriptor];
Tuesday, January 28, 14
16. it: POSTing
Using RestK
Joke *aJoke=[[Joke alloc] init];
aJoke.jokeId=@9999;
aJoke.text=@"Chuck Norris can find the end of a circle.";
[[RKObjectManager sharedManager] postObject:aJoke
path:@"jokes"
parameters:nil
success:^(RKObjectRequestOperation *operation,
RKMappingResult *mappingResult){}
failure:^(RKObjectRequestOperation *operation,
NSError *error){}];
Tuesday, January 28, 14