This document describes steps in a bioinformatics analysis pipeline that uses BLAST and CLUSTALW. The pipeline takes a protein sequence from KEGG identified by its ID (hsa:6469), runs BLAST to find similar sequences, parses the BLAST output, runs CLUSTALW for multiple sequence alignment, and outputs the results. Ruby scripts are used to implement each step via calling REST and SOAP services for BLAST and CLUSTALW.
1) The document describes steps in a bioinformatics analysis pipeline that uses BLAST and CLUSTALW to perform sequence alignment and clustering on a query protein sequence from Homo sapiens (hsa:6469).
2) Each step is contained in a separate Ruby script (step10.rb through step60.rb) that retrieves data through REST/SOAP calls and passes output through text files.
3) The final step performs a multiple sequence alignment of BLAST hits passing the E-value threshold using CLUSTALW through a SOAP call and outputs the result.
The document discusses function call optimization in C++. It provides examples of constructor, base class constructor, and get/set method calls in both debug and release builds. In release builds, the compiler fully optimizes constructor calls and inlines non-virtual functions like get/set methods to improve performance. Only virtual functions cannot be optimized as their call sequence depends on runtime type.
ZeroMQ Is The Answer: PHP Tek 11 VersionIan Barber
This document provides an overview of ZeroMQ (0MQ), an asynchronous messaging library. It discusses 0MQ concepts like request/response, publish/subscribe, and pipelines. It includes code examples in PHP and Python demonstrating how to implement these patterns using 0MQ sockets and messaging. Additional sections cover 0MQ transport types, installation, and integrating 0MQ with other systems like Mongrel2.
Using Mikko Koppanen's PHP ZMQ extension we will look at how you can easily distribute work to background processes, provide flexible service brokering for your next service oriented architecture, and manage caches efficiently and easily with just PHP and the ZeroMQ libraries. Whether the problem is asynchronous communication, message distribution, process management or just about anything, ZeroMQ can help you build an architecture that is more resilient, more scalable and more flexible, without introducing unnecessary overhead or requiring a heavyweight queue manager node.
Conférence données à l'Open World Forum, 05 octobre 2013.
Comment créer une base de données noSQL par paires clés-valeurs en moins d'une heure, en se basant sur le bibliothèques Nanomsg et LightningDB.
This document contains the configuration and initialization code for a PHP web shell called c99shell. It sets variables for login credentials, directories, file types, aliases and other settings. It also includes code to handle cookies and sessions for the shell interface.
This document provides an overview of 0MQ (also known as ZeroMQ), a messaging library that enables various messaging patterns like request/reply, publish/subscribe, and queueing. It includes code examples in multiple languages like Erlang, Python, and PHP demonstrating how to implement common 0MQ patterns. Links are also provided for additional 0MQ resources.
This document provides an overview of 0MQ and examples of how to use it with PHP. It introduces 0MQ patterns like request/response, pub/sub, queue, and pipeline. Code snippets in PHP demonstrate implementing these patterns using 0MQ sockets. Additional resources for learning more about 0MQ and using it with PHP are provided at the end.
1) The document describes steps in a bioinformatics analysis pipeline that uses BLAST and CLUSTALW to perform sequence alignment and clustering on a query protein sequence from Homo sapiens (hsa:6469).
2) Each step is contained in a separate Ruby script (step10.rb through step60.rb) that retrieves data through REST/SOAP calls and passes output through text files.
3) The final step performs a multiple sequence alignment of BLAST hits passing the E-value threshold using CLUSTALW through a SOAP call and outputs the result.
The document discusses function call optimization in C++. It provides examples of constructor, base class constructor, and get/set method calls in both debug and release builds. In release builds, the compiler fully optimizes constructor calls and inlines non-virtual functions like get/set methods to improve performance. Only virtual functions cannot be optimized as their call sequence depends on runtime type.
ZeroMQ Is The Answer: PHP Tek 11 VersionIan Barber
This document provides an overview of ZeroMQ (0MQ), an asynchronous messaging library. It discusses 0MQ concepts like request/response, publish/subscribe, and pipelines. It includes code examples in PHP and Python demonstrating how to implement these patterns using 0MQ sockets and messaging. Additional sections cover 0MQ transport types, installation, and integrating 0MQ with other systems like Mongrel2.
Using Mikko Koppanen's PHP ZMQ extension we will look at how you can easily distribute work to background processes, provide flexible service brokering for your next service oriented architecture, and manage caches efficiently and easily with just PHP and the ZeroMQ libraries. Whether the problem is asynchronous communication, message distribution, process management or just about anything, ZeroMQ can help you build an architecture that is more resilient, more scalable and more flexible, without introducing unnecessary overhead or requiring a heavyweight queue manager node.
Conférence données à l'Open World Forum, 05 octobre 2013.
Comment créer une base de données noSQL par paires clés-valeurs en moins d'une heure, en se basant sur le bibliothèques Nanomsg et LightningDB.
This document contains the configuration and initialization code for a PHP web shell called c99shell. It sets variables for login credentials, directories, file types, aliases and other settings. It also includes code to handle cookies and sessions for the shell interface.
This document provides an overview of 0MQ (also known as ZeroMQ), a messaging library that enables various messaging patterns like request/reply, publish/subscribe, and queueing. It includes code examples in multiple languages like Erlang, Python, and PHP demonstrating how to implement common 0MQ patterns. Links are also provided for additional 0MQ resources.
This document provides an overview of 0MQ and examples of how to use it with PHP. It introduces 0MQ patterns like request/response, pub/sub, queue, and pipeline. Code snippets in PHP demonstrate implementing these patterns using 0MQ sockets. Additional resources for learning more about 0MQ and using it with PHP are provided at the end.
This document contains information about c99shell.php, a PHP-based file manager tool intended for hacking. It lists features like managing local and remote files/folders, an advanced SQL manager, executing shell commands and PHP code, and self-removal. The document provides configuration options, registered file types, command aliases, and notes on expected future changes.
This document contains the configuration and code for a PHP web shell. It sets various configuration options like the shell version, directories, file types, commands, and colors. It also checks for authentication if a login is set, sets PHP settings, merges request variables, and includes code to bypass safe mode restrictions. The code is for a backdoored web shell that provides access to the server's file system and allows execution of commands.
This document contains the configuration and settings for a PHP shell script called c99shell. It defines variables for authentication, directories, file types, commands, colors and other options. It checks the client's IP and host name against allowed patterns. If authentication is enabled, it will check the login and password. The script merges request parameters to global variables for use throughout.
Modern Getopt for Command Line Processing in PerlNova Patch
Getopt modules, such as Getopt::Long, are used for processing command line options. There are over sixty Getopt modules on CPAN, which can be intimidating to select from. This talk highlights some of the Getopt pearls that have been released in the past few years.
Presented at YAPC::NA 2011, June 28, Asheville, NC.
From mysql to MongoDB(MongoDB2011北京交流会)Night Sailer
The document summarizes differences between MySQL and MongoDB data types and operations. MongoDB uses BSON for data types rather than separate numeric, text and blob types. It supports embedded documents and arrays. Unlike MySQL, MongoDB does not have tables or rows, but collections and documents. Operations like insert, update, find, sort and index are discussed as alternatives to SQL equivalents.
The document provides instructions for configuring Postfix to integrate with Active Directory for user authentication. It includes configuring Postfix configuration files and LDAP settings to query user information from Active Directory for mail delivery, alias lookups, and more. Commands are provided to install required packages, configure ClamAV for antivirus scanning, and set up virtual users on the mail server using directories mounted from an iSCSI LUN.
This document contains PHP code for a backdoor shell. It defines various configuration settings like directories, login credentials, command aliases, and other functionality. The code authenticates the user, handles requests, and provides a basic interface for accessing the system.
This document contains PHP code for a backdoor shell. It defines configuration variables like login credentials, directories, command aliases, and other settings. It also handles authentication, sets up sessions and cookies, and has code to update the backdoor. The goal is to provide a remote access shell that can execute commands, browse files, and perform other operations on the compromised server.
This document contains PHP code for a backdoor shell. It defines configuration variables and settings for features like authentication, file operations, command aliases, and updating. Functions are defined for buffer handling, sorting parameters, and copying directories. The code sets configurations, checks for updates, handles authentication, and prepares for requested actions.
Teaching Your Machine To Find FraudstersIan Barber
The slides from my talk at PHP Tek 11.
When dealing with money online, fraud is an ongoing problem for both
consumers and sellers. Researchers have been developing statistical
and machine learning techniques to detect shady sellers on auction
sites, spot fraudulent payments on e-commerce systems and catch click
fraud on adverts. While there is no silver bullet, you will learn to
flag suspicious activity and help protect your site from scammers
using PHP and a little help from some other technologies.
Debugging: Rules And Tools - PHPTek 11 VersionIan Barber
The document provides rules and tools for debugging. It discusses understanding the system, making failures reproducible, quitting thinking and closely observing behaviors, dividing problems into smaller pieces, changing one thing at a time, and maintaining an audit trail of changes. Tools mentioned include Xdebug, Selenium, PHPUnit, strace, and source control systems. Logging, instrumentation, and testing techniques are also covered.
The document provides an agenda for a mini course on Ruby and Rails, covering topics such as Ruby, Rails, JRuby, JRubyOnRails, GlassfishOnRails, and JBossOnRails. It introduces Ruby as a dynamic, open source language with a natural syntax and focus on simplicity and productivity. Instructions are provided on installing Ruby on Ubuntu and testing the installation using irb and ruby commands.
The document provides an introduction to using DotCloud and Go. It discusses deploying a Perl application on DotCloud, including defining services in dotcloud.yml, connecting services to each other using environment variables, and pushing code to DotCloud. It also covers troubleshooting applications running on DotCloud using commands like dotcloud logs and dotcloud run.
Eric Redmond – Distributed Search on Riak 2.0 - NoSQL matters Barcelona 2014NoSQLmatters
Eric Redmond – Distributed Search on Riak 2.0
Riak excels at one type of query: key puts and key gets. But the world demands more from a database. Since Basho isn't primarily a search company, we decided to leverage the power of Solr for Riak 2.0. This is a walkthrough of what new features we added, how works, and why you'd want to use it. Also, of course, live demos.
In this presentation, Amit explains querying with MongoDB in detail including Querying on Embedded Documents, Geospatial indexing and Querying etc.
The tutorial includes a recap of MongoDB, the wrapped queries, queries which are using modifiers, Upsert (saving/ updating queries), updating multiple documents at once, etc. Moreover, it gives a brief explanation about specifying which keys to return, the AND/OR queries, querying on embedded documents, cursors and Geospatial indexing. The tutorial begins with a section about MongoDB which includes steps to install and start MongoDB, to show and select Database, to drop collection and database, steps to insert a document and get up to 20 matching documents. Furthermore, it also includes steps to store and use Javascript functions on the server side.
The next section after the MongoDB section is about wrapped queries and queries using modifiers which includes the types of wrapped queries which are used like LikeQuery, SortQuery, LimitQuery, SkipQuery. It also includes the types of queries using modifiers like NotEqualModifier, Greater/Lesser modifier, Increment Modifier, Set Modifier, Unset Modifier, Push Modifier etc. Then comes the section about Upsert (Save or update). There are steps mentioned for saving or updating queries in this section.
At the same time, there are steps to update multiple documents altogether. The next section which is called “specifying which keys to return” talks about ways to specify the keys the user wants. After this section comes OR/AND query. It informs us about the general steps to do an OR query. Also, it includes the general steps to do an AND query. After this section comes another section called “querying on embedded document” which tells the user about ways of querying for an embedded document.
One of the important sections of this tutorial is about cursors, uses of a cursor and also methods to chain additional options onto a query before it is performed. Following is a section about indexing which talks about indexing as a term and how indexing helps in improving the query’s speed. At the end is a section which gives a brief explanation on geospatial indexing which is another type of query that became common with the emergence of mobile devices. Also, it includes the ways geospatial queries can be performed.
The document shows code for parsing and handling XML using different Perl modules. It demonstrates parsing XML strings into DOM documents using XML::LibXML and XML::Liberal, handling XML encoding such as entities and namespaces, and extracting elements and contents from the parsed DOM documents.
This document provides a history of Node.js, beginning in 1987 and continuing through 2009 when Node.js was created. It discusses key events like the creation of JavaScript in 1995 and AJAX in 2005 that led to Node.js being developed. The document also covers Node.js fundamentals like its single-threaded event loop architecture, modules, require(), and streams.
1) The document discusses using Ensembl and BLAT to design PCR primers for the rat olfactory receptor gene Olr1082.
2) Ensembl provides the coding sequence and annotation for Olr1082, which has one exon and a 954bp coding sequence.
3) BLAT is used to align the Olr1082 coding sequence against the rat genome, confirming it is located on a single exon on the reverse DNA strand.
1) The document discusses various web APIs including Google Chart API and TogoWS. Google Chart API can be used to generate charts and graphs from data. TogoWS is a RESTful web service that allows retrieval of biological data from databases like NCBI, Ensembl through HTTP requests.
2) Methods for using Google Chart API and TogoWS are described. Google Chart API uses URL parameters to specify chart properties, data, and format. TogoWS allows retrieval of database entries and searching through RESTful HTTP requests to its endpoints.
3) Examples show how to generate line charts and scatter plots using Google Chart API and retrieve sequence and annotation data for genes using TogoWS REST requests. Dotplot
1) The document discusses various bioinformatics databases and tools that can be accessed through REST and SOAP web services, including KEGG, Ensembl, and UniProt.
2) It provides examples of querying these resources to retrieve gene and protein sequence data, perform BLAST searches, and generate multiple sequence alignments using ClustalW.
3) The document also outlines examples of scripts that can be written using Ruby to programmatically access these web services to analyze gene sequences like Sonic Hedgehog.
The document discusses various bioinformatics tools for sequence analysis, including BLAST, EMBOSS, and Dotplot. It provides instructions for downloading and installing BLAST and EMBOSS on Mac OS X, and describes how to use tools like BLASTN, BLASTP, and Dotmatcher in EMBOSS to compare DNA and protein sequences and generate dotplot alignments. Examples are given of using these tools to analyze makorin gene sequences from different species.
This document contains information about c99shell.php, a PHP-based file manager tool intended for hacking. It lists features like managing local and remote files/folders, an advanced SQL manager, executing shell commands and PHP code, and self-removal. The document provides configuration options, registered file types, command aliases, and notes on expected future changes.
This document contains the configuration and code for a PHP web shell. It sets various configuration options like the shell version, directories, file types, commands, and colors. It also checks for authentication if a login is set, sets PHP settings, merges request variables, and includes code to bypass safe mode restrictions. The code is for a backdoored web shell that provides access to the server's file system and allows execution of commands.
This document contains the configuration and settings for a PHP shell script called c99shell. It defines variables for authentication, directories, file types, commands, colors and other options. It checks the client's IP and host name against allowed patterns. If authentication is enabled, it will check the login and password. The script merges request parameters to global variables for use throughout.
Modern Getopt for Command Line Processing in PerlNova Patch
Getopt modules, such as Getopt::Long, are used for processing command line options. There are over sixty Getopt modules on CPAN, which can be intimidating to select from. This talk highlights some of the Getopt pearls that have been released in the past few years.
Presented at YAPC::NA 2011, June 28, Asheville, NC.
From mysql to MongoDB(MongoDB2011北京交流会)Night Sailer
The document summarizes differences between MySQL and MongoDB data types and operations. MongoDB uses BSON for data types rather than separate numeric, text and blob types. It supports embedded documents and arrays. Unlike MySQL, MongoDB does not have tables or rows, but collections and documents. Operations like insert, update, find, sort and index are discussed as alternatives to SQL equivalents.
The document provides instructions for configuring Postfix to integrate with Active Directory for user authentication. It includes configuring Postfix configuration files and LDAP settings to query user information from Active Directory for mail delivery, alias lookups, and more. Commands are provided to install required packages, configure ClamAV for antivirus scanning, and set up virtual users on the mail server using directories mounted from an iSCSI LUN.
This document contains PHP code for a backdoor shell. It defines various configuration settings like directories, login credentials, command aliases, and other functionality. The code authenticates the user, handles requests, and provides a basic interface for accessing the system.
This document contains PHP code for a backdoor shell. It defines configuration variables like login credentials, directories, command aliases, and other settings. It also handles authentication, sets up sessions and cookies, and has code to update the backdoor. The goal is to provide a remote access shell that can execute commands, browse files, and perform other operations on the compromised server.
This document contains PHP code for a backdoor shell. It defines configuration variables and settings for features like authentication, file operations, command aliases, and updating. Functions are defined for buffer handling, sorting parameters, and copying directories. The code sets configurations, checks for updates, handles authentication, and prepares for requested actions.
Teaching Your Machine To Find FraudstersIan Barber
The slides from my talk at PHP Tek 11.
When dealing with money online, fraud is an ongoing problem for both
consumers and sellers. Researchers have been developing statistical
and machine learning techniques to detect shady sellers on auction
sites, spot fraudulent payments on e-commerce systems and catch click
fraud on adverts. While there is no silver bullet, you will learn to
flag suspicious activity and help protect your site from scammers
using PHP and a little help from some other technologies.
Debugging: Rules And Tools - PHPTek 11 VersionIan Barber
The document provides rules and tools for debugging. It discusses understanding the system, making failures reproducible, quitting thinking and closely observing behaviors, dividing problems into smaller pieces, changing one thing at a time, and maintaining an audit trail of changes. Tools mentioned include Xdebug, Selenium, PHPUnit, strace, and source control systems. Logging, instrumentation, and testing techniques are also covered.
The document provides an agenda for a mini course on Ruby and Rails, covering topics such as Ruby, Rails, JRuby, JRubyOnRails, GlassfishOnRails, and JBossOnRails. It introduces Ruby as a dynamic, open source language with a natural syntax and focus on simplicity and productivity. Instructions are provided on installing Ruby on Ubuntu and testing the installation using irb and ruby commands.
The document provides an introduction to using DotCloud and Go. It discusses deploying a Perl application on DotCloud, including defining services in dotcloud.yml, connecting services to each other using environment variables, and pushing code to DotCloud. It also covers troubleshooting applications running on DotCloud using commands like dotcloud logs and dotcloud run.
Eric Redmond – Distributed Search on Riak 2.0 - NoSQL matters Barcelona 2014NoSQLmatters
Eric Redmond – Distributed Search on Riak 2.0
Riak excels at one type of query: key puts and key gets. But the world demands more from a database. Since Basho isn't primarily a search company, we decided to leverage the power of Solr for Riak 2.0. This is a walkthrough of what new features we added, how works, and why you'd want to use it. Also, of course, live demos.
In this presentation, Amit explains querying with MongoDB in detail including Querying on Embedded Documents, Geospatial indexing and Querying etc.
The tutorial includes a recap of MongoDB, the wrapped queries, queries which are using modifiers, Upsert (saving/ updating queries), updating multiple documents at once, etc. Moreover, it gives a brief explanation about specifying which keys to return, the AND/OR queries, querying on embedded documents, cursors and Geospatial indexing. The tutorial begins with a section about MongoDB which includes steps to install and start MongoDB, to show and select Database, to drop collection and database, steps to insert a document and get up to 20 matching documents. Furthermore, it also includes steps to store and use Javascript functions on the server side.
The next section after the MongoDB section is about wrapped queries and queries using modifiers which includes the types of wrapped queries which are used like LikeQuery, SortQuery, LimitQuery, SkipQuery. It also includes the types of queries using modifiers like NotEqualModifier, Greater/Lesser modifier, Increment Modifier, Set Modifier, Unset Modifier, Push Modifier etc. Then comes the section about Upsert (Save or update). There are steps mentioned for saving or updating queries in this section.
At the same time, there are steps to update multiple documents altogether. The next section which is called “specifying which keys to return” talks about ways to specify the keys the user wants. After this section comes OR/AND query. It informs us about the general steps to do an OR query. Also, it includes the general steps to do an AND query. After this section comes another section called “querying on embedded document” which tells the user about ways of querying for an embedded document.
One of the important sections of this tutorial is about cursors, uses of a cursor and also methods to chain additional options onto a query before it is performed. Following is a section about indexing which talks about indexing as a term and how indexing helps in improving the query’s speed. At the end is a section which gives a brief explanation on geospatial indexing which is another type of query that became common with the emergence of mobile devices. Also, it includes the ways geospatial queries can be performed.
The document shows code for parsing and handling XML using different Perl modules. It demonstrates parsing XML strings into DOM documents using XML::LibXML and XML::Liberal, handling XML encoding such as entities and namespaces, and extracting elements and contents from the parsed DOM documents.
This document provides a history of Node.js, beginning in 1987 and continuing through 2009 when Node.js was created. It discusses key events like the creation of JavaScript in 1995 and AJAX in 2005 that led to Node.js being developed. The document also covers Node.js fundamentals like its single-threaded event loop architecture, modules, require(), and streams.
1) The document discusses using Ensembl and BLAT to design PCR primers for the rat olfactory receptor gene Olr1082.
2) Ensembl provides the coding sequence and annotation for Olr1082, which has one exon and a 954bp coding sequence.
3) BLAT is used to align the Olr1082 coding sequence against the rat genome, confirming it is located on a single exon on the reverse DNA strand.
1) The document discusses various web APIs including Google Chart API and TogoWS. Google Chart API can be used to generate charts and graphs from data. TogoWS is a RESTful web service that allows retrieval of biological data from databases like NCBI, Ensembl through HTTP requests.
2) Methods for using Google Chart API and TogoWS are described. Google Chart API uses URL parameters to specify chart properties, data, and format. TogoWS allows retrieval of database entries and searching through RESTful HTTP requests to its endpoints.
3) Examples show how to generate line charts and scatter plots using Google Chart API and retrieve sequence and annotation data for genes using TogoWS REST requests. Dotplot
1) The document discusses various bioinformatics databases and tools that can be accessed through REST and SOAP web services, including KEGG, Ensembl, and UniProt.
2) It provides examples of querying these resources to retrieve gene and protein sequence data, perform BLAST searches, and generate multiple sequence alignments using ClustalW.
3) The document also outlines examples of scripts that can be written using Ruby to programmatically access these web services to analyze gene sequences like Sonic Hedgehog.
The document discusses various bioinformatics tools for sequence analysis, including BLAST, EMBOSS, and Dotplot. It provides instructions for downloading and installing BLAST and EMBOSS on Mac OS X, and describes how to use tools like BLASTN, BLASTP, and Dotmatcher in EMBOSS to compare DNA and protein sequences and generate dotplot alignments. Examples are given of using these tools to analyze makorin gene sequences from different species.
The document describes analyzing nucleotide sequences of the rhodopsin gene from human, chimpanzee and macaque. Key steps include:
1) Obtaining rhodopsin coding sequences from NCBI and writing them to a FASTA file
2) Performing a multiple sequence alignment using ClustalW
3) Calculating the transition/transversion ratio and genetic distance between species based on the alignment
1. The document analyzes differences between two regions, region B and region C, of the Makorin1-p1 gene in different mouse species.
2. A chi-square test finds significant differences in three pairs of species for the number of differences between region B and region C.
3. The Makorin1-p1 gene is likely a processed pseudogene containing a CpG island, and its region B may have evolved faster in the M. caroli lineage.
1) The document discusses using the Biostrings package in R to analyze DNA sequences of the Makorin1-p1 pseudogene from different Mus musculus subspecies, calculating the p-distance between sequences in regions B and C.
2) A phylogenetic tree shows the evolutionary relationships between different M. musculus subspecies and related species. Makorin1-p1 is found to have an ortholog in rats.
3) The methodology describes plans to use the Biostrings package to extract region B and region C sequences from a Makorin1-p1.fasta file for different M. musculus subspecies, and calculate p
The document discusses processing large sequence data files in parallel using Raku. It describes reading input sequences from files in fixed-size chunks, passing the chunks to worker threads for processing, and using techniques like gather/take and lazy evaluation to improve performance over alternative approaches. The key steps are:
1. Read the input file in chunks and pass chunks to worker threads for parallel processing.
2. Use gather/take and lazy evaluation to improve throughput over alternatives like forking processes or using channels that introduce overhead.
3. SHA sequences in parallel to detect duplicates while avoiding memory issues from comparing all pairs directly.
lldb kann mehr als nur einfache Breakpoints oder po. In dem Vortrag zeigt Oliver Bayer, wie sich mit Hilfe von lldb Programmcode zur Ausführungszeit manipulieren lässt, ohne das hierfür der Sourcecode anzupassen ist. Sei es, damit Test- oder Debugcode nicht in die produktiv App gelangt, oder weil der Sourcecode für einen Teil der App nicht vorliegt.
Event: macoun, 04.10.2019
Speaker: Oliver Bayer, inovex
Mehr Tech-Vorträge: inovex.de/vortraege
Mehr Tech-Artikel: inovex.de/blog
Presentation on how Puppet has been introduced in Seat Pagine Gialle to automate system administration tasks and easy the cooperation between Ops and Others.
The document provides information about using Ruby gems. It discusses installing rubygems with "sudo apt-get install rubygems", then installing specific gems like git with "gem install git". It provides an example of using the git gem to log commits between two versions. It also briefly mentions HAML, SASS, HPricot, RSpec, Cucumber, and OmniAuth gems.
Face it, backticks are a pain. BASH $() construct provides a simpler, more effective approach. This talk uses examples from automating git branches and command line processing with getopt(1) to show how $() works in shell scripts.
The document discusses testing practices for the Ruby programming language. It provides details on how to run various test suites that are part of the Ruby source code repository, including:
1. Running the "make test" command which runs sample tests, known bug tests, and tests defined in the test/ directory.
2. Running "make test-all" which runs core library and standard library tests under the test/ directory.
3. Running "make check" which builds encodings and extensions, runs all test tasks including test frameworks like Test::Unit and Minitest.
4. It also discusses strategies for merging test changes from external repositories like RubyGems and RDoc back into the Ruby source code
The document discusses API wrappers and why developers create them. Some key points:
- API wrappers provide idiomatic and Ruby-like access to APIs for Ruby developers rather than using raw HTTP requests.
- Wrappers can abstract away a complex API to simplify usage and provide a business domain model.
- Popular Ruby libraries for creating wrappers include HTTParty, RestClient, Weary, and Faraday. These handle HTTP requests and parsing responses.
- Middleware like Hashie and MultiJSON can be used to further Ruby-ify responses.
- Wrappers insulate code from potential API changes and leverage API documentation.
The document shows examples of using switch statements in Groovy with different data types and cases. It demonstrates matching strings, regular expressions, ranges, collections, objects, null values, and using a closure as a case.
A short and fast journey through some of the profiling options available in the Ruby 2.x world, including a look at flamegraphs and new ways of tracking memory usage in the MRI.
Ruby parsing tools include Regexp, Rex, PEG parsers like Treetop and Citrus, the Ripper parser introduced in Ruby 1.9, Bootstrap for bootstrapping Ruby, M17N for multilingual support, ERB for embedded Ruby, and Racc for parser generation. Ripper provides a way to parse and inspect Ruby code and handles syntax errors by raising exceptions with the offending source code and message. The Ruby scanner handles different types of literals and operators when parsing code for Ripper.
The document discusses advanced techniques in cocos2d programming. It begins with an introduction to cocos2d and how to learn it. It then covers advanced techniques like replacing scenes, pushing and popping scenes, scene transitions, TexturePacker, PVRTC texture compression, extruding sprites, IMA-ADPCM audio, preprocessor macros for coordinates, using CCBumper for intro scenes, and asynchronous resource loading with CCResourceAsyncLoader. The document provides examples and explanations for implementing these techniques.
MapReduce with Scalding @ 24th Hadoop London MeetupLandoop Ltd
This document summarizes a presentation about Scalding, which is a Scala API built on top of Cascading for Apache Hadoop. Some key points:
1) Scalding aims to simplify MapReduce development by providing a more functional and concise API in Scala compared to traditional approaches like Java MapReduce. Examples like word count require much less code.
2) Scalding works by compiling Scala pipelines into Cascading workflows, allowing it to run on any system supported by Cascading including Hadoop, databases, search platforms and more.
3) Features of Scalding include typesafety, built-in operations for sources/sinks, joins, grouping, and connecting to systems
Cleanliness is Next to Domain-SpecificityBen Scofield
This document discusses domain-specific languages (DSLs) and how programming languages can influence thought. It provides examples of Ruby code for querying a travel API using different approaches, from low-level HTTP requests to a more domain-focused interface. The document concludes by encouraging developers to start modestly, stay focused on the problem domain, and iteratively improve.
The document discusses using functional programming techniques in Perl to efficiently calculate tree hashes of large files uploaded in chunks to cloud storage services. It presents a tree_fold keyword and implementation that allows recursively reducing a list of values using a block in a tail-call optimized manner to avoid stack overflows. This approach is shown to provide concise, efficient and elegant functional code for calculating tree hashes in both Perl 5 and Perl 6.
This document provides an overview of data types in Perl, including scalars, arrays, and hashes. Scalars can hold single numeric or string values and are denoted with a dollar sign. Arrays hold collections of scalar values and are denoted with an at sign. Hashes store key-value pairs and are denoted with a percent sign. The document provides examples of declaring and accessing each data type, and describes common operations like sorting, iterating with foreach loops, and adding/removing elements from arrays.
(1) The document provides information about NCBI and Ensembl databases and how to use their viewers to search for genes and sequences. It explains how to search by keywords, accession numbers, and organism names.
(2) It describes the main features of the viewers including accessing gene summaries, alignments, orthologs, paralogs, synteny, and gene trees. Screenshots are included to show example outputs.
(3) Details are given about the file formats used for sequences (FASTA) and alignments (MSF, NEXUS) as well as how to export and configure the data displayed in the viewers. Orthologs are distinguished from paralogs based on divergence time
This document discusses the history and development of DNA sequencing technologies from 1953 to the present. Early methods like Sanger sequencing allowed sequencing of around 6,000 base pairs per day in 1985, increasing to 600,000 bp per day by 2000. The goal is now 100 gigabases per hour by 2010. DNA sequence data is stored in databases like GenBank, EMBL, and DDBJ. Emerging fields like genomics, transcriptomics, proteomics, and metabolomics are using high-throughput sequencing and associated '-omics' approaches to study biological systems.
This document discusses using Web APIs, specifically the Google Chart API, to generate charts and graphs. It provides:
1) An overview of what a Web API is and how it can be used to access functionality from another application over HTTP.
2) A description of the Google Chart API and how it can be used to generate charts as PNG images by specifying parameters in a URL.
3) Details on common parameters for the Google Chart API including how to specify chart size, data, type, and colors.
How to Fix the Import Error in the Odoo 17Celine George
An import error occurs when a program fails to import a module or library, disrupting its execution. In languages like Python, this issue arises when the specified module cannot be found or accessed, hindering the program's functionality. Resolving import errors is crucial for maintaining smooth software operation and uninterrupted development processes.
it describes the bony anatomy including the femoral head , acetabulum, labrum . also discusses the capsule , ligaments . muscle that act on the hip joint and the range of motion are outlined. factors affecting hip joint stability and weight transmission through the joint are summarized.
How to Build a Module in Odoo 17 Using the Scaffold MethodCeline George
Odoo provides an option for creating a module by using a single line command. By using this command the user can make a whole structure of a module. It is very easy for a beginner to make a module. There is no need to make each file manually. This slide will show how to create a module using the scaffold method.
বাংলাদেশের অর্থনৈতিক সমীক্ষা ২০২৪ [Bangladesh Economic Review 2024 Bangla.pdf] কম্পিউটার , ট্যাব ও স্মার্ট ফোন ভার্সন সহ সম্পূর্ণ বাংলা ই-বুক বা pdf বই " সুচিপত্র ...বুকমার্ক মেনু 🔖 ও হাইপার লিংক মেনু 📝👆 যুক্ত ..
আমাদের সবার জন্য খুব খুব গুরুত্বপূর্ণ একটি বই ..বিসিএস, ব্যাংক, ইউনিভার্সিটি ভর্তি ও যে কোন প্রতিযোগিতা মূলক পরীক্ষার জন্য এর খুব ইম্পরট্যান্ট একটি বিষয় ...তাছাড়া বাংলাদেশের সাম্প্রতিক যে কোন ডাটা বা তথ্য এই বইতে পাবেন ...
তাই একজন নাগরিক হিসাবে এই তথ্য গুলো আপনার জানা প্রয়োজন ...।
বিসিএস ও ব্যাংক এর লিখিত পরীক্ষা ...+এছাড়া মাধ্যমিক ও উচ্চমাধ্যমিকের স্টুডেন্টদের জন্য অনেক কাজে আসবে ...
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
The simplified electron and muon model, Oscillating Spacetime: The Foundation...RitikBhardwaj56
Discover the Simplified Electron and Muon Model: A New Wave-Based Approach to Understanding Particles delves into a groundbreaking theory that presents electrons and muons as rotating soliton waves within oscillating spacetime. Geared towards students, researchers, and science buffs, this book breaks down complex ideas into simple explanations. It covers topics such as electron waves, temporal dynamics, and the implications of this model on particle physics. With clear illustrations and easy-to-follow explanations, readers will gain a new outlook on the universe's fundamental nature.
How to Manage Your Lost Opportunities in Odoo 17 CRMCeline George
Odoo 17 CRM allows us to track why we lose sales opportunities with "Lost Reasons." This helps analyze our sales process and identify areas for improvement. Here's how to configure lost reasons in Odoo 17 CRM
This slide is special for master students (MIBS & MIFB) in UUM. Also useful for readers who are interested in the topic of contemporary Islamic banking.
Strategies for Effective Upskilling is a presentation by Chinwendu Peace in a Your Skill Boost Masterclass organisation by the Excellence Foundation for South Sudan on 08th and 09th June 2024 from 1 PM to 3 PM on each day.
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty,
International FDP on Fundamentals of Research in Social Sciences
at Integral University, Lucknow, 06.06.2024
By Dr. Vinod Kumar Kanvaria
This presentation includes basic of PCOS their pathology and treatment and also Ayurveda correlation of PCOS and Ayurvedic line of treatment mentioned in classics.
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...PECB
Denis is a dynamic and results-driven Chief Information Officer (CIO) with a distinguished career spanning information systems analysis and technical project management. With a proven track record of spearheading the design and delivery of cutting-edge Information Management solutions, he has consistently elevated business operations, streamlined reporting functions, and maximized process efficiency.
Certified as an ISO/IEC 27001: Information Security Management Systems (ISMS) Lead Implementer, Data Protection Officer, and Cyber Risks Analyst, Denis brings a heightened focus on data security, privacy, and cyber resilience to every endeavor.
His expertise extends across a diverse spectrum of reporting, database, and web development applications, underpinned by an exceptional grasp of data storage and virtualization technologies. His proficiency in application testing, database administration, and data cleansing ensures seamless execution of complex projects.
What sets Denis apart is his comprehensive understanding of Business and Systems Analysis technologies, honed through involvement in all phases of the Software Development Lifecycle (SDLC). From meticulous requirements gathering to precise analysis, innovative design, rigorous development, thorough testing, and successful implementation, he has consistently delivered exceptional results.
Throughout his career, he has taken on multifaceted roles, from leading technical project management teams to owning solutions that drive operational excellence. His conscientious and proactive approach is unwavering, whether he is working independently or collaboratively within a team. His ability to connect with colleagues on a personal level underscores his commitment to fostering a harmonious and productive workplace environment.
Date: May 29, 2024
Tags: Information Security, ISO/IEC 27001, ISO/IEC 42001, Artificial Intelligence, GDPR
-------------------------------------------------------------------------------
Find out more about ISO training and certification services
Training: ISO/IEC 27001 Information Security Management System - EN | PECB
ISO/IEC 42001 Artificial Intelligence Management System - EN | PECB
General Data Protection Regulation (GDPR) - Training Courses - EN | PECB
Webinars: https://pecb.com/webinars
Article: https://pecb.com/article
-------------------------------------------------------------------------------
For more information about PECB:
Website: https://pecb.com/
LinkedIn: https://www.linkedin.com/company/pecb/
Facebook: https://www.facebook.com/PECBInternational/
Slideshare: http://www.slideshare.net/PECBCERTIFICATION
Executive Directors Chat Leveraging AI for Diversity, Equity, and InclusionTechSoup
Let’s explore the intersection of technology and equity in the final session of our DEI series. Discover how AI tools, like ChatGPT, can be used to support and enhance your nonprofit's DEI initiatives. Participants will gain insights into practical AI applications and get tips for leveraging technology to advance their DEI goals.