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.
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.
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
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.
Everything Staffing Folks Should Know About Mobile DevelopmentMatt Galloway
I created this deck to accompany a talk I did for a regional technology staffing company. It was a part of a monthly training series they use to keep their recruiters and account executives up-to-date on current technology trends.
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.
This is the slide deck I used to present a talk titled "How to Hire A Mobile Developer" at The Art of Mobile Conference at Tulsa Community College's Center for Creativity on October 27, 2011.
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.
Book industry standards are evolving rapidly. In the first part of this session, we’ll share an overview of key developments from 2024 and the early months of 2025. Then, BookNet’s resident standards expert, Tom Richardson, and CEO, Lauren Stewart, have a forward-looking conversation about what’s next.
Link to recording, presentation slides, and accompanying resource: https://bnctechforum.ca/sessions/standardsgoals-for-2025-standards-certification-roundup/
Presented by BookNet Canada on May 6, 2025 with support from the Department of Canadian Heritage.
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul
Artificial intelligence is changing how businesses operate. Companies are using AI agents to automate tasks, reduce time spent on repetitive work, and focus more on high-value activities. Noah Loul, an AI strategist and entrepreneur, has helped dozens of companies streamline their operations using smart automation. He believes AI agents aren't just tools—they're workers that take on repeatable tasks so your human team can focus on what matters. If you want to reduce time waste and increase output, AI agents are the next move.
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Aqusag Technologies
In late April 2025, a significant portion of Europe, particularly Spain, Portugal, and parts of southern France, experienced widespread, rolling power outages that continue to affect millions of residents, businesses, and infrastructure systems.
Increasing Retail Store Efficiency How can Planograms Save Time and Money.pptxAnoop Ashok
In today's fast-paced retail environment, efficiency is key. Every minute counts, and every penny matters. One tool that can significantly boost your store's efficiency is a well-executed planogram. These visual merchandising blueprints not only enhance store layouts but also save time and money in the process.
How Can I use the AI Hype in my Business Context?Daniel Lehner
𝙄𝙨 𝘼𝙄 𝙟𝙪𝙨𝙩 𝙝𝙮𝙥𝙚? 𝙊𝙧 𝙞𝙨 𝙞𝙩 𝙩𝙝𝙚 𝙜𝙖𝙢𝙚 𝙘𝙝𝙖𝙣𝙜𝙚𝙧 𝙮𝙤𝙪𝙧 𝙗𝙪𝙨𝙞𝙣𝙚𝙨𝙨 𝙣𝙚𝙚𝙙𝙨?
Everyone’s talking about AI but is anyone really using it to create real value?
Most companies want to leverage AI. Few know 𝗵𝗼𝘄.
✅ What exactly should you ask to find real AI opportunities?
✅ Which AI techniques actually fit your business?
✅ Is your data even ready for AI?
If you’re not sure, you’re not alone. This is a condensed version of the slides I presented at a Linkedin webinar for Tecnovy on 28.04.2025.
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...SOFTTECHHUB
I started my online journey with several hosting services before stumbling upon Ai EngineHost. At first, the idea of paying one fee and getting lifetime access seemed too good to pass up. The platform is built on reliable US-based servers, ensuring your projects run at high speeds and remain safe. Let me take you step by step through its benefits and features as I explain why this hosting solution is a perfect fit for digital entrepreneurs.
AI and Data Privacy in 2025: Global TrendsInData Labs
In this infographic, we explore how businesses can implement effective governance frameworks to address AI data privacy. Understanding it is crucial for developing effective strategies that ensure compliance, safeguard customer trust, and leverage AI responsibly. Equip yourself with insights that can drive informed decision-making and position your organization for success in the future of data privacy.
This infographic contains:
-AI and data privacy: Key findings
-Statistics on AI data privacy in the today’s world
-Tips on how to overcome data privacy challenges
-Benefits of AI data security investments.
Keep up-to-date on how AI is reshaping privacy standards and what this entails for both individuals and organizations.
Spark is a powerhouse for large datasets, but when it comes to smaller data workloads, its overhead can sometimes slow things down. What if you could achieve high performance and efficiency without the need for Spark?
At S&P Global Commodity Insights, having a complete view of global energy and commodities markets enables customers to make data-driven decisions with confidence and create long-term, sustainable value. 🌍
Explore delta-rs + CDC and how these open-source innovations power lightweight, high-performance data applications beyond Spark! 🚀
Role of Data Annotation Services in AI-Powered ManufacturingAndrew Leo
From predictive maintenance to robotic automation, AI is driving the future of manufacturing. But without high-quality annotated data, even the smartest models fall short.
Discover how data annotation services are powering accuracy, safety, and efficiency in AI-driven manufacturing systems.
Precision in data labeling = Precision on the production floor.
This is the keynote of the Into the Box conference, highlighting the release of the BoxLang JVM language, its key enhancements, and its vision for the future.
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxJustin Reock
Building 10x Organizations with Modern Productivity Metrics
10x developers may be a myth, but 10x organizations are very real, as proven by the influential study performed in the 1980s, ‘The Coding War Games.’
Right now, here in early 2025, we seem to be experiencing YAPP (Yet Another Productivity Philosophy), and that philosophy is converging on developer experience. It seems that with every new method we invent for the delivery of products, whether physical or virtual, we reinvent productivity philosophies to go alongside them.
But which of these approaches actually work? DORA? SPACE? DevEx? What should we invest in and create urgency behind today, so that we don’t find ourselves having the same discussion again in a decade?
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025BookNet Canada
Book industry standards are evolving rapidly. In the first part of this session, we’ll share an overview of key developments from 2024 and the early months of 2025. Then, BookNet’s resident standards expert, Tom Richardson, and CEO, Lauren Stewart, have a forward-looking conversation about what’s next.
Link to recording, transcript, and accompanying resource: https://bnctechforum.ca/sessions/standardsgoals-for-2025-standards-certification-roundup/
Presented by BookNet Canada on May 6, 2025 with support from the Department of Canadian Heritage.
HCL Nomad Web – Best Practices and Managing Multiuser Environmentspanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-nomad-web-best-practices-and-managing-multiuser-environments/
HCL Nomad Web is heralded as the next generation of the HCL Notes client, offering numerous advantages such as eliminating the need for packaging, distribution, and installation. Nomad Web client upgrades will be installed “automatically” in the background. This significantly reduces the administrative footprint compared to traditional HCL Notes clients. However, troubleshooting issues in Nomad Web present unique challenges compared to the Notes client.
Join Christoph and Marc as they demonstrate how to simplify the troubleshooting process in HCL Nomad Web, ensuring a smoother and more efficient user experience.
In this webinar, we will explore effective strategies for diagnosing and resolving common problems in HCL Nomad Web, including
- Accessing the console
- Locating and interpreting log files
- Accessing the data folder within the browser’s cache (using OPFS)
- Understand the difference between single- and multi-user scenarios
- Utilizing Client Clocking
Andrew Marnell: Transforming Business Strategy Through Data-Driven InsightsAndrew Marnell
With expertise in data architecture, performance tracking, and revenue forecasting, Andrew Marnell plays a vital role in aligning business strategies with data insights. Andrew Marnell’s ability to lead cross-functional teams ensures businesses achieve sustainable growth and operational excellence.
Dev Dives: Automate and orchestrate your processes with UiPath MaestroUiPathCommunity
This session is designed to equip developers with the skills needed to build mission-critical, end-to-end processes that seamlessly orchestrate agents, people, and robots.
📕 Here's what you can expect:
- Modeling: Build end-to-end processes using BPMN.
- Implementing: Integrate agentic tasks, RPA, APIs, and advanced decisioning into processes.
- Operating: Control process instances with rewind, replay, pause, and stop functions.
- Monitoring: Use dashboards and embedded analytics for real-time insights into process instances.
This webinar is a must-attend for developers looking to enhance their agentic automation skills and orchestrate robust, mission-critical processes.
👨🏫 Speaker:
Andrei Vintila, Principal Product Manager @UiPath
This session streamed live on April 29, 2025, 16:00 CET.
Check out all our upcoming Dev Dives sessions at https://community.uipath.com/dev-dives-automation-developer-2025/.
What is Model Context Protocol(MCP) - The new technology for communication bw...Vishnu Singh Chundawat
The MCP (Model Context Protocol) is a framework designed to manage context and interaction within complex systems. This SlideShare presentation will provide a detailed overview of the MCP Model, its applications, and how it plays a crucial role in improving communication and decision-making in distributed systems. We will explore the key concepts behind the protocol, including the importance of context, data management, and how this model enhances system adaptability and responsiveness. Ideal for software developers, system architects, and IT professionals, this presentation will offer valuable insights into how the MCP Model can streamline workflows, improve efficiency, and create more intuitive systems for a wide range of use cases.
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