Event Location:
Nivki Hall
Peremohy Ave 84
Kiev, Misto Kyyiv, Ukraine
Abstract:
How easy is it to hack a SQL Server? In this session we'll see a few examples on how to exploit SQL Server, modify data and take control, while at the same time not leaving a trace. We'll start by gaining access to a SQL Server (using some "creative" ways of making man-in-the-middle attacks), escalating privileges and tampering with data at the TDS protocol level (e.g. changing your income level and reverting without a trace after payment), and more. Most importantly, we'll also cover recommendations on how to avoid these attacks, and take a look at the pros and cons of new security features in SQL Server 2016. This is a demo-driven session, suited for DBAs, developers and security consultants (Jedi level). Disclaimer: No actual state secrets will be revealed. Please do not send agents to my house again.
Speaker(s): André Melancia,
Abstract:
To reach your desired business functionalities, it can be easy using some common T-SQL practices like MTVF , scalar functions , Temp tables, Union…etc and they might perform pretty well on development server coz neither adequate stress of users nor adequate volume of data exist there but actually they seem totally strange once going to live where they become performing badly ending up eventually with and sharp skew of performance and standstill cases sometimes , this is due to the lack of stress powers of T-SQL codes which should be considered largely for critical mission DBs in particular more therefore I am going to talk to you about How to capture expensive queries using different techniques ..?and How to optimize them in the shortest time using scientific ways ..? (10 different T-SQL Practices will be explained within this session)
Speaker(s): Shehab El-Najjar,
Abstract:
In times past, Data Science was only for those elite few with a rare combination of skills including advanced knowledge of statistics. Microsoft has been making sure that everyone can participate in the data revolution by giving people access to predictive API’s, in-database advanced analytics and drag-and-drop predictive experiments. All thanks to SQL Server 2016 and the Cortana Intelligence Suite in Azure. These advances have given people with less knowledge of statistics and programming the ability to become what Gartner calls citizen data scientists. Should we be worried about fools-with-tools or should we embrace the democratization of data science as the golden age of data? Using a combination of theory and demo’s, we explore Microsoft’s solutions to ensure democratization of data science and the possible dangers that lurk below the surface.
Speaker(s): Jan Mulkens,
Abstract:
Come round to talk about Application Lifecycle Management (ALM) and deployment/delivery of Business Intelligence (BI) Applications! You will learn how to manage and deploy a full stack BI solution with Team Foundation Server (TFS). I will share my view of end-to-end architecture of MS BI ALM and practical tips on how to make it happen with TFS toolkit, with specific examples for every MS BI project type. The presentation will also compare features of Release Manager and Octopus Deploy for your deployment needs will show a demo of continuous deployment for a typical BI project using TFS. The material does not assume prior knowledge of TFS administration, but some experience using Visual Studio database projects and general TFS terminology will be helpful.
Speaker(s): Dmytro Andriychenko,
Abstract:
Apache Kafka is the most popular open source stream-ingestion broker and can handle large numbers of reads and writes per second from thousands of clients. Apache Cassandra is an open source distributed database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. Kappa architecture based on Kafka and Cassandra clusters provides a powerful event processing solution for massive amounts of data produced by real-time applications. During the session we will dive into different aspects of building real-time streaming analytics, will review approaches of a kappa architecture implementation on Azure and will discuss experience of massive event processing and monitoring projects. All examples are taken from a real project for on-line monitoring of drones.
Speaker(s): Vitalii Bondarenko,
Abstract:
SQL Server is an extraordinarily powerful engine of relational databases, which lets you achieve high scalability of data platform. For many years SQL Server gains more and more new features and more efficient mechanisms including InMemory or ColumnStore Indexes. However, there is still many companies not using those features and struggling with performance issues, which the root cause turn out the problems with concurrency. Let's back to the basis then in order to better understand transaction isolation levels available in SQL Server. On this session we will learn about a concurrency issue, (not)expected behaviours, lost modifications and consider how to cope with them. I will tell what the optimistic and pessimistic concurrency models are, when use it and what tempdb has in common with them. Also, we will see in practice how dangerous (NOLOCK) might be which has being used so passionately by developers.
Speaker(s): Kamil Nowinski,
Abstract:
R language has for a long time been the most popular for data processing and statistical analysis. Among R's strengths are vibrian community and extensive repository of libraries for performing all kinds of analyses. However, major deficiency with R are that is slow, memory-bound and hard to operationalize.  The new release, MRS 9, goes even further. First off, it contains a Microsoft ML (machine learning) package - a collection of best-of-breed ML algorithms that have been battle-tested by Microsoft on a variety of its products. It includes improved logistic regression, fast boosted decision tree, fast random forest, GPU-accelerated Deep Neural Networks and One-Class Support Vector Machine (for outlisiers detections).  Furthermore with MRS 9 models that are trained in one environment can even be moved to, and scored in, ot
Speaker(s): Marcin Szeliga,
Abstract:
Microsoft surprised a lot of people with the announcement that SQL Server is going to be released for Linux. And there we have it - preview releases available in public are regularly delivered, working great and fast. On my session I'll show details of solution that allowed this idea to come true. We'll see how to install, use and administer Linux version of SQL Server. We'll see it working as a service and in Docker containers. I'll give you details of why the second option is really interesting, or to say it more clearly - groundbreaking. In addition to slides you're going to see lots of terminal windows, tools that are familiar to you and new stuff as well.
Speaker(s): Andrzej Kukula,
Abstract:
SQL Server is a high frequently used piece of software which need to serve single requests and/or hundreds of thousands of requests in a minute. Within these different kinds of workloads Microsoft SQL Server has to handle the concurrency of tasks in a fashion manner. This demo driven session shows different scenarios where Microsoft SQL Server has to wait and manage hundreds of tasks. See, analyze and solve different wait stats due to their performance impact: - CXPACKET: when a query goes parallel - ASYNC_IO_COMPLETION: speed up IO operations (Growth / Backup / Restore) - ASYNC_NETWORK_IO: What happens if your application refuses data? - THREADPOOL starvation: crush of requests for Microsoft SQL Server - PAGELATCH_xx: How does Microsoft SQL Server protects data?
Speaker(s): Uwe Ricken,
Abstract:
DML operations mean lot of work for the database engine of Microsoft SQL Server. Understanding the details of a DML transaction may give you great benefits when planning workloads for INSERT, UPDATE and DELETE operations. Come and learn the differences of space allocation/deallocation between Clustered Indexes and Heaps in this demo oriented session. It will answer these questions: What is the difference of data page allocation for heaps and clustered indexes? What is the amount of transaction log when you update data in a heap and/or in a clustered index? What are the differences when data are delete from a heap and clustered index? Can ETL processes be improved by usage of the right strategy for INSERTS and DELETES? What performance drawbacks have Page Splits and Forwarded Records for my application design?
Speaker(s): Uwe Ricken,
Abstract:
You probably know that with a stored procedure you can permit users to access or update data even if they have no direct permissions on the table. But you may have noticed that this does not work when the SP uses dynamic SQL. In this session you will learn why it is so and techniques how you can use to overcome this. You will also learn that the same techniques can be to permit users to perform specific actions they need to do without granting them general high-level permissions on database or server level by packaging these actions into a stored procedure. You will also learn why should should be careful with setting a database TRUSTWORTHY. The session should be of interest both to DBAs and application developers that need to consider advanced permissions in their stored procedures.
Speaker(s): Erland Sommarskog,
Abstract:
In an ideal world, we would not need any error handling, because there would be no errors. But in the real world we need to have error handling in our stored procedures. Error handling in SQL Server is a most confusing topic, because there are such great inconsistencies. But that does not mean that we as database developers can hide our head in the sand. This presentation will start with a horror show of the many different actions SQL Server can take in case of an error. We will then learn how should deal with this - what we should do and what we should not. We will learn how we should use TRY-CATCH and why we should use SET XACT_ABORT ON, and why it pays off to be simple-minded to survive in this maze.
Speaker(s): Erland Sommarskog,
Abstract:
HA/DR options with SQL Server are easy to design and deploy. With the changing arena in Azure and hybrid we need to be decisive to choose: HA/DR options with SQL Server are easy to design and deploy. With the changing arena in Azure and hybrid we need to be decisive to choose: What are all the high availability (HA) and disaster recovery (DR) options for SQL Server in a Azure VM (IaaS)? Which of these options can be used in a hybrid combination (Azure VM and on-prem)? This session will overview features such as Always On AG, Failover cluster, Azure SQL Data Sync, Log Shipping, SQL Server data files in Azure, Mirroring, Azure Site Recovery, and Azure Backup.
Speaker(s): Satya Jayanty,
Abstract:
Мы уже привыкли к тому, что облако даёт нам возможность гибко управлять вычислительными ресурсами, включать сервера если они нам нужны и выключать их если нагрузка упала. Но что если я скажу вам, что есть способ разработать приложение и разместить его в облаке так, что оно готово в любой момент откликнуться на ваш вызов, но если запросов к нему нет, то и денег оно не попросит? Представьте, что вы можете загрузить код в облако и платить не за виртуальную машину с фиксированным CPU, а за ещё более высокоуровневую абстракцию. Представьте, что у меня есть "бесконечных" размеров вычислительный кластер состоящий из 100500 виртуальных машин, которые готовы взяться за выполнение моих задач, а не просто хостить у себя мой код. В этом сценарии у нас отсутствует такое понятие как сервер в принципе. Наш вычислительный ресурс уже меряется количеством выполненных задач, которые к нам пришли, и суммарным временем работы кластера, которое было выделено для решения этих задач.
Speaker(s): Anton Boyko,
Abstract:
This session can be useful for DB Developers and Administrators that want to enhance their skills with such an amazing tool as PowerShell. Tag cloud: connection, multi-threading, cmdlets, scenarios and tasks, demo, Azure, new in 2016, script of the objects, etc.
Speaker(s): Andriy Pogorelov,
Abstract:
Microsoft Power BI Embedded is a Microsoft Azure that enables developers to integrate Power BI reports into their web or mobile applications so they don’t need to build custom solutions to visualize data for the users. Microsoft Power BI Embedded helps Independent Software Vendors to use Power BI data experiences within their applications. Customers, who use applications with Power BI Embedded don’t need to have a Power BI account or to know anything about this Azure service. This talk is a practical session on Microsoft Power BI Embedded concept with many examples how to create custom BI solutions using this technology.
Speaker(s): Mihail Mateev,
Abstract:
An application that you administer stores sensitive data in the database and you would like to keep them safe in Microsoft SQL Server - how to approach this issue? What type of encryption should you use in your environment? On the session I will walk through available options in Microsoft SQL Server and show when to use encryption, how to identify threats, and countermeasure them by using options like Transparent Data Encryption, SSL certificates, Always Encrypted, etc. After this session, you will know a set of best practices that you can apply in your environment.
Speaker(s): Michal Sadowski,
Abstract:
The current IoT devices are pretty powerful, so could very well run a version of SQL engine. It would be a good idea? What will be the use of it? How to make it work and make the most of it? How does all fit with the field gateway concept? During the presentation, we will take a real word scenario, real hardware, and together we will try to answer these questions
Speaker(s): Catalin Gheorghiu,
Abstract:
Azure SQL DWH is based on MS SQL Server and supports T-SQL. It helps to DB/DWH developers start using it without many efforts. Unfortunately, there are several limitations that could bring difficulties in your job. For example, we can't use MERGE statement for Upsert tasks in DWH, there is no IDENTITY or SEQUENCE, differences in implementing partition switching and so on. In this session, I'm going to cover several tips and tricks how we can handle with this limitations using available possibilities.
Speaker(s): Sergiy Lunyakin,
Abstract:
Data Factory is a cloud-based data integration service that orchestrates and automates the movement and transformation of data. You can create data integration solutions using the Data Factory service that can ingest data from various data stores, transform/process the data, and publish result data to the data stores. Cool. What is it? It is cloudy ETL? Really? Why can't I used SSIS? What is the difference between SSIS and Azure DataFactory? So come to my session and I can answer all question about Azure Data Factory.
Speaker(s): Eugene Polonichko,
Abstract:
BI teams usually not only deliver features , but also do the ad hoc reports, users support etc This way BI is not a canonical development team and no pure development methodology works "out of the box" . In my talk I would like to share my experience choosing and adjusting one.
Speaker(s): Maryna Popova,
Abstract:
How to implement best practices for SQL Server in a SharePoint Server farm
Speaker(s): Sergii Bielskyi,
Abstract:
В презентації буде розкзано, що таке статистика, яким чином вона збирається і модифікується. Розглянемо модель, на якій базується використання статистики, і зміни моделі в останніх версіях MS SQL Server. Буде багато практичних прикладів використання статистики оптимізатором запитів.
Speaker(s): Andrii Zrobok,
Abstract:
Anchor Modelling is a fantastic database modelling paradigm that uses sixth normal form (6NF) to store data and provides third normal form (3NF) views for ease of use. This session deep dives into all the concepts behind Anchor Modelling (and indeed databases generally!) and then takes you through how Anchor Modelling uses these concepts to move away from the traditional data warehouse paradigm to deliver a purely additive, agile database.
Speaker(s): Stephanie Locke,
Abstract:
PostgreSQL is very powerful RDBMS. One of the primary distinguishing features of PostgreSQL - and perhaps the number one reason to use it instead of another DBMS - is its extensibility and the large number of database extensions already available. In this talk I want show most useful extensions for PostgreSQL.
Speaker(s): Alexey Vasiliev,
Abstract:
So you've started sending data into Azure IoT Hub or Event hub and you want to start querying and aggregating your data stream. The preferred method of doing so is Stream Analytics, a subset of the T-SQL language. Join me to take a closer look at the language, the possibilities and limitations of it and how to make it work for you. We will look at inputs and outputs - and see some working samples.
Speaker(s): Johan Ludvig Brattås,
Abstract:
Analysis Services 2016 uses JSON as a format to store the metadata of a model and you can change it with C# using TOM (Tabular Object Model). The new object model has a one-to-one mapping between physical entities in the database and objects in the model. This is very usefull if you need to add or change measures without redeploying the whole project to server. For example, you need to generate set of new measures every year or end users want to add measures themselves and so on. Using TOM and meta-data table you can automate this process and save tons of time. Join this session for learning how to implement this.
Speaker(s): Sergiy Lunyakin,
Abstract:
This session will cover the main aspects to start or migrate from an OnPremise model to one of the two architectures available in SQL Server on Azure, providing the keys to select the more suitable environment for our requirements. We will cover: 1. Red pill or blue pill SQL Server on Azure VM (IaaS) vs SQL Azure DB (PaaS) Which one? 2. Always available. High availability in Azure 3. Now what ... Best practices and configuration connectivity.
Speaker(s): Jose Manuel Jurado Diaz,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
LinkedIn: https://www.linkedin.com/in/azrobok/
25+ years of experience in database development: development data-centric applications from scratch, support of legacy databases/applications, data migration tasks, performance tuning, consulting, database trainer. I have experience with wide range of databases such as FoxPro for DOS (Fox Software), MS SQL Server (started from version 6.5) , Oracle, Sybase ASE, MySQL, PostgreSQL. Co-Leader of PASS Local Chapter in Lviv. Speaker at PASS SQLSaturday conferences (since 2013); PASS Lviv/Vinnitsa/Virtual SQL Server User Group, EPAM IT Week (2015-2017), AIBig Data Day 2019.
Contact: http://www.sommarskog.se
Erland Sommarskog is an independent consultant based in Stockholm, working with SQL Server since 1991. He was first awarded SQL Server MVP in 2001, and has been re-awarded every year since. His focus is on systems development with the SQL Server Database Engine and his passion is to help people to write better SQL Server applications.
LinkedIn: https://www.linkedin.com/in/slunyakin
Contact: https://slunyakin.wordpress.com
Sergiy Lunyakin (MCSA, MCSE, MCTS) is a Big Data Architect at SoftServe, Inc. He has extensive experience in designing and developing Big Data Analytics, Data Warehouse, and BI solutions, using both on-premises and cloud products. In 2016, Sergiy became Microsoft Data Platform MVP and has since maintained his MVP status. Sharing knowledge is another one of his passions. He regularly speaks at international conferences such as SQLSaturday, SQLDay, SQLNexus, and SQLBits. He also runs the Lviv SQL Server User Group in Ukraine and organizes SQLSaturday Lviv.
LinkedIn: https://uk.linkedin.com/sqlmaster
Contact: http://www.sqlserver-qa.net
My experience surrounded with high focus on the data platform with a track record of defining strategy, designing and delivering digital transformation migrations with major enhancements to current working methods. Worked in a capacity of Head of Data Engineering, Enterprise Data Architect and Solutions Key career accomplishment recognition as an industry expert technical excellence from the Microsoft as Data Platform Most Valuable Professional (MVP) recognition since the year 2006 (13 years as MVP and counting), which recognizes exceptional technical community leaders worldwide who actively deliver, present share their extraordinary contributions, high quality, and real-world expertise. Twitter pod (http://twitter.com/sqlmast
LinkedIn: https://www.linkedin.com/profile/view?id=126446983amp;trk=hp-identity-name
Contact: http://sqlserver-performance-tuning.net/
Shehab El-Najjar was the ONLY Microsoft SQL Server MVP in Gulf for the past 6 years and the 2nd one all over the Middle East , he is the founder of SQL Gulf events series (SQL Gulf #1 , #2 and #3 ) where he spent so much time and efforts to broadcast Microsoft SQL Server technologies all over the Gulf such as KSA and Emirates and other Gulf cities ahead ..) He is now Professional Services Manager at Saudi Emircom He was previously COO and business leader in KSA market through his startup WAJA IT for 3 years He is an influencing Database community leader all over the region A senior Database Consultant (SQL Server MVP for 6 years in row) -The 2nd MVP awardee SQL Server all over Middle East and Arabic region
LinkedIn: https://uk.linkedin.com/in/andriychenko
Contact: http://www.data-united.co.uk
Dmytro Andriychenko has over 10 years of SQL Server experience working as analyst, admin, developer and designer. Dmytro is a Microsoft Certified BI Expert with plenty of experience in all components of SQL Server in a variety of business settings (Betting, Banking, Legal, NHS and Bio-Pharma). His most recent focus is on BI architecture and delivery.
LinkedIn: https://www.linkedin.com/in/johanludvig/
Contact: http://brattas.org/sqlmusings
Johan Ludvig Brattås is a managing consultant at Capgemini, and a dedicated community guy. He has worked with MS SQL server since late 1999, mostly with BI in one form or another. The last 6 years, most of his work has been in Azure working on data platforms, Power BI and the last three years expanding to Azure IoT and Stream Analytics. Combining his passion for Microsoft SQL Server with his passion for sharing knowledge, he has spoken at various events in the SQL Community. This is also a way to give back to the community for all the things he has learned over the years. When not working, Johan Ludvig either spends his time with his kids, playing with new technology, or teaching coeliacs how to bake glutenfree food.
LinkedIn: https://ua.linkedin.com/in/pogorelovandrey
I have been dealing with database administration and development for more than 16 years. Started from SQL Server 2000 - Active member of Data Platform community - Organizer of SQLSaturday Kharkiv - Speaker at various Data Platform related events - I possess Microsoft certificates: MCDBA, MCITP, MCSA.
LinkedIn: https://www.linkedin.com/in/janmulkens
Contact: http://www.janmulkens.be
Jan Mulkens is a Microsoft MVP in AI, a Solution Expert at Ordina Belgium, and a Microsoft Data Platform BI Consultant. In his spare time, he is a speaker at conferences and user groups in Europe and he organizes two user groups and a conference in Belgium. Power BI Days conference (www.powerbidays.com), Belgium Microsoft Advanced Analytics User Group (bit.ly/msaaug), and Flemish Power BI User Group (meetup.powerbibelgium.com).
LinkedIn: https://www.linkedin.com/in/slunyakin
Contact: https://slunyakin.wordpress.com
Sergiy Lunyakin (MCSA, MCSE, MCTS) is a Big Data Architect at SoftServe, Inc. He has extensive experience in designing and developing Big Data Analytics, Data Warehouse, and BI solutions, using both on-premises and cloud products. In 2016, Sergiy became Microsoft Data Platform MVP and has since maintained his MVP status. Sharing knowledge is another one of his passions. He regularly speaks at international conferences such as SQLSaturday, SQLDay, SQLNexus, and SQLBits. He also runs the Lviv SQL Server User Group in Ukraine and organizes SQLSaturday Lviv.
I've been designing data-centric systems for last 20 years and have gained huge experience in developing BI, AI and Big Data solutions. For the last 5 years I've mostly been focused on enterprise platform designing and implementing different innovative approaches for Fast Data Processing. At the moment I'm responsible for building Processional Services in Cloud Solutions for Enterprise Customers.
LinkedIn: https://pl.linkedin.com/in/marcinszeliga
Data Philosopher. Since 2006 invariably awarded Microsoft Most Valuable Professional title in the Data Platform category. A speaker at numerous conferences across Europe, as well as at user groups meetings. The author of many books and articles devoted to Microsoft Data Platform. An independent consultant, database-centric application practitioner and architect totally focused on SQL Server and Azure. Huge fan of Data Science and Machine Learning.
LinkedIn: https://www.linkedin.com/in/eugenepolonichko/
Contact: https://msolapblog.wordpress.com/
Leader of PASS Local Chapter in Donetsk (Ukraine). I work as DWH/BI architect. Responsible for designing and developing Data Warehouse and BI solutions with using Microsoft BI Stack products.
LinkedIn: https://www.linkedin.com/in/boykoant
Founder and main speaker at Ukrainian Microsoft Azure Community. 15+ years in application development. Builds apps based on Microsoft Azure platform since 2011. Microsoft Azure technical expert. Microsoft Azure MVP since 2014. Owner and one of the organizers of the most popular Microsoft Azure conferences in Ukraine: Azure Day and Global Azure Bootcamp.
LinkedIn: https://www.linkedin.com/in/jose-manuel-jurado-diaz-5a586014/
José Manuel Jurado currently works as SQL Escalation Engineer and Subject Matter Expert in Azure SQL Database at Microsoft Spain. With over 20+ years of experience in SQL Server environments (administration and database development), he is a speaker for internal events at Microsoft and for public events such as SQLSaturday, SQL Nexus, SQLBits, Pass Summit, SQL Server Konferenze, TechReady, DotNetConference, and Azure BootCamp. In the past, he worked as Project Manager for large global retail company for more than 10 years developing projects using different Microsoft Technologies.
LinkedIn: http://www.linkedin.com/profile/view?id=270775013amp;trk=tab_pro
Contact: http://www.sqlmaster.de
Uwe Ricken is working with IT systems since the 90’s. The primary passion for developments with Microsoft SQL Server expanded in 2007 with his engagement as a DBA for Deutsche Bank AG in Frankfurt am Main. After 6 years of operational experiences as a DBA and over 14 years as a developer of complex database models he achieved the “Microsoft Certified Master – SQL Server 2008” certification which “was” the highest technical certification. In the same year he earned his first award as a Data Platform MVP for his support to the Microsoft SQL Server community in Germany and Europe. Uwe Ricken is a speaker on many international conferences and events and preferred topics are “Database Internals”, “Indexing” and “Development”.
LinkedIn: http://www.linkedin.com/profile/view?id=270775013amp;trk=tab_pro
Contact: http://www.sqlmaster.de
Uwe Ricken is working with IT systems since the 90’s. The primary passion for developments with Microsoft SQL Server expanded in 2007 with his engagement as a DBA for Deutsche Bank AG in Frankfurt am Main. After 6 years of operational experiences as a DBA and over 14 years as a developer of complex database models he achieved the “Microsoft Certified Master – SQL Server 2008” certification which “was” the highest technical certification. In the same year he earned his first award as a Data Platform MVP for his support to the Microsoft SQL Server community in Germany and Europe. Uwe Ricken is a speaker on many international conferences and events and preferred topics are “Database Internals”, “Indexing” and “Development”.
LinkedIn: http://LinkedIn.COM/in/AndreMelancia
Contact: http://Andy.PT
Owner / Principal Consultant at LunarCat.PT Microsoft Certified Trainer (MCT) focusing on SQL Server, Azure, IoT and Security. 19+ years' fun developing information and multimedia systems, DBA, project and IT management. Data Community Portugal, IT Pro Portugal and PowerShell Portugal communities organiser. IPv6 Portugal, DNSSec Portugal and Windows Development Portugal online communities moderator. Actively volunteering, organising, speaking or just participating at community meetings and events around the world. Proud uncle and food devouring expert, with dangerous рuϧϧy cat as companion. Go to http://Andy.PT and you'll know the same as the NSA...
LinkedIn: https://uk.linkedin.com/in/stephanielocke
Contact: https://itsalocke.com
Steph Locke leads a life of data, coffee, books and board games. During the day, Steph runs her own consultancy helping people start doing data science. Steph enjoys being her own gal as it means she gets to spend plenty of time building communities to provide platforms for people to help each other be better with data.
I am a Big Data Engineer in a BI team. I have around 4 years of professional expertise in the Information Technologies industry, mainly all around data Engineering and Data Warehousing. I am working on my 3rd BI Project now. All of them are in different business areas and are using different technologies. What is common between them is the willingness to find the most proper development methodology as it is not a canonical development team and no development methodology works "out of the box" . In my talk I would like to share my experience in this area.
LinkedIn: https://www.linkedin.com/in/kamilnowinski/
Contact: https://sqlplayer.net
Blogger, speaker, #sqlfamily member. Microsoft Data Platform MVP. Data passionate, Data engineer and Architect. Over 13 years of programming and experience with SQL Server databases, he worked both as developer and administrator big databases designing systems from the scratch. Passionate about tuning database engines, code transparency and maximising performance database engine. Currently, he is expanding new horizons as a contractor in the UK market, making troubleshooting, prototyping BI and Big Data solutions, enhancing existing processes among Microsoft stuff environments, popularizing the DevOps approach and efficient solutions in the cloud. An originator of the "Ask SQL Family" podcast and founder of SQLPlayer blog.
Contact: http://www.sommarskog.se
Erland Sommarskog is an independent consultant based in Stockholm, working with SQL Server since 1991. He was first awarded SQL Server MVP in 2001, and has been re-awarded every year since. His focus is on systems development with the SQL Server Database Engine and his passion is to help people to write better SQL Server applications.
LinkedIn: https://www.linkedin.com/in/slunyakin
Contact: https://slunyakin.wordpress.com
Sergiy Lunyakin (MCSA, MCSE, MCTS) is a Big Data Architect at SoftServe, Inc. He has extensive experience in designing and developing Big Data Analytics, Data Warehouse, and BI solutions, using both on-premises and cloud products. In 2016, Sergiy became Microsoft Data Platform MVP and has since maintained his MVP status. Sharing knowledge is another one of his passions. He regularly speaks at international conferences such as SQLSaturday, SQLDay, SQLNexus, and SQLBits. He also runs the Lviv SQL Server User Group in Ukraine and organizes SQLSaturday Lviv.
Contact: http://leopard.in.ua
Ruby on Rails разработчик и Linux администратор в компании Railsware. Является автором таких продуктов как: PopCornUA, MongodbLogger, SmtRails, PIRO, Webp-ffi, Zopfli-ffi и многих других. Алексей является автором открытого учебного пособия по PostgreSQL на русском языке и по Chef на английском языке. Активный докладчик в различных IT конференциях.
LinkedIn: ?https://ro.linkedin.com/in/catalingheorghiu?
Contact: http://ronua.ro/author/catalin/
Catalin Gheorghiu is a solution architect from Romania. He has more than 15 years of experience in developing solutions, especially on Microsoft technologies in very demanding environments. Is contributing articles and blogs to several user groups (MrSmersh), lecturing all over Romania and abroad, is also RONUA Timisoara (PASS Chapter) user group leader. Since 2011, every year he was awarded the Microsoft MVP Award.
LinkedIn: https://www.linkedin.com/in/sergii-bielskyi-884a7a2b/
Contact: http://blogs.msdn.com/b/sergey_belskiy_technical_blog/
A multi-skilled expert with comprehensive experience of designing, developing and deploying Cloud and Hybrid architectures and infrastructure for software applications. Having over 5 years of IT experience Azure and SharePoint infrastructures. Possessing a proven ability to lead project teams to successfully deliver agreed upon solutions of the highest quality, often in complex and challenging customer environments. I have managed SharePoint Competence Center working in Lizard Soft. In my free time I organize events in community group, write articles in own blog, participate in conference as speaker. I have status MVP (Most Valuable Professional) for excellent promotion SharePoint technology - https://mvp.microsoft.com/en-us/PublicProfile
LinkedIn: https://www.linkedin.com/in/andrzejkukula
Consultant and trainer in SQLExpert.pl with more than 20 years of IT experience. Architect of HA/DR solutions, BI solutions, Data Platform solutions, cloud solutions. Solves SQL Server related problems, including performance tuning. Passionate about SQL Server and programming. Speaker at various conferences including SQLSaturday, SQLDay, SQLNexus, AzureDay, Global Azure Bootcamp and local user groups.
LinkedIn: https://pl.linkedin.com/pub/michal-sadowski/4/b33/717
Contact: https://sqlplayer.net/michal-sadowski
Senior Database Platform Engineer, leader of Krakow chapter of Data Community Krakow (former Polish SQL Server User Group) - PASS Chapter. With more than 10 years of experience in Microsoft technology, helps in advisory for performance optimization on database and application levels. Active speaker on SQL Server related events like SQLSaturday, SQLDay, MCT Global Summit etc. Holds many Microsoft certificates including MCSE: Data Platform, MCSA: SQL Server 2012/2014/2016, MCSA: Windows Server 2008/2012/2016 and MCT.
LinkedIn: http://www.linkedin.com/profile/view?id=270775013amp;trk=tab_pro
Contact: http://www.sqlmaster.de
Uwe Ricken is working with IT systems since the 90’s. The primary passion for developments with Microsoft SQL Server expanded in 2007 with his engagement as a DBA for Deutsche Bank AG in Frankfurt am Main. After 6 years of operational experiences as a DBA and over 14 years as a developer of complex database models he achieved the “Microsoft Certified Master – SQL Server 2008” certification which “was” the highest technical certification. In the same year he earned his first award as a Data Platform MVP for his support to the Microsoft SQL Server community in Germany and Europe. Uwe Ricken is a speaker on many international conferences and events and preferred topics are “Database Internals”, “Indexing” and “Development”.
LinkedIn: http://www.linkedin.com/pub/mihail-mateev/1/6b3/4b1
Contact: https://mmateev.wordpress.com/
Mihail Mateev is a technical consultant, community enthusiast, PASS Regional Mentor for CEE, chapter lead, Microsoft Azure MVP, Microsoft Regional Director. He works as a Senior Solutions Architect at EPAM Systems, focused on Data Platform, IoT and cloud related solutions. He also worked many years like a Technical evangelist in the Infragistics. Last years Mihail was focused on various areas related to technology Microsoft: Data Platform, Visual Studio, ASP.Net, Windows client apps, Data Platform, and Microsoft Azure. Michael also has a PhD in cloud computing area. He is a university lecturer on Smart Homes and Smart Energy IoT Solutions.
The following is a list of sponsors that helped fund the event.


A medium sized Minecraft mod using the Fabric engine. Adds multiple different models of Sonic Screwdriver, based on the show Doctor Who.
A much smaller mod to easily convert energy using smelting mechanics. It uses simple smelting to convert energy evenly between any mod.
Plenty of videos about some of my cooler Minecraft projects, mostly redstone.
For years I have also been working on a Redstone / Command Block TARDIS. It now uses a small chat based control system so that the console can be easily changed. Once a control room is registered one can walk in and out of any console room door. The outside materializes with a unique sequence and can be edited easily. There is a video of it on my channel.


| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | // SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.0; import "./GSNRecipient.sol"; import "../math/SafeMath.sol"; import "../access/Ownable.sol"; import "../token/ERC20/SafeERC20.sol"; import "../token/ERC20/ERC20.sol"; /** * @dev A xref:ROOT:gsn-strategies.adoc#gsn-strategies[GSN strategy] that charges transaction fees in a special purpose ERC20 * token, which we refer to as the gas payment token. The amount charged is exactly the amount of Ether charged to the * recipient. This means that the token is essentially pegged to the value of Ether. * * The distribution strategy of the gas payment token to users is not defined by this contract. It's a mintable token * whose only minter is the recipient, so the strategy must be implemented in a derived contract, making use of the * internal {_mint} function. */ contract GSNRecipientERC20Fee is GSNRecipient { using SafeERC20 for __unstable__ERC20Owned; using SafeMath for uint256; enum GSNRecipientERC20FeeErrorCodes { INSUFFICIENT_BALANCE } __unstable__ERC20Owned private _token; /** * @dev The arguments to the constructor are the details that the gas payment token will have: `name` and `symbol`. `decimals` is hard-coded to 18. */ constructor(string memory name, string memory symbol) public { _token = new __unstable__ERC20Owned(name, symbol); } /** * @dev Returns the gas payment token. */ function token() public view returns (IERC20) { return IERC20(_token); } /** * @dev Internal function that mints the gas payment token. Derived contracts should expose this function in their public API, with proper access control mechanisms. */ function _mint(address account, uint256 amount) internal virtual { _token.mint(account, amount); } /** * @dev Ensures that only users with enough gas payment token balance can have transactions relayed through the GSN. */ function acceptRelayedCall( address, address from, bytes memory, uint256 transactionFee, uint256 gasPrice, uint256, uint256, bytes memory, uint256 maxPossibleCharge ) public view virtual override returns (uint256, bytes memory) { if (_token.balanceOf(from) < maxPossibleCharge) { return _rejectRelayedCall(uint256(GSNRecipientERC20FeeErrorCodes.INSUFFICIENT_BALANCE)); } return _approveRelayedCall(abi.encode(from, maxPossibleCharge, transactionFee, gasPrice)); } /** * @dev Implements the precharge to the user. The maximum possible charge (depending on gas limit, gas price, and * fee) will be deducted from the user balance of gas payment token. Note that this is an overestimation of the * actual charge, necessary because we cannot predict how much gas the execution will actually need. The remainder * is returned to the user in {_postRelayedCall}. */ function _preRelayedCall(bytes memory context) internal virtual override returns (bytes32) { (address from, uint256 maxPossibleCharge) = abi.decode(context, (address, uint256)); // The maximum token charge is pre-charged from the user _token.safeTransferFrom(from, address(this), maxPossibleCharge); return 0; } /** * @dev Returns to the user the extra amount that was previously charged, once the actual execution cost is known. */ function _postRelayedCall(bytes memory context, bool, uint256 actualCharge, bytes32) internal virtual override { (address from, uint256 maxPossibleCharge, uint256 transactionFee, uint256 gasPrice) = abi.decode(context, (address, uint256, uint256, uint256)); // actualCharge is an _estimated_ charge, which assumes postRelayedCall will use all available gas. // This implementation's gas cost can be roughly estimated as 10k gas, for the two SSTORE operations in an // ERC20 transfer. uint256 overestimation = _computeCharge(_POST_RELAYED_CALL_MAX_GAS.sub(10000), gasPrice, transactionFee); actualCharge = actualCharge.sub(overestimation); // After the relayed call has been executed and the actual charge estimated, the excess pre-charge is returned _token.safeTransfer(from, maxPossibleCharge.sub(actualCharge)); } } /** * @title __unstable__ERC20Owned * @dev An ERC20 token owned by another contract, which has minting permissions and can use transferFrom to receive * anyone's tokens. This contract is an internal helper for GSNRecipientERC20Fee, and should not be used * outside of this context. */ // solhint-disable-next-line contract-name-camelcase contract __unstable__ERC20Owned is ERC20, Ownable { uint256 private constant _UINT256_MAX = 2**256 - 1; constructor(string memory name, string memory symbol) public ERC20(name, symbol) { } // The owner (GSNRecipientERC20Fee) can mint tokens function mint(address account, uint256 amount) public onlyOwner { _mint(account, amount); } // The owner has 'infinite' allowance for all token holders function allowance(address tokenOwner, address spender) public view override returns (uint256) { if (spender == owner()) { return _UINT256_MAX; } else { return super.allowance(tokenOwner, spender); } } // Allowance for the owner cannot be changed (it is always 'infinite') function _approve(address tokenOwner, address spender, uint256 value) internal override { if (spender == owner()) { return; } else { super._approve(tokenOwner, spender, value); } } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { if (recipient == owner()) { _transfer(sender, recipient, amount); return true; } else { return super.transferFrom(sender, recipient, amount); } } } |


Hello, I’m Fred and I write some pretty awesome code. With my background in design and my passion for programming, I pride myself in creating an attractive and user driven front end while maintaining a functional and organized back end. I thrive on finding creative solutions to programming conundrums. With 7 years of experience in front end development, I’ve been able to help focus various teams in moving to newer tech. I have also planned and developed new features as needed on multiple projects. I love the challenge of learning new languages and tech and I can pick it up quickly.
As the lead front end developer I helped focus the efforts of the new platform build moving toward ReactJS. Updated the look and feel based on the new design and moving to the current version of bootstrap. Trouble shooting and fixing bugs on the old platform, while working with the back end developers to update the database.
I planned and developed new features for the axomo platform while fixing bugs. I used AngularJS, Javascript and AJAX on the frontend while using aspx.net, C# and SQL on the backend. I also used Visual Studio for our IDE and version control. One of the main projects that I worked on was the axomo.com product builder. This feature helps clients design, create, and save their promotional products.
I was apart of the planning and development of the new site that was implementing newer technologies from the previous version. On the frontend there was AngularJS, Javascript. On the backend there was NodeJS, Docker, and RethinkDB with Github for version control.
I would design and develop custom websites based on client specifications using the Wordpress content platform. I used HTML5 and CSS3 to enhance the look and feel of the themes. As the graphic designer, I handled the specialty info-graphic and motion graphic design requests from clients.
Using a client brief and working closely with the team lead, I designed & developed custom websites based on clients needs. I used HTML5 and CSS3 to enhance the look and feel of wordpress themes.
From day one Fred has been great to work with. He was our lead Front End developer here at Blade HQ and he fulfilled that job expertly! He is a very knowledgeable, capable and passionate front end developer. He is a reliable, energetic and hardworking employee. He is always willing to help in all stages of the development process and wherever the company needed his help. His attitude and sense of humor is a great combination to work with. His ability to collaborate with everyone in our IT department and with other departments is an asset. I highly recommend Fred as a Front End developer and am grateful to have had the opportunity to work with him!
Fred is easy to get along with, hard working, well-learned in his trade, and passionate about expanding his knowledge base. He would make a strong addition to any front-end web development team, and I will miss working with him!
Fred is a really easy going individual, so it is really easy to get along with him and to work with him. During my time at Namify his help has proven to be invaluable when it comes to the Front End. Whenever I needed help with Angular or some CSS Styling, Fred either knew the answer or was able to find it really quickly. He has a good sense for making things look good.
"Dependable" is the word that comes to mind when I think of Fred. I had the pleasure of working closely with him while overseeing a complex e-commerce platform we worked on together. On more than one occasion, I was thrilled to see the attention to detail he put into even the smallest of tasks. It is apparent from the quality of his work that he takes great pride in what he does.
Fred has a personality that you just can't help but like. I obviously have a great deal of respect for him as a developer but I also know he is an amazing friend, husband, and father. Fred earns my highest recommendation.


Filename
Description
Loading links. (Refresh page if it doesn't work.)
Select
Deselect
Add by filename pattern
Start download (0 files)
Downloading:
0
Queued:
0
Finished:
0
Clear downloads


Faculty and Staff
❮
Loading...
❯
Picture of: John Doe
Professor, Bio-Organic Chemistry
Department of Chemistry
About this Person:
Office: SLW 3125 (map on contact us)
Office Hours: MW 1-2pm
Phone:<PHONE_NUMBER>(Office)
Phone:<PHONE_NUMBER>(Lab)
Email<EMAIL_ADDRESS>Personal Website
Office: SLW 3125 (map on contact us)
Office Hours: MW 1-2pm
Phone:<PHONE_NUMBER>(Office)
Phone:<PHONE_NUMBER>(Lab)
Email<EMAIL_ADDRESS>Personal Website


|
About me
No bio available. |
No description available.
|
|
Featured Project 2
No description available.
|
Other projects by Michael
Project 1
Project 2
Project 3
Project 4
Project 5
Project 6
|


Home
About us
List Existing Activity
Create A New Activity
Current Available Activities
Pending Requests
Thank you for contacting us. We'll be in contact soon!


Hello!
This is the home of the Leaprezi - Leap Motion for your Web Prezi presentations
More details at GitHub
Important Please be aware that the status of the Prezi API is alpha, which may cause this demo to malfunction. Try to disable your adblock if the presentation is not loading.
Swipe with one hand to the left or to the right on top of the Leap Motion to navigate to the next or previous slide respectively - the hand shouldn't be totally flat.


acid oleanolic cancer cells Oleanolic cell Cancer apoptosis effects signaling Liu Zhang human activity Chem. pathway {border-style Wang anticancer px;} #ffffff;} tumor Acid carcinoma ursolic acid, activation death ./s--- Food Res. effect expression inhibition protein breast caspase- pathways Biol. Lin Sun bioavailability induced potential various Cell compounds different hepatocellular increased induces lung vitro Med. colon derivatives fruits including inhibited kinase plant pro-apoptotic receptors Mol. [], cells. clinical dietary extracts high levels low mediated natural novel phase plants prevention px; reported vivo {font-family Anticancer Lett. Sci. Yang Zhao cytochrome font-size leukemia lines olive phytochemicals role studies triterpenoid Agric. Int. Kim MAPK Rep. TRAIL chemotherapeutic cytotoxic double; drug evidence gastric induce methyl pancreatic products proliferation proteins suppresses synthetic therapeutic use ./j.foodchem... Bishayee Chinese Drug Guo L., Oncol. Toxicol. Wei Zheng acid. addition, anti-apoptotic apoptosis-inducing arrest autophagy bioactive border-color border-width cancer. conditions cycle extract factor growth increase induction inhibits invasion leading liver mitochondrial molecular new oral prostate range resistance showed significant solid; study suppression therapy treatment {font-style {font-weight ./j.canlet... Bax Biochem. Biophys. Crataegus Curr. Ethnopharmacol. Gao Han However, Huang Importantly, Lee Mediterranean Pharm. ROS Rev. SZC, Sethi Seyed Song Ther. Therefore, acids activates acute and, article bold cascades caspase chronic colorectal compounds, consumed containing courier; derivative, derivatives, diet effective em; fruit healthy important inhibitor intracellular isolated mainly manner medicinal metastasis micromolar mitochondrial-dependent mouse multi-drug necessary numerous oil osteosarcoma pentacyclic pharmacological plays presence present products, proliferation, proteins, pt;} receptor reduced selective skin solubility sources stress triterpenic triterpenoids types


“With the following LTC news, I think we may see a pretty intense pump in the coming 30 days:”
- SegWit activation occurring within 10 days
- Coinbase addition imminent
- More Coinbase proof
- Their version of Raiden (Lightning Network) will be out shortly
- The LTC foundation converting their entire store of BTC over to LTC (showing they are in it for the long haul)
Meant as a short term opportunity.
link


Choose Your Favorite Items!
We're here to sell you cool stuff you don't need. It will end up on your shelf and in a year you'll wonder why you even bought it. It won't matter at all because we sell such cool stuff. In 5 years you'll find it on a shelf and you'll wonder why you even bought it. But again, it won't matter because cool stuff is just cool. In 10 years you'll find it on a shelf and you'll wonder why you even bought it. But again, by now you'll have the whole collection and it won't matter because cool stuff is just cool. You won't be able to part with it because it just wouldn't be right.


Writing Documentation
This section explains how the community can contribute to the Coral Project documentation.
You can contribute to the documentation by editing existing documents for clarity or correcting errors. Additionally, any new features or changes to the software should be thoroughly documented.
Here is, briefly, how our documentation works:
- The source documentation lives in GitHub at https://github.com/coralproject/docs/.
- The documentation is hosted on Heroku.
- The documentation is built using MkDocs, a Markdown-based static site generator (geared towards building project documentation).
- The document is deployed using a simple Mkdocs command that builds the documentation, and then the resulting generated site is pushed to Heroku.
Style Guide
There is a separate page for the documentation style guide, that covers guidelines for how to organize and write instructions and tutorials, how to format text for consistency, and terminology.
How the documentation is organized
The documentation is organized into several categories:
- Introduction: This offers a general overview of the Coral Project and its different components.
- Developer Guide: This provides information for technical users of the Coral Project. It offers installation instructions for the Coral Ecosystem as a whole, as well as installation instructions for each individual component.
- User Guide: This provides information for end users (publishers, journalists, moderators, readers) on how to use the features of Coral. It includes tutorials and how-to guides.
- Contribute: This provides information on how to contribute to the Coral Project through open source. There are sections for the developers (how to work with GitHub, etc.), as well as sections for those who want to contribute to other pieces of the Coral Project (such as the documentation!).
- FAQ
How to obtain, write, and deploy documentation
Our documentation is hosted and deployed through GitHub. This guide will take you step by step through the process of getting the documentation on to your local machine, editing the documentation, and submitting your changes. If you’ve never worked with Git before, it might seem a little intimidating, but we’ve broken it down for you into manageable chunks.
Briefly, the process is as follows:
- First, you will get the documentation source code, using Git.
- Then, you will work on the documentation. You will use Mkdocs and Markdown to write the documentation.
- Then, you will push your changes to GitHub.
- Finally, you will deploy the documentation. The documentation is deployed using a simple Mkdocs command that builds the documentation, and then the resulting generated site is pushed to Heroku.
Install and set up Git
If you don’t already have Git installed, you’ll want to get that set up first. You’ll have to download and install Git. You can read more about Git on their website.
You will also have to create a GitHub account, which is a very straightforward process.
After installing Git, the first thing you should do is setup your name and email using the following commands:
git config --global user.name "Your Real Name"
git config --global user.email<EMAIL_ADDRESS>Note that user.name should be your real name, not your GitHub username. The email you use in the user.email field will be used to associate your commits with your GitHub account.
Install MkDocs
The Coral Project’s documentation uses the MkDocs documentation system, which uses Markdown to format text. Before you can get started on writing and editing the documentation, you will need to have MkDocs installed.
You can download and install MkDocs using the instructions on their website. The MkDocs website also contains a lot of good information on writing documentation in MkDocs, and there are plenty of decent Markdown cheatsheets floating around, like this one.
Getting the documentation
All of the documentation for the Coral Project resides in GitHub in the docs
repository.
To get a local version of the documentation, clone the repository using this command:
git clone https://github.com/coralproject/docs.git
You now have a local copy of the documentation on your local machine, that you can modify and add to.
Note: If you already have a local copy of the documentation repository on your computer, be sure to perform a git pull
before you start editing. This will ensure that you are working on the most recent available version of the documentation, which will prevent potential merge conflicts when you’re ready to commit your changes.
Writing and editing the documentation
The documents you’ll be editing are the .md Markdown files located in the docs_dir
directory. DO NOT edit the files in the site
directory. Those files are the static HTML files generated by MkDocs and pushed to Heroku. If you edit the static HTML files, those changes won’t get saved to the Markdown files.
As you are writing and editing the documentation, refer to the Documentation Style Guide to make sure you are remaining consistent with our current documentation standards, and writing the best and clearest documentation possible.
Commit your changes
Once you’ve finished your edits, it’s time to commit your changes back up to the remote repository on GitHub.
First, you’ll add your changes, where <filename>
is the name of the file or files that you have changed.
git add <filename>
Then, you’ll commit your changes. Be sure to add a commit message (the portion within the single quotations) to let everyone know what it is that you’ve changed. The -m
flag is what tells Git that you’re adding a commit message.
git commit -m 'Updated the Ask tutorial'
Finally, push your changes up to the remote repository:
git push origin master
Deploy the documentation
Now that the documentation has been updated and committed to the repository, you can deploy the documentation. The documentation is hosted on Heroku, so in order to deploy it, we need to first build the files that make up the site, and then push those files up to Heroku.
First ensure that you have the latest version of the documentation on your local machine:
git pull
Then, run the following command:
mkdocs build --clean
The build
command builds the documentation, creating the HTML pages that make up the site, and places those files in the site
directory.
Now you’ll add the changed files using Git, in preparation for pushing them to Heroku to deploy them. Add a meaningful commit message.
git add site
There is one file that you have to “unadd” before you push to Heroku: the site/index.php
file.
To https://git.heroku.com/coralprojectdocs.git
676aaa0..7e019f8 7e019f85487fe84efeb7cebcb33f9dff6782c8fb -> master


A Promise is an object representing the eventual completion or failure of an asynchronous operation. Since most people are consumers of already-created promises, this guide will explain consumption of returned promises before explaining how to create them.
Essentially, a promise is a returned object to which you attach callbacks, instead of passing callbacks into a function.
Imagine a function, createAudioFileAsync(), which asynchronously generates a sound file given a configuration record and two callback functions, one called if the audio file is successfully created, and the other called if an error occurs.
Here's some code that uses createAudioFileAsync():
function successCallback(result) {
console.log("Audio file ready at URL: " + result);
}
function failureCallback(error) {
console.log("Error generating audio file: " + error);
}
createAudioFileAsync(audioSettings, successCallback, failureCallback);
…modern functions return a promise you can attach your callbacks to instead:
If createAudioFileAsync() were rewritten to return a promise, using it could be as simple as this:
createAudioFileAsync(audioSettings).then(successCallback, failureCallback);
That's shorthand for:
const promise = createAudioFileAsync(audioSettings);
promise.then(successCallback, failureCallback);
We call this an asynchronous function call. This convention has several advantages. We will explore each one.
Unlike old-style passed-in callbacks, a promise comes with some guarantees
- Callbacks will never be called before the completion of the current run of the JavaScript event loop.
- Callbacks added with then() even after the success or failure of the asynchronous operation, will be called, as above.
- Multiple callbacks may be added by calling then() several times. Each callback is executed one after another, in the order in which they were inserted.
One of the great things about using promises is chaining.
A common need is to execute two or more asynchronous operations back to back, where each subsequent operation starts when the previous operation succeeds, with the result from the previous step. We accomplish this by creating a promise chain.
Here's the magic: the then() function returns a new promise, different from the original:
const promise = doSomething();
const promise2 = promise.then(successCallback, failureCallback);
or
const promise2 = doSomething().then(successCallback, failureCallback);
This second promise represents the completion not just of doSomething(), but also of the successCallback or failureCallback you passed in, which can be other asynchronous functions returning a promise. When that's the case, any callbacks added to promise2 get queued behind the promise returned by either successCallback or failureCallback.
Basically, each promise represents the completion of another asynchronous step in the chain.
In the old days, doing several asynchronous operations in a row would lead to the classic callback pyramid of doom:
doSomething(function(result) {
doSomethingElse(result, function(newResult) {
doThirdThing(newResult, function(finalResult) {
console.log('Got the final result: ' + finalResult);
}, failureCallback);
}, failureCallback);
}, failureCallback);
With modern functions, we attach our callbacks to the returned promises instead, forming a promise chain:
doSomething().then(function(result) {
return doSomethingElse(result);
})
.then(function(newResult) {
return doThirdThing(newResult);
})
.then(function(finalResult) {
console.log('Got the final result: ' + finalResult);
})
.catch(failureCallback);
The arguments to then are optional, and catch(failureCallback) is short for then(null, failureCallback). You might see this expressed with arrow functions instead:
doSomething()
.then(result => doSomethingElse(result))
.then(newResult => doThirdThing(newResult))
.then(finalResult => {
console.log(`Got the final result: ${finalResult}`);
})
.catch(failureCallback);
Important: Always return results, otherwise callbacks won't catch the result of a previous promise.
It's possible to chain after a failure, i.e. a catch, which is useful to accomplish new actions even after an action failed in the chain. Read the following example:
new Promise((resolve, reject) => {
console.log('Initial');
resolve();
})
.then(() => {
throw new Error('Something failed');
console.log('Do this');
})
.catch(() => {
console.log('Do that');
})
.then(() => {
console.log('Do this, no matter what happened before');
});
This will output the following text:
// Initial
// Do that
// Do this, no matter what happened before
Note that the text "Do this" is not output because the "Something failed" error caused a rejection.
You might recall seeing failureCallback three times in the pyramid of doom earlier, compared to only once at the end of the promise chain:
doSomething()
.then(result => doSomethingElse(result))
.then(newResult => doThirdThing(newResult))
.then(finalResult => console.log(`Got the final result: ${finalResult}`))
.catch(failureCallback);
Basically, a promise chain stops if there's an exception, looking down the chain for catch handlers instead. This is very much modeled after how synchronous code works:
try {
const result = syncDoSomething();
const newResult = syncDoSomethingElse(result);
const finalResult = syncDoThirdThing(newResult);
console.log(`Got the final result: ${finalResult}`);
} catch(error) {
failureCallback(error);
}
This symmetry with synchronous code culminates in the async/await syntactic sugar in ECMAScript 2017:
async function foo() {
try {
const result = await doSomething();
const newResult = await doSomethingElse(result);
const finalResult = await doThirdThing(newResult);
console.log(`Got the final result: ${finalResult}`);
} catch(error) {
failureCallback(error);
}
}
It builds on promises, e.g. doSomething() is the same function as before. You can read more about the syntax here.
Promises solve a fundamental flaw with the callback pyramid of doom, by catching all errors, even thrown exceptions and programming errors. This is essential for functional composition of asynchronous operations.
A Promise can be created from scratch using its constructor. This should be needed only to wrap old APIs.
In an ideal world, all asynchronous functions would already return promises. Alas, some APIs still expect success and/or failure callbacks to be passed in the old way. The quintessential example is the setTimeout() function:
setTimeout(() => saySomething("10 seconds passed"), 10000);
Mixing old-style callbacks and promises is problematic. If saySomething() fails or contains a programming error, nothing catches it.
Luckily we can wrap it in a promise. Best practice is to wrap problematic functions at the lowest possible level, and then never call them directly again:
const wait = ms => new Promise(resolve => setTimeout(resolve, ms));
wait(10000).then(() => saySomething("10 seconds")).catch(failureCallback);
Basically, the promise constructor takes an executor function that lets us resolve or reject a promise manually. Since setTimeout() doesn't really fail, we left out reject in this case.
Promise.resolve() and Promise.reject() are shortcuts to manually create an already resolved or rejected promise respectively. This can be useful at times.
Promise.all() and Promise.race() are two composition tools for running asynchronous operations in parallel.
Sequential composition is possible using some clever JavaScript:
[func1, func2].reduce((p, f) => p.then(f), Promise.resolve());
Basically, we reduce an array of asynchronous functions down to a promise chain equivalent to: Promise.resolve().then(func1).then(func2);
This can also be done with a reusable compose function, which is common in functional programming:
const applyAsync = (acc,val) => acc.then(val);
const composeAsync = (...funcs) => x => funcs.reduce(applyAsync, Promise.resolve(x));
The composeAsync() function will accept any number of functions as arguments, and will return a new function that accepts an initial value to be passed through the composition pipeline. This is beneficial because any or all of the functions may be either asynchronous or synchronous, and they are guaranteed to be executed in the correct order:
const transformData = composeAsync(func1, asyncFunc1, asyncFunc2, func2);
transformData(data);
In ECMAScript 2017, sequential composition can be done more simply with async/await:
for (const f of [func1, func2]) {
await f();
}
To avoid surprises, functions passed to then() will never be called synchronously, even with an already-resolved promise:
Promise.resolve().then(() => console.log(2));
console.log(1); // 1, 2
Instead of running immediately, the passed-in function is put on a microtask queue, which means it runs later when the queue is emptied at the end of the current run of the JavaScript event loop, i.e. pretty soon:
const wait = ms => new Promise(resolve => setTimeout(resolve, ms));
wait().then(() => console.log(4));
Promise.resolve().then(() => console.log(2)).then(() => console.log(3));
console.log(1); // 1, 2, 3, 4
Simple promise chains are best kept flat without nesting, as nesting can be a result of careless composition. See common mistakes.
Nesting is a control structure to limit the scope of catch statements. Specifically, a nested catch only catches failures in its scope and below, not errors higher up in the chain outside the nested scope. When used correctly, this gives greater precision in error recovery:
doSomethingCritical()
.then(result => doSomethindOptional()
.then(optionalResult => doSomethingExtraNice(optionalResult))
.catch(e => {})) // Ignore if optional stuff fails; proceed.
.then(() => moreCriticalStuff())
.catch(e => console.log("Critical failure: " + e.message));
Note that the optional steps here are nested, not from the indentation, but from the precarious placement of the outer ( and ) around them.
The inner neutralizing catch statement only catches failures from doSomethingOptional() and doSomethingExtraNice(), after which the code resumes with moreCriticalStuff(). Importantly, if doSomethingCritical() fails, its error is caught by the final (outer) catch only.
Here are some common mistakes to watch out for when composing promise chains. Several of these mistakes manifest in the following example:
// Bad example! Spot 3 mistakes!
doSomething().then(function(result) {
doSomethingElse(result) // Forgot to return promise from inner chain + unnecessary nesting
.then(newResult => doThirdThing(newResult));
}).then(() => doFourthThing());
// Forgot to terminate chain with a catch!
The first mistake is to not chain things together properly. This happens when we create a new promise but forget to return it. As a consequence, the chain is broken, or rather, we have two independent chains racing. This means doFourthThing() won't wait for doSomethingElse() or doThirdThing() to finish, and will run in parallel with them, likely unintended. Separate chains also have separate error handling, leading to uncaught errors.
The second mistake is to nest unnecessarily, enabling the first mistake. Nesting also limits the scope of inner error handlers, which—if unintended—can lead to uncaught errors. A variant of this is the promise constructor anti-pattern, which combines redundant use of the promise constructor with nesting.
The third mistake is forgetting to terminate chains with catch. Unterminated promise chains lead to uncaught promise rejections in most browsers.
A good rule-of-thumb is to always either return or terminate promise chains, and as soon as you get a new promise, return it, to flatten things:
doSomething()
.then(function(result) {
return doSomethingElse(result);
})
.then(newResult => doThirdThing(newResult))
.then(() => doFourthThing());
.catch(error => console.log(error));
Note that () => x is short for () => { return x; }.
Now we have a single deterministic chain with proper error handling.
Using async/await addresses most, if not all of these problems—the tradeoff being that the most common mistake with that syntax is forgetting the await keyword.


Learn STEM with free online courses and MOOCs from Universitat Politècnica de València, University of Illinois at Urbana-Champaign, École Polytechnique Fédérale de Lausanne, Universidad de los Andes and other top universities around the world. Read reviews to decide if a class is right for you.
Popular Subjects:
| # | Course Name | Level | Production Year |
|---|---|---|---|
| 1 | Civil and Environmental Engineering | Undergraduate | 2012 |
| 2 | Introduction to Electrical Engineering and Computer Science I | Undergraduate | 2011 |
| 3 | Introduction to Aerospace Engineering: Astronautics and Human Spaceflight | Graduate | 2020 |
| 4 | Buildings as Sustainable Energy Systems | Undergraduate | 2020 |
| 5 | Introduction to Game Development | Undergraduate | 2020 |
| 6 | The Science and Business of Biotechnology | Undergraduate | 2020 |
| 7 | Principles of Synthetic Biology | Undergraduate | 2020 |
ADS
ADS


Dear {{ user.profile.name }},
please go to your email {{ user.email }}
inbox and click on the activation link to confirm and complete your registration.
Note: Check your spam folder if email not found in inbox.


Our free mobile template which supports IPhone, Android and High End Touch mobile devices is released under Creative Commons Attribution unported license. It means you’re free to copy, distribute, transmit and adapt the work. Just don’t forget to provide a back link from your website to mobifreaks.com in any way you specify, if you don’t know how to provide a back link then just leave footer which has a back link to mobifreaks like Design by Mobifreaks.com, And if you don’t want to provide a back link then just Donate Us
Code :
01
02
03 <title>Web page Title</title>
04
05
06
Web page content goes in the body

07
08
Output :
Web page content goes in the body


%#
aStor2 -- storage area network configurable via Web-interface
Copyright (C) 2009-2012 ETegro Technologies, PLC
Vladimir Petukhov<EMAIL_ADDRESS>Sergey Matveev<EMAIL_ADDRESS>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see
|
<%+san/logical_volume/title%>
<% if #matrix_overall.access_patterns > 0 then %>
<% local display_bind = false %>
<% for _,access_patterns in pairs( matrix_overall.access_patterns ) do %>
<% if not access_patterns:is_binded() then %>
<% display_bind = true %>
<% end %>
<% end %>
<% if display_bind then %>
<%+san/logical_volume/bind%>
<% end %>
<% end %>
<% if line.logical_volume.resizable then %>
<%+san/logical_volume/resize-control%>
<% end %>
<%+san/logical_volume/snapshot-control%>
<%+san/logical_volume/credentials/add%>
<% if line.logical_volume.deletable then %>
<%+san/logical_volume/remove%>
<% end %>
|
| <%+san/snapshot/forms/take%> |
| <% if #line.logical_volume.snapshots == 0 then %> <%+san/logical_volume/resize%> <% end %> |
| <%+san/logical_volume/credentials/forms/add%> |


Zero Effect (R) ***
Writer-director Jake Kasdan's Zero Effect gets its title from its main character, Daryl Zero (Bill Pullman). Zero is perhaps the world's greatest private detective, solving many a case without even setting foot outside of his well-secured penthouse apartment. And that's the problem--Zero is unquestionably a head case, a shut-in with no social skills whatsoever, writing bad love songs, guzzling cans of Tab, and eating tuna straight from the can when not working on a case.  In reality, though, the film could not be more different. While it does have its share of humorous moments, Zero Effect is an intriguing character study of its protagonist disguised as a conventional comic mystery.
Not that there isn't a mystery involved, and it is certainly one of Zero Effect's weakest points. Zero is hired by wealthy Portland businessman Gregory Stark (Ryan O'Neal) to recover a set of lost keys. Naturally, this simple investigation leads to something more complex, mainly a blackmail scheme involving Stark and a paramedic named Gloria Sullivan (Kim Dickens). How this mechanical mystery plays out is flat, suspenseless, and more than a little predictable, not helped at all by Kasdan's unnecessarily languid pacing.
However, with the development of Gloria's relationship with an incognito Zero the film achieves a surprising poignance. Zero may be an oddball, but he's also incredibly intelligent, and that is the root cause of his reclusiveness. Throughout the film, Zero describes his investigation technique in a "how-to" voiceover, and it is here that he explains the key to his success: "the two 'obs'"--objectivity and observation. In becoming the best P.I. in the world, Zero has mastered the art of objectivity, literally and figuratively detaching himself from the rest of the world. When the investigation forces him to deal directly with Gloria, Zero is treated to his first genuine emotional human contact and a glimpse of what real life is about--direct involvement, not objective observation. This is not to say that Zero Effect degenerates into something sappy and touchy-feely; the power of the relationship and its effects on Zero and Gloria derives from its subtle execution.
Zero Effect is not a perfect debut for Kasdan (son of Lawrence); in addition to the by-the-numbers mystery, there is also a weak subplot revolving around the strain Arlo's work puts on his relationship with his girlfriend (Angela Featherstone). But even in its flawed form, Zero Effect is a lot more accomplished and mature than a lot of work by more established filmmakers.
Michael Dequina<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS><EMAIL_ADDRESS>|<EMAIL_ADDRESS><EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS>Mr. Brown's Movie Site: http://members.tripod.com/~MrBrown/ Personal Page: http://members.tripod.com/~MrBrown/home.html CinemaReview Magazine: http://www.CinemaReview.com
Michael Jordan Beyond the Court: http://www.geocities.com/Colosseum/Field/2302/ A Michael Jordan Fan's Heartbreak: http://members.tripod.com/~mj23/mj.html
"Don't be like me. Be better than me." --Michael Jordan
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Status: Proposal FIX-TYPO passed 12/91Issue: LOOP-FOR-AS-ON-TYPO
Reference: X3J13/89-004 page 2-10, CLtL/II page 721, and dict-flow.tex
Category: Clarify/fix-typo
Edit History: Version 1 20-Aug-91 by JonL
Problem Description:
From the draft proposal .tex file, under the subsection {\bf for-as-on-list},
the words:
In the {\it for-as-on-list\/} subclause,
the {\tt for\/}
or {\tt as\/} construct iterates over the contents of a
@type[list]. It checks for the
end of the @type[list] as if by using
@funref[endp].
were erroneously copied verbatim from the subsection {\bf for-as-in-list},
rather than the intended wording from the Iteration Subcommittee.
At one level, this prescription doesn't make sense; by saying that
it is iterating over the "contents", rather than down the successive cdrs,
of the list, there is confusion about the values assumed by the variable
[which is subsequently said to take on the "tails" of the list.]
In the spring of 1988, the Iteration Subcommittee suggested a change from
the then existing practice of terminating both LOOP-FOR-AS-IN and
LOOP-FOR-AS-ON by simply a NULL test. [Indeed, in the MacLisp days before
CommonLisp, ENDP didn't exist; and the common use of NULL rather than ATOM
was based on a performance hack for the PDP10 Architecture.] So ENDP was
specified for LOOP-FOR-AS-IN because that style views the list as a sequence
having "contents" or elements; but ATOM was specified for LOOP-FOR-AS-ON
since the only concern was the succession of list tails. The LOOP-FOR-AS-ON
case is intended to be more general -- and hence have a less restrictive
termination test -- so that user-defined iteration over non-standard
lists can be supported. But the current draft specification completely
and accidentally defeats this design.
Proposal (LOOP-FOR-AS-ON-TYPO:FIX-TYPO)
Restore the original wording as intended by the Iteration Subcommittee
as follows:
In the {\it for-as-on-list\/} subclause,
the {\tt for\/}
or {\tt as\/} construct iterates over a
@type[list]. It checks for the
end of the @type[list] as if by using
@funref[atom].
Editorial Impact:
Very small.
Rationale:
The evidence that this is a typo is in the Lucid Product Documentation
of about the same time that 89-004 was abstracted from it; this product
documentation has the "correct" wording, and the person responsible for
doing the abstracting simply copied over the wrong, albeit very
similarly worded paragraph. The two paragraphs are close together
in that text.
Without this fix, there will surely be gratuitous variations as to
how the termination testing is done for the LOOP-FOR-AS-ON case.
Current Practice:
Some existing implementations still adhere to the MacLisp inspired
version that used to be distributed from MIT, which simply used NULL
for both the FOR-AS-IN and the FOR-AS-ON cases; some adhere to a
later Common Lisp version that uses ENDP, at least for the FOR-AS-IN
case. Harlequin has apparently implemented the broken semantics of
"X3J13/89-004 page 2-10".
Discussion:
This typo has gone undetected for over two years, between January 1989
until about April 1991, when a fresh implementation of LOOP taken purely
"from the spec" produced anomalous results on LOOP-FOR-AS-ON termination
tests. Lawrence G. Mayka<EMAIL_ADDRESS>noticed the variation when
comparing Harlequin's LOOP implementation with some of the others.
Jonl 11-Apr-91: I know this (the use of ATOM for FOR-AS-ON termination)
was discussed and agreed upon; and I hope that the forum of discussion
was within X3J13, either the iteration subcommittee or the whole
committee. I even recall changing Lucid's implementation after this
decision. [And an edit-history record of that change, along with the
rationale cited above, still exists in the Lucid source code for
Loop, dated 9-May-88.]


This privacy policy governs your use of the software application Carpool-Kids (“Application”) for mobile devices and web browsers that was created by New Wave Coding LLC. The Application is designed to allow the creation of carpools with invited friends ("drivers") and their family members ("riders"). Carpools have defined drivers and riders, and can have any number of driving events associated.
The Application obtains the information you provide when you download and create a user account. User accounts are comprised of a valid e-mail address and password, as well as your name, an optional image and optional phone number and user defined locations. Accounts can also be created via Facebook or Google sign in, which only access your name, e-mail address and avatar image. Information about other family members ("riders") is limited to a name (first name only is allowed) and an optional image.
Google users who opt into calendar sync must provide API access to their Google calendar to add and remove calendars and events. Google calendar data is not accessed, stored or shared by the Application.
Your name and e-mail address are never provided to 3rd parties for marketing purposes.
If using the iOS app, a unique push notification token generated by Apple is collected, which is required to send push notifications to the device.
If using the Android app, a unique Firebase token generated by Google is collected, which is required to send a push notification to the device.
This Application does not collect information about the location of your mobile device. Location Services are used on device for address lookup and map display only, with user defined addresses and carpool event addresses stored in the cloud.
Only aggregated, anonymized data may be periodically transmitted to external services to help us improve the Application and our service. We will share your information with third parties only in the ways that are described in this privacy statement.
We may disclose User Provided and Automatically Collected Information:
We will retain User Provided data for as long as you use the Application and for a reasonable time thereafter. We will retain Automatically Collected information for up to 1 year and thereafter may store it in aggregate. All user provided data can be deleted by using the "Delete Account" option in the app. Please contact us at<EMAIL_ADDRESS>with any privacy related questions and we will respond in a reasonable time. Please note that some or all of the User Provided Data may be required in order for the Application to function properly.
We do not use the Application to knowingly solicit data from or market to children under the age of 13. If a parent or guardian becomes aware that his or her child has provided us with information without their consent, he or she should contact us at<EMAIL_ADDRESS>We will delete such information from our files within a reasonable time.
We are concerned about safeguarding the confidentiality of your information. We provide physical, electronic, and procedural safeguards to protect information we process and maintain. For example, we limit access to this information to authorized employees and contractors who need to know that information in order to operate, develop or improve our Application. Please be aware that, although we endeavor provide reasonable security for information we process and maintain, no security system can prevent all potential security breaches.
This Privacy Policy has an effective date of 11/25/2020 and may be updated from time to time for any reason. We will notify you of any changes to our Privacy Policy by posting the new Privacy Policy at https://carpool-kids.com/privacy.html. You are advised to consult this Privacy Policy regularly for any changes, as continued use is deemed approval of all changes.
By using the Application, you are consenting to our processing of your information as set forth in this Privacy Policy now and as amended by us. "Processing" means using cookies on a computer/hand held device or using or touching information in any way, including, but not limited to, collecting, storing, deleting, using, combining and disclosing information, all of which activities will take place in the California, United States of America. If you reside outside of California your information will be transferred, processed and stored there under California privacy standards.
If you have any questions regarding privacy while using the Application, or have questions about our practices, please contact us via email at privacy@newwavecoding.com.


GE Health Hack
Name :
No of Checkups :
Submit
Our Predicted Result is
The probability of occurance is
Submit Result
Submit
Train
Please rate us on a scale of 1-5
Our Predicted Result is
0
1
Submit your review


Learn SigmaF
Before starting, it is necessary to know this:
printLn("Hello, World!")
Comments
If you want to comment your code, you can use:
-- This is a single line comment
/*
And this a multiline comment
*/
Data Types
Let Statements
This language does not use variables. Instead of variables, you can only declare static values.
For declaring a value, you must use let and give it a value. For example:
let a = 1 -- Interger
let b = 1.0 -- Float
let c = "string" -- String
let d = true -- Boolean
let e = [1,2,3] -- List
let f = (1, 2) -- Tuple
...
SigmaF allows data type as Integer, Float, Boolean, and String.
Data Structs
Lists
The Lists allow to use all the data types before mentioned, as well as lists and functions.
Also, they allow to get an item through the next notation:
let value_list = [1,2,3,4,5,6,7,8,9]
value_list[0] -- Output: 1
value_list[0, [4] -- Output: [1,2,3,4]
value_list[0, 8, 2] -- Output: [1, 3, 5, 7]
The struct of List CAll is example_list[<Start>, <End>, <Jump>]
Tuples
The tuples are data structs of length greater than 1. Unlike lists, they allow the following operations:
(1,2) + (3,4) -- Output: (4,6)
(4,6,8) - (3,4,5) -- Output: (1,2,3)
(0,1) == (0,1) -- Output: true
(0,1) != (1,3) -- Output: true
To obtain the values of a tuple, you must use the same notation of the list. But this data structure does not allow ranges like the lists (only you can get one position of a tuple).
E.g.
let t = (1,2,3,4,5,6)
t[1] -- Output: 2
t[5] -- Output: 6
And so on.
Conditionals
Regarding the conditionals, the syntax structure is:
if <Condition> then {
<Consequence>
}
else{
<Other Consequence>
}
For example:
if x <= 1 || x % i == 0 then {
false;
}
if x == i then {
true;
}
else {
false;
}
Functions
For declaring a function, you have to use the next syntax:
let example_function = fn <Name Argument>::<Argument Type> -> <Output Type> {
=> <Return Value>
}
(For return, you have to use the => symbol)
For example:
let is_prime_number = fn x::int, i::int -> bool {
if x <= 1 then {=>false;}
if x == i then {=> true;}
if (x % i) == 0 then {=> false;}
=> is_prime_number(x, i+1);
}
printLn(is_prime_number(11, 2)) -- Output: true
Operators
Warning: SigmaF have Static Typing, so it does not allow the operation between different data types.
These are operators:
| Operator | Symbol |
|---|---|
| Plus | + |
| Minus | - |
| Multiplication | * |
| Division | / |
| Modulus | % |
| Exponential | ** |
| Equal | == |
| Not Equal | != |
| Less than | < |
| Greater than | > |
| Less or equal than | <= |
| Greater or equal than | >= |
| And | && |
| Or | || |
The operator of negation for Boolean was not included. You can use the not() function in order to do this.
Some Examples
Quick Sort
-- Quick Sort
let qsort = fn l::list -> list {
if (l == []) then {=> [];}
else {
let p = l[0];
let xs = tail(l);
let c_lesser = fn q::int -> bool {=> (q < p)}
let c_greater = fn q::int -> bool {=> (q >= p)}
=> qsort(filter(c_lesser, xs)) + [p] + qsort(filter(c_greater, xs));
}
}
Filter
-- Filter
let filter = fn c::function, l::list -> list {
if (l == []) then {=> [];}
=> if (c(l[0])) then {[l[0]]} else {[]} + filter(c, tail(l));
}
Map
-- Map
let map = fn f::function, l::list -> list {
if (l==[]) then {=> [];}
=> [f(l[0])] + map(f, tail(l));
}


mdioblock2(1) Qualcomm Atheros Open Powerline Toolkit mdioblock2(1) NAME mdioblock2 - Qualcomm Atheros Clause 45 MDIO Instruction Block Assembler SYNOPSIS mdioblock2 [options] file [file] [...] [>stdout] mdioblock2 [options] [<stdin] [>stdout] DESCRIPTION Assemble an Atheros MDIO instruction block from hexadecimal register instructions. MDIO instruction blocks are written to Atheros powerline devices as modules using the VS_MOD_OP message type. Alternately, program int6kmod can be used. Atheros MDIO modules consists of a 16-bit header followed by one or more MDIO communication frames with register masks and padded to the nearest multiple of 32-bits for download purposes. MDIO instructions are entered here using 802.3ae Clause 45 (or addr, data and mask) format. See program mdioblock for a similar program that accepts instructions in 802.3 Clause 22 (or phy, reg, data and mask) format. This program is part of the Qualcomm Atheros Powerline Toolkit. See the AMP man page for an overview and installation instructions. OPTIONS -q Quiet mode. Suppresses error messages caused by instruction syntax errors. -v Verbose mode. Prints instructions on stderr as they are processed. -?,--help Displays program help information on stderr. This option takes precedence over all other options on the command line except version information. -!,--version Displays program version information on stderr. This option takes precedence over all other options on the com‐ mand line except help information. Use this option when sending screen dumps to Atheros technical staff. ARGUMENTS file A text files contining one or more generic MDIO register intructions consisting of a address, data and mask fields. Fields are separated by whitespace. Instructions are terminated with semicolon. Multiple instructions may appear on one line and one instruction may span multiple lines. Script-style comments are permitted between instructions but not between instruction fields. REFERENCES See the Qualcomm Atheros AR7x00 Firmware Technical Reference Manual section on the Module Operation message type for more information on MDIO Block format. DISCLAIMER Atheros HomePlug AV Vendor Specific Management Message structure and content is proprietary to Qualcomm Atheros, Ocala FL USA. Consequently, public information may not be available. Qualcomm Atheros reserves the right to modify message structure and content in future firmware releases without any obligation to notify or compensate users of this program. EXAMPLES The following command reads register instructions from text file mdio.txt and writes binary file mdio.bin. In this exam‐ ple, the program acts as a filter, reading from stdin and writing to stdout. Progress and error messages, if any, are written to stderr. # mdioblock2 < mdio.txt > mdio.bin The following command reads register instructions from files physetup.dat then flowctl.dat then misc.ins and writes one binary MDIO block to file mdio.bin. The previous contents of file mdio.bin are overwritten. # mdioblock2 physetup.dat flowctl.dat misc.ins > mdio.bin An example register instruction file might look like this. Instructions have addr, data and mask fields. Instruction fields are separated by whitespace and instructions are terminate by a semicolon. Multiple instructions can appear on one line or one instruction can span multiple lines. Script-style comments are permitted between instructions but not between instruction fields. 2c 7e3f003f ffffffff; 8 500 ffffffff; 100 7d ffffffff; 30 19f005f2 ffffffff; 200 7d ffffffff; 300 7d ffffffff; # Hello World 400 7d ffffffff; 500 7d ffffffff; SEE ALSO amp(1), int6kmod(1), int6kmdio(1), int6kmdio2(1), mdioblock(1), mdiodump(1), mdiogen(1) CREDITS Charles Maier<EMAIL_ADDRESS>open-plc-utils-0.0.3 November 2013 mdioblock2(1)


/** * @private * Handle batch read / write of DOMs, currently used in SizeMonitor + PaintMonitor */ Ext.define('Ext.TaskQueue', { requires: 'Ext.AnimationQueue', singleton: true, pending: false, mode: true, constructor: function() { this.readQueue = []; this.writeQueue = []; this.run = Ext.Function.bind(this.run, this); this.watch = Ext.Function.bind(this.watch, this); // iOS has a nasty bug which causes pending requestAnimationFrame to not release // the callback when the WebView is switched back and forth from / to being background process // We use a watchdog timer to workaround this, and restore the pending state correctly if this happens // This timer has to be set as an interval from the very beginning and we have to keep it running for // as long as the app lives, setting it later doesn't seem to work if (Ext.os.is.iOS) { setInterval(this.watch, 500); } }, requestRead: function(fn, scope, args) { this.request(true); this.readQueue.push(arguments); }, requestWrite: function(fn, scope, args) { this.request(false); this.writeQueue.push(arguments); }, request: function(mode) { if (!this.pending) { this.pendingTime = Date.now(); this.pending = true; this.mode = mode; if (mode) { setTimeout(this.run, 1); } else { requestAnimationFrame(this.run); } } }, watch: function() { if (this.pending && Date.now() - this.pendingTime >= 500) { this.run(); } }, run: function() { this.pending = false; var readQueue = this.readQueue, writeQueue = this.writeQueue, request = null, queue; if (this.mode) { queue = readQueue; if (writeQueue.length > 0) { request = false; } } else { queue = writeQueue; if (readQueue.length > 0) { request = true; } } var tasks = queue.slice(), i, ln, task, fn, scope; queue.length = 0; for (i = 0, ln = tasks.length; i < ln; i++) { task = tasks[i]; fn = task[0]; scope = task[1]; if (typeof fn == 'string') { fn = scope[fn]; } if (task.length > 2) { fn.apply(scope, task[2]); } else { fn.call(scope); } } tasks.length = 0; if (request !== null) { this.request(request); } } });


---
layout: post
title: animatic storyboard draft
date: '2013-04-20T18:01:00+02:00'
categories:
- Set Design
- Storyboards
- Atoleiros Battle
picture_url: https://film-Storyboards.tumblr.com/post/48475476477/animatic-Storyboards-draft-the-metaphorical
---
Animatic Storyboards draft. The metaphorical chessboard room


I'm a Full Stack Web Developer
A dynamic, smart, solution oriented lady. I have always considered myself a problem solver, an Engineer by heart and a Web Developer by choice. Commited to being the best solutions-provider I can be is my goal.
I am from Cameroon, Western/Central Africa. From a young age I developed a passion for technology so after completing high school, I enrolled in the Faculty of Science, Engineering and Technology of the Cameroon Christian University, where I studied Petroleum Engineering.
Presently resident in the state of New Mexico, USA. I am attending the Full Stack Web Development Deep Dive Coding Bootcamp by CNM Ingenuity wherein I have learned so many essential coding languages and skills. I have been excersing my knowledge of these learned skills on the projects I have worked on.
This section includes a brief description of the projects I have worked on.
This project is about this website. It is the first project I worked on as a web developer. The objective of this project is to showcase my Full Stack Web Developer skills and to permit clients and employers get in contact with me.
This is an ongoing project
A project aimed at designing and building a web application that permits the promotion of the different behaviors and actions various businesses are adopting in order to keep running while minimizing the spread of the corona virus.
A project carried out by a team of dynamic and determined individuals with innovative and efficient ideas.