Part two of a post from the other day.
First, head over to the master spreadsheet and make a copy.
It’s important to note that this works just fine with form responses – you don’t have to use the text input I wrote about earlier. You can always go back and add it later. Either way you collect information, we can begin analyzing some of the data.
The whole idea is to have a platform-independent polling system. So, this is built with flexibility and bare-bones functionality in mind. It isn’t complex in the way it pulls in student responses, nor is it meant to be. However, there are some tools in place to help you actively identify problem areas.
An idea I’m borrowing from Andy Schwen is to utilize a central class list. Create a new spreadsheet and fill in student names. I sort mine by last name, first initial. You need the spreadsheet key from this document.
https://docs.google.com/spreadsheets/d/RANDOM-LETTERS-AND-NUMBERS/edit#gid=0
Copy the key and paste it into the cell which asks for it.
Your class list will automatically populate for you. That’s all you need to do on this page.
The Responses tab is meant to be an overview for you. So, if you have a way to extend your desktop across the projector rather than duplicating, you’ll have the back-door information.
This page has a response vs. confidence graph that updates as students submit their answers. If you have your class list set (see above), you’ll also be able to sort by class period using the dropdown menu. This will import those students and assign an ID number. Students respond with that ID number rather than their name so you can display comments (read on).
If they make a comment, you can also read it and see who asked that particular question or submitted a particularly salty comment.
Finally, you are given an overall confidence (average of all answers) as well as a chart mapping the student’s confidence score for each item they choose. It’s also broken down by student to aid you in feedback and conversation setting. You could also use this for grouping students on the fly to discuss the question.
This is the page you want to show live to students, and it’s meant to go through three steps. At first, the ID boxes at the top are all red. As responses come in, the box will turn green. There isn’t any way to prevent someone from submitting the incorrect ID number or a duplicate, so duplicates will turn yellow. You can then follow up individually as needed.
When you click on the “Get Responses” button, a pie graph of all the submitted answers is displayed. This is meant to spur conversation and show the beginnings of a pattern.
Clicking on “Set Answer” allows you to submit the multiple choice answer and change the graph. Rather than the pie chart, it shows the confidence score and the number of each answer submitted. Again, this can lead to conversations with your class about how confidence can correlate with making the right selection.
Clicking “Reset Form” clears all the responses from the form, resets the charts, and clears the Responses tab of data so you can ask another question.
This isn’t meant to collect persistent data – it’s meant for flexibility and high-level insight. Hopefully, it’s helpful to you. Please leave comments on this post (also linked from the template) with bugs, functionality improvement requests, or other feedback. This is definitely a pet project, but I’ll try my best to maintain it as it gets used.
Written on May 12th, 2015 by Brian Bennett Categorized in: All Technology
Leave a comment


{% extends "base.html" %} {% block titlemore %} -{{_(recommended)}} {% end %} {% block body %}
Writing a dissertation is like doing daily
or: The tragedy of an Autobot victory


Layout Themes
The application comes with 2 main layout themes: Light (default) and Dark:
Choose Color Theme
Framework7 comes with {{colorsAmount}} color themes set.
{{#each colors}}
{{/each}}


Like anything, BlinkyTape doesn't always work perfectly. There are a few issues that you might run into while you're getting up and running, or while you're creating your BlinkyTape magnum opus. Here are a few suggestions on how to get going again if you run into an issue.
While platforms like OS X and Linux don't need special drivers for the BlinkyTape, Windows does. The easiest way to do this is to grab the PatternPaint installer, here: PatternPaint Releases
On Windows, you'll need this even if you plan to make your own custom software, while you can skip this on other platforms if you're jumping right to the coding.
Most likely there's no reason to worry here. If you're seeing red text down in the bottom console box of Processing or Arduino when you try to run or upload a program, most likely the code that talks to your serial port is just confused.
Luckily there's a quick fix: stop your program (if it's not already) disconnect your BlinkyTape, then reconnect it and try again.
Oh, right...since OS X 10.7 / "Mountain Lion" Apple also has infrastructure for signing applications, and has shipped new systems with settings that require apps to be signed. That's great for people who want to get most of their software from the app store or big commercial developers, but we turned that off right away because we use a lot of open-source software which isn't signed because signing costs money.
We may get a certificate for PatternPaint, but right now, you'll need to allow your computer to run unsigned applications. Click on the Apple logo on the top-right corner of your screen and go to System Preferences
. Then click on Security & Privacy
in the top row. On the next screen, you should see an option that says "Allow applications downloaded from:" -- this is the one you need to change. Set it to "Allow applications downloaded from: Anywhere." There may be a pop-up warning at this point - click the button that says "Allow from Anywhere" so PatternPaint can run.
Sorry about that! Once again with the Windows drivers. Processing 2 and later can do advanced 3d-accelerated stuff based on OpenGL...unfortunately, there are some Windows graphics chips that can't handle it, especially when they are using older drivers.
However, all is not lost. It may be possible to fix this by installing a newer driver. Check with your graphics chip/card manufacturer and install their latest. For example, we were able to resolve this by updating the drivers for a computer with Intel HD 3000 graphics.
It seems that Ubuntu 13.10 runs a program called 'modem-manager' that identifies your BlinkyTape as a modem and tries to talk with it. In this ase, the tape will work for a moment, then stop updating, and first 10 or so LEDs on the strip will turn black.
The easiest way to fix this is to remove the modem manager software completely:
sudo aptitude remove modemmanager
If you do need to use a dial-up modem, you may be able to stop the service temporarily, but most users can just remove this program without any problems.
Uh oh. It's possible to create Arduino sketches that will compile just fine, but will then crash when it tries to run on your BlinkyTape. There are a few reasons for this: using too much memory, asking for something from a memory location that's not defined, dividing by zero...that sort of thing. Some of these will put your Arduino in a state where it doesn't want to accept another sketch.
However, there is a way to force your BlinkyTape to reset, so you can reprogram it:
We've found that it's easy to use two sewing needles to reset the tape without peeling back the protective cover. There are four small holes near the USB connector - place one needle in the one furthest from the connector, and then push one so it's touching the ground pad. Touch the two needles together and the tape will be in reset mode. Once you've reset the tape, you'll have six seconds to start uploading a new sketch using the Arduino IDE or the 'Restore Rainbow Sketch' option in PatternPaint.
As for timing, we'd suggest clicking the Arduino upload button, then using this method to reset your tape so it can accept a new sketch. You might need to try a few times to get the timing down right, but it'll work.
It should also be noted that this won't have any lasting effect if you're not uploading a sketch - this won't reset the tape to factory by itself.
It's worth checking to see if your USB cable is bad. Keep in mind that USB cables move around a lot and don't last forever, especially when you're relying on them for data transmission. A cable that works fine for charging a phone might not work for your BlinkyTape. Try swapping the one you're currently using for another microUSB cable, and if the one we shipped you isn't great, please let us know.
OK, challenges are interesting and we are eager to meet and overcome them! Try heading to the forum or emailing us at<EMAIL_ADDRESS>.


Got a VIP Beacon on your badge?
Come closer for the magic to happen!
Attach your Facebook ID to find friends inside, meet new ones & speed up the bar line!
Got a VIP Beacon on your badge?
Come closer for the magic to happen!
Attach your Facebook ID to find friends inside, meet new ones & speed up the bar line!


During the initialization of a class, the class makes an active use of a subclass.
That subclass will not yet be initialized at the time of this use.
For example, in the following code, foo
will be null.
public class CircularClassInitialization { static class InnerClassSingleton extends CircularClassInitialization { static InnerClassSingleton singleton = new InnerClassSingleton(); } static CircularClassInitialization foo = InnerClassSingleton.singleton; // Incorrect : To use before Initialization and object created }
public class CircularClassInitialization { static class InnerClassSingleton extends CircularClassInitialization { static InnerClassSingleton singleton = new InnerClassSingleton(); // Correct : To use once Initialization is done and object created } static CircularClassInitialization foo = null; public void setCircularClassInitialization() { foo = InnerClassSingleton.singleton; ?? } }


Event Location:
Sydney Reactor
Level 10, Sydney Startup Hub 11-31 York St
Sydney, New South Wales, Australia
Abstract:
What actually makes up the Power BI Eco System? Have you ever wondered what are all the parts that make up the Power BI Eco System and their features? In this session I will cover the area's which make up the Power BI Eco system. This will include Power BI Desktop, Power BI Service (Free, Pro Premium), Power BI Gateway, Power BI Report Server Power BI Mobile App. The goal of this session will be to give you a better understanding of all the working parts. And once you have a better understanding it will allow you to have the knowledge to know what to do where. It will be an insightful journey into how much is actually going on within the world of Power BI in an easy to understand and digest manner. The most popular blog posts are ones where it is easier concepts and details on how Power BI works.
Speaker(s): Gilbert Quevauvilliers,
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:
Sharing and documenting Machine Learning solutions is now easier with Azure Notebooks. Azure Notebooks will allow Data Scientists to share the whole machine learning process from data acquisition, to data cleaning, and finally creating a machine learning model. With Azure Notebooks the information can also be presented to non-technical stakeholders in an easier way. In this session you will learn • What are Azure Notebooks? • How to create your first notebook in Azure Notebooks? • How to use code snippets and visualisations in a notebook? • Create a slideshow of your notebook • How to share your notebook with your team? By the end of the session you will get a good understanding about Azure Notebooks and how to use them for real world problems.
Speaker(s): Anupama Natarajan,
Abstract:
They say every cloud has a silver lining, well this one is gold! This demo heavy session will introduce you to Azure Analysis Services. We begin by looking at a traditional analytics platform, and how this fits into the "modern data warehouse". This session will guide you through the processes (and pitfalls) of modernizing your data analytics solution. Still using PowerPivot models or for that matter still using SQL Server Analysis Services on-premise? Let's see how to leverage these assets into the modern would of cloud computing using Azure Analysis Services, with minimal downtime. Prepare to be amazed at what is possible with all the wonders of cloud computing in the Azure world.
Speaker(s): Geoff Black,
Abstract:
A typical machine learning experiment involves the following phases - data preparation, algorithm selection, model training, model testing and hyperparameter tuning. The process is usually repeated for a range of machine learning algorithms and then the most optimum model is selected for scoring. This model needs to be exposed to client applications – in SQL Server the model can stored in a table and then wrapped in a stored procedure, while models built using machine learning libraries such as scikit-learn can be exposed through REST APIs. The machine learning lifecycle is iterative and often time-consuming. What if there was a way to automate some of the processes involved so that the outcome could be generated sooner? In this session, you will see Automated Machine Learning in Microsoft Azure in action. You’ll get to learn key concepts and takeaway enough knowledge to be able to run simple machine learning experiments.
Speaker(s): Ajit Ananthram,
Abstract:
Preserving privacy when processing data from multiple sources with machine learning is always a challenge. Organizations want to perform collaborative data analytics while guaranteeing the privacy of their individual datasets. Combining multiple data sources to support a better outcome improves accuracy of prediction, but it may come at cost of confidentiality, if sensitive information is not accurately protected. SQL Server 2019 adds new data security capabilities with Always Encrypted with Secure Enclaves. By using trusted execution environments (TEEs) to protect your data while in use, you can use machine learning algorithms across different organizations to better train models, without revealing the processed data. In this session, Stefano Tempesta, Microsoft Regional Director and MVP on AI and Business Application, will present the benefits of Confidential Computing in an ML scenario, where separate health institutes collaborate on data analysis and prediction using Azure ML.
Speaker(s): Stefano Tempesta,
Abstract:
Even as many of the traditional DBA activities become automated or managed by Cloud providers, the ability to tune and optimize database query performance remains a desirable and marketable skill. Central to ability to tune queries is an ability to use information provided from Execution plans, DMVs, Query Store and Extended Events. In this demo based session we will look into: - What information is available - How it can be used. - Techniques to improve performance. Attendees will leave with an understanding of possibilities of turning queries and a roadmap for further learning. This session will assume a basic knowledge of T-SQL and execution plans.
Speaker(s): Patrick Flynn,
Abstract:
Last year, Greg delivered a session on technologies that fascinate a technologist as the keynote for SQL Saturday Auckland. People were raving about it afterwards and wanted to see a longer version of it. This is a longer and updated version of that keynote. Greg dives into technologies that fascinate him, that he thinks will fascinate you, and that he thinks will fundamentally alter the world. He looks into how they are likely to change work as we know it today. Come and be intrigued and inspired.
Speaker(s): Greg Low,
Abstract:
With the release of the GDPR regulations and similar global standards security is finally becoming the focus it always should have been. Businesses are now able to put a number on how much a data breach will cost them...and that number is big enough to put many firms out of business. In this session we'll talk about the various ways you can implement Encryptian natively within SQL Server - with Backup Encryption, Transparent Data Encryption(TDE), AlwaysEncrypted, and connection encryption
Speaker(s): Rob Douglas,
Abstract:
There has been lots of focus recently on upgrades and migrations with the end-of-life of SQL Server 2008 and 2008R2. With so many critical databases running on these older versions, how do you ensure that you achieve a successful and safe transition to your new platform? Fortunately there are some fantastic tools and defined processes that can lead you through each stage. There are tools to test different versions and infrastructures, processes to track query regressions and provide a way to remediate them. This session will walk through the upgrade process from end-to-end and show what tools can help you at each step.
Speaker(s): Martin Cairney,
Abstract:
Have you ever thought what would it be like to run SQL Server engine in a small footprint? Well, wait no more. Running on Arm and x64 architecture with a reduced footprint, the proven performant and most secure Microsoft SQL engine is coming to the Edge in interactive devices and edge gateways. Combining new capabilities on data streaming and time-series, with in-database machine learning (ML) and graph, Azure SQL Database Edge is optimized for low-latency analytics right on the Edge. This session will showcase the scenarios Azure SQL Database Edge can enable.
Speaker(s): Julie Koesmarno,
Abstract:
With support for Linux and Containers SQL Server 2017 opened up a new world of possibilities for Microsoft. SQL Server 2019 will bring to market a new modern data platform including support for Linux, Docker Containers and rich features in intelligent performance, HADR, machine learning, and graph database. Come learn about the roadmap and new functionality planned for SQL Server including intelligent query processing, data virtualization, new features for mission critical security and HADR, and new scenarios for Linux and Docker Containers. Understand where Microsoft is taking its Data Platform and align your organization's SQL Server with Microsoft's roadmap.
Speaker(s): Victor Isakov,
Abstract:
Modern enterprises today collect more data than cumulatively any other time in history. This creates both complex challenges yet offers unique opportunities. How can you aggregate and make sense of this data? How can you engage with and present relevant data to business without being overwhelming? In this session we’ll explore data storytelling, and demonstrate some fun and interesting ways to work with data in the Azure Cloud using Power BI, Bots and Cognitive Services that helps expose relevant data in consumable ways.
Speaker(s): Rolf Tesmer,
Abstract:
With the advent of cloud we now have multiple deployment options for SQL Server. Be it a Full instance on premise or in the cloud, to a managed instance or a Platform as a service in the form of Azure SQL Database - each deployment options have their own use case. In this session, we will explore SQL Server's deployment options to help you decide which path is applicable to which scenarios.
Speaker(s): Pio Balistoy,
Abstract:
With lot of BI and Analytics solutions moving to the cloud, you might be asking yourself what a modern, end-to-end BI solution looks like now. There are several different options for how you can implement such a solution. In this session, Craig will discuss and demonstrate how you can implement enterprise BI in Azure. Craig will do so by taking "on-premises" data into Azure SQL Data Warehouse and then surface this in Power BI. Some of the technologies used will include: - SQL Server - Azure Data Factory - Azure SQL Data Warehouse - Azure Analysis Services - Power BI
Speaker(s): Craig Bryden,
Abstract:
Data wrangling is a significant problem when working with big data, especially if you haven’t been exposed to the challenges it brings, or you don’t have the right tools to clean and validate data in an effective and efficient way. In this session, we'll explore data wrangling concepts and Azure data services to achieve the desired data transformations.  We'll dive deep into using Azure Data Factory (dataflows) and Azure Databricks to transform data to meet your enterprise business needs.
Speaker(s): Mohamed Kabiruddin,
Abstract:
If you find yourself getting lost then SQL Server’s spatial technology is here to help. At first glance, the spatial functions and data types can be quite confusing and weird. This presentation will demystify SQL Server’s spatial features so that you can use them confidently in your job. I will step through the theory and show a number of examples and best practices.
Speaker(s): Bernard Spence,
Abstract:
Here are a super secret set of must have tips for making the best of Power BI. (it includes crazy twisting)
Speaker(s): Grant Paisley,
Abstract:
Power BI is with no doubt the market leader in building BI systems in the recent years with highest growth trends in adoption. It suits both small medium businesses and enterprise organisations. With a vast spectrum of choices of using Power BI some of the rare gems which makes every BI professional and end user life easier being unknown. In this session you get to choose which important features/tips you want to uncover from a wide list of choices. They range from new features to most useful features you may not have known before. I will demonstrate those features of your choice in the available time during this session.
Speaker(s): Manohar Punna,
Abstract:
Azure Cosmos DB is Microsoft’s Globally Distributed, Multi-Model database service. Transparently scaling across multiple Azure regions, Cosmos DB provides for many API’s including MongoDB, Cassandra, Gremlin and SQL. It offers multiple consistency models and guarantees uptime or 5 9’s. In this session we’ll take a look at this technology and learn how it might be useful – either now or in the future.
Speaker(s): Martin Catherall,
Abstract:
Azure Data Studio is no longer the new kid on the block. How many of you have used Azure Data Studio? In this session we will take you on a journey introducing you to Azure Data Studio so that you can understand the ins and outs and when you should consider using Azure Data Studio in place of SQL Server Management Studio. In this idemo heavy session we will look at how productive you can be with Azure Data studio and some of the features that are not available in SQL Server Management Studio.
Speaker(s): Warwick Rudd,
This is a list of speakers from the XML Guidebook records. The details and URLs were valid at the time of the event.
Grant Paisley is an Microsoft MVP and founder of Angry Koala, http://angrykoala.com.au a Microsoft Business Intelligence consultancy based in Sydney, Australia. Grant runs the Microsoft Data Wranglers usergroup https://www.meetup.com/microsoft-data-wranglers/ and is an internationally recognized speaker haven spoken at Teched USA, Australia and China on Machine Learning, Reporting Services and Power BI. Data visualization is his specialty. He also co-authored "SQL Server 2008 Analysis Services with MDX", "Microsoft SQL Server Reporting Services Recipes", and "Professional Microsoft SQL Server 2012 Reporting Services". Hobbies include snow kiting and mountain biking.
LinkedIn: http://au.linkedin.com/in/martincairney
Martin has 20 years’ experience in SQL Server technologies. His experience spans both the Database Engine and infrastructure requirements, and Data Warehousing and BI implementations. He has worked across many industry sectors including London’s global financial institutions and both State and Federal Government Departments. He is a SQL Server MVP, MCT and an experienced conference presenter, having presented at PASS Summit, SQLBits, and SQL Saturday events and User Groups round the world
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: http://www.linkedin.com/in/victorisakov
Contact: http://www.victorisakov.com
Victor Isakov (MCA, MCM, MCSM, MCT, MVP) is a Database Architect and trainer who provides consulting and training services to various organizations in the public, private, and NGO sectors globally. He regularly speaks at international conferences such as Microsoft TechEd/Ignite, PASS Summit, IT/Dev Connections, and SQLSaturdays. Victor has written a number of books on SQL Server and has worked with Microsoft to develop the SQL Server exams and certification. In 2017 he authored "Exam Ref 70-764 Administering a SQL Database Infrastructure (1st Edition)". He is one of only three non-Microsoft, Microsoft Certified Architects in the world.
I am a Senior Business Intelligence Consultant with 21 years experience with SQL Server. I work at Readify where I help clients improve the performance of their SQL Server instances, SSAS solutions, and SSIS packages
LinkedIn: https://www.linkedin.com/in/craigbryden/
Craig has been working with SQL Server for over 20 years and currently holds several SQL Server based certifications. He has also previously held an MCT certification. Craig's contribution to the SQL Server community was recognised in 2018 with a Microsoft MVP award. He was involved with Microsoft Learning to set some of the current SQL server Exams. Craig is the Chief Data Strategist at BiTQ. Craig is an organiser of the QLD Power BI User Group
LinkedIn: http://au.linkedin.com/pub/warwick-rudd/0/956/718
Contact: http://www.sqlmastersconsulting.com.au/Blog
Warwick Rudd is a Microsoft Certified Master – SQL Server 2008 and Principal Consultant at SQL Master Consulting. He is a frequent speaker at local SQL Server User Groups and SQLSaturday events in Australia. When not playing with the SQL stack, Warwick likes to get away to the cold and spend time snowboarding.
LinkedIn: https://www.linkedin.com/in/fourmoo/
Contact: https://www.fourmoo.com/blog
Power BI Data Analytics Consultant with over 12 years experience. From small to enterprise implementations on Azure (Azure Analysis Services, Function Apps, Runbooks, Automation Accounts, SQL Serverless DB) and On-Premise Microsoft Platform (SQL Server, Integration Services, Analysis Services Multidimensional and Tabular, Reporting Services) Recently I have focused on Power BI, with its rapidly changing features and incredible uptake it has allowed me to consult in a variety of different and challenging solutions. I was awarded the Microsoft MVP award for Power BI since 2017. I have spoken at the Microsoft Business Applications Summit (Seattle Atlanta), Power BI World Tour,SQL Saturdays other events.
LinkedIn: http://www.linkedin.com/in/juliekoesmarno
Contact: http://www.mssqlgirl.com
Julie Koesmarno, MCSE Data Platform, and MCSE Business Intelligence, MCT, is a Senior Program Manager at Microsoft, with a Bachelor’s degree in IT. She has over 10 years of experience working with SQL Server for large-scale and multi-million-dollar OLTP and ETL projects as a SQL Server developer and system analyst/designer. Her past projects include delivering a SQL Server 2012 data warehouse and BI solutions in the US and Australia. She now works with hybrid, cloud and on-prem SQL projects.
Contact: http://wardyit.com
Geoff is the Training Team Leader at WARDYIT Solutions. With more than 30 years experience in the world of IT, Geoff has been witness to some major changes in technology throughout out his various roles as a Microsoft Certified Trainer, Database Developer, Consultant and Business Intelligence Specialist. High performance and power has always been the driving force behind both his professional and personal interests as an avid fan of the MotoGP and a keen motorcyclist.
LinkedIn: https://nz.linkedin.com/in/anupama-natarajan-516a107
Contact: http://www.anupamanatarajan.com
Anu Natarajan is a Data and AI Consultant with 15+ years of experience working in design and development of Data Warehouse, Business Intelligence, AI enabled applications, and SaaS integrated solutions. Anu is a Microsoft MVP Data Platform, Microsoft Certified Trainer and passionate in sharing knowledge. She loves solving complex business problems with innovative solutions using technologies. Anu also speaks at conferences including PASS Summit, SQL Saturdays, Data Platform Summit, Difinity, and she organizes local user group meetups.
LinkedIn: https://www.linkedin.com/in/ajit-ananthram/
Contact: https://ajitananthram.wordpress.com/
I am a senior strategy advisor specialising in digital transformation through data engineering and advanced analytics. I have over 14 years of experience assisting organisations in becoming data-led and data-driven. I specialise in leveraging Microsoft Azure and its capabilities in data platform engineering, machine learning, AI and data visualisation to solve business problems. I am also active in the Microsoft community through presentations at events and technical publications.
LinkedIn: https://linkedin.com/in/stefanotempesta
Contact: https://www.blogchain.space
Stefano Tempesta is a Microsoft RD (Regional Director), MVP on AI and Business Applications, and member of the Blockchain Council (blockchain-council.org). A regular speaker at international IT conferences, including Microsoft Ignite and Tech Summit, Stefano’s interests extend to blockchain and AI-related technologies. He created “Blogchain Space” (blogchain.space), a blog about blockchain technologies, writes for MSDN Magazine and MS Dynamics World, and publishes Machine Learning experiments on the “Azure AI Gallery” (gallery.azure.ai)
LinkedIn: http://au.linkedin.com/pub/mohamed-kabiruddin/32/639/8b8/
Contact: http://www.nobrainerlab.com
Mohamed is a Cloud Solutions Architect with extensive experience in designing BI / Data Analytics solutions with expertise in analysis, design, modelling and implementation. He is a keen data enthusiast with a flair for managing and consolidating data.
Contact: http://sqllensman.com/blog/
Patrick Flynn is a Senior Database Administrator with 10 years experience in large 24 x 7 enterprise environments. He is a certified master for SQL Server and a regular attendee of the PASS Summit. Has presented at SQLSaturday events in Sydney, Melbourne, Brisbane and Auckland, Edmonton and Calgary, Oslo and Cambridge
LinkedIn: https://www.linkedin.com/pub/manohar-punna/15/153/508
Contact: http://www.sqlservergeeks.com/author/manoharpunna/
Manohar Punna is an Data Platform Geek and Vice President of DataPlatformGeeks by passion and a Data Platform Consultant by profession. He is a speaker at various conferences like PASS Summit, SQLBits, DPS. He has authored over 150 blogs and has written a One DMV a Day series which is a longest one day series on any topic on SQL Server till date. Manohar is a product of this community and strongly believes in giving back to the community. So, ask him anything you would like to know and he is happy to learn it with you.
Contact: http://www.gumption.co.nz
Robs SQL history started as a remote DBA, branched into consultancy and now includes providing SQL Solutions to a variety of businesses, government departments and banks throughout Australia and New Zealand using a variety of native SQL solutions to meet their performance, higher availability and Disaster Recovery needs.
LinkedIn: https://www.linkedin.com/in/martincatherall
Contact: http://martincatherall.com
Martin is a data consultant in Melbourne, Australia, a Microsoft Data Platform MVP, and PASS Regional Mentor for the Asia Pacific (APAC) region. Martin founded the Christchurch, New Zealand PASS Local Group and lead the group for a number of years before relocating to Melbourne. He has been using SQL Server in various roles since 2000. In addition to anything data related, he enjoys playing the guitar and having fun with his family.
LinkedIn: http://www.linkedin.com/in/greglow
Contact: http://blog.greglow.com
Greg Low is well-known in the SQL Server community as a mentor, trainer, author, and community leader. He is a certified master for SQL Server, was an instructor in that program, and holds a PhD in Computer Science. Microsoft often calls on Greg to develop data-related content, and to train their staff. He regularly speaks at tier-one conferences internationally. Greg is best known for his SQL Down Under podcast, SDU Tools, and his eBooks and whitepapers. He heads up a boutique consultancy called SQL Down Under in Melbourne Australia. Greg has been awarded as an MVP since 2001.
LinkedIn: https://www.linkedin.com/in/rolftesmer
Contact: https://mrfoxsql.wordpress.com/
Rolf has 20+ years IT experience and has been working with the SQL platform since v6.0 (that’s 1994!) and has done just about everything you can around SQL related data and data platforms / architectures ever since then. I have a personal interest in All Things Cloud and Data (Azure, Streaming Data / IoT, Data Warehousing, Machine Learning, Visualisation and SQL Spatial). I have had the opportunity to present at PASS, TechEd, PASS SQL Saturday, PASS Virtual Chapter, SQL User Groups, Big Data Seminars, Microsoft Technology Roadshows, Breakfast Seminars, ++ and enjoy sharing and learning new ideas.
LinkedIn: https://www.linkedin.com/in/piobalistoy/
Contact: https://lazysqlwriter.wordpress.com/; https://blog.pythian.com/author/balistoy/
Pio Balistoy is a Microsoft MVP Certified Trainer for Data Platform. A SQL Server professional with more than 17 years of experience with SQL Server operations, architecture and administration. He brings his passion for SQL Server as the community leader for Singapore SQL PASS and Philippine SQL Server User Group. He is currently one of the Lead Microsoft Data Platform Consultant for The Pythian Services - a global IT product and services company with headquarters in Ottawa, New York, Sydney, UK and India. He also co-founded Excent One Inc, a technology solutions company based in the Philippines and Singapore that helps SMEs integrate and develop Microsoft based business Applications.
The following is a list of sponsors that helped fund the event.


{{#markdown}}
Not yet officially supported; Currently on target for v1.3.
//www.ebi.ac.uk/web_guidelines/EBI-Framework/v1.1/libraries/motion-ui/dist/motion-ui.min.css
Some extra information!


# Authors: Gilles Louppe, Mathieu Blondel, Maheshakya Wijewardena
# License: BSD 3 clause
import numpy as np
from .base import SelectorMixin
from ..base import BaseEstimator, clone, MetaEstimatorMixin
from ..externals import six
from ..exceptions import NotFittedError
from ..utils.metaestimators import if_delegate_has_method
def _get_feature_importances(estimator, norm_order=1):
"""Retrieve or aggregate feature importances from estimator"""
importances = getattr(estimator, "feature_importances_", None)
if importances is None and hasattr(estimator, "coef_"):
if estimator.coef_.ndim == 1:
importances = np.abs(estimator.coef_)
else:
importances = np.linalg.norm(estimator.coef_, axis=0,
ord=norm_order)
elif importances is None:
raise ValueError(
"The underlying estimator %s has no `coef_` or "
"`feature_importances_` attribute. Either pass a fitted estimator"
" to SelectFromModel or call fit before calling transform."
% estimator.__class__.__name__)
return importances
def _calculate_threshold(estimator, importances, threshold):
"""Interpret the threshold value"""
if threshold is None:
# determine default from estimator
est_name = estimator.__class__.__name__
if ((hasattr(estimator, "penalty") and estimator.penalty == "l1") or
"Lasso" in est_name):
# the natural default threshold is 0 when l1 penalty was used
threshold = 1e-5
else:
threshold = "mean"
if isinstance(threshold, six.string_types):
if "*" in threshold:
scale, reference = threshold.split("*")
scale = float(scale.strip())
reference = reference.strip()
if reference == "median":
reference = np.median(importances)
elif reference == "mean":
reference = np.mean(importances)
else:
raise ValueError("Unknown reference: " + reference)
threshold = scale * reference
elif threshold == "median":
threshold = np.median(importances)
elif threshold == "mean":
threshold = np.mean(importances)
else:
raise ValueError("Expected threshold='mean' or threshold='median' "
"got %s" % threshold)
else:
threshold = float(threshold)
return threshold
class SelectFromModel(BaseEstimator, SelectorMixin, MetaEstimatorMixin):
"""Meta-transformer for selecting features based on importance weights.
.. versionadded:: 0.17
Parameters
----------
estimator : object
The base estimator from which the transformer is built.
This can be both a fitted (if ``prefit`` is set to True)
or a non-fitted estimator. The estimator must have either a
``feature_importances_`` or ``coef_`` attribute after fitting.
threshold : string, float, optional default None
The threshold value to use for feature selection. Features whose
importance is greater or equal are kept while the others are
discarded. If "median" (resp. "mean"), then the ``threshold`` value is
the median (resp. the mean) of the feature importances. A scaling
factor (e.g., "1.25*mean") may also be used. If None and if the
estimator has a parameter penalty set to l1, either explicitly
or implicitly (e.g, Lasso), the threshold used is 1e-5.
Otherwise, "mean" is used by default.
prefit : bool, default False
Whether a prefit model is expected to be passed into the constructor
directly or not. If True, ``transform`` must be called directly
and SelectFromModel cannot be used with ``cross_val_score``,
``GridSearchCV`` and similar utilities that clone the estimator.
Otherwise train the model using ``fit`` and then ``transform`` to do
feature selection.
norm_order : non-zero int, inf, -inf, default 1
Order of the norm used to filter the vectors of coefficients below
``threshold`` in the case where the ``coef_`` attribute of the
estimator is of dimension 2.
Attributes
----------
estimator_ : an estimator
The base estimator from which the transformer is built.
This is stored only when a non-fitted estimator is passed to the
``SelectFromModel``, i.e when prefit is False.
threshold_ : float
The threshold value used for feature selection.
"""
def __init__(self, estimator, threshold=None, prefit=False, norm_order=1):
self.estimator = estimator
self.threshold = threshold
self.prefit = prefit
self.norm_order = norm_order
def _get_support_mask(self):
# SelectFromModel can directly call on transform.
if self.prefit:
estimator = self.estimator
elif hasattr(self, 'estimator_'):
estimator = self.estimator_
else:
raise ValueError(
'Either fit SelectFromModel before transform or set "prefit='
'True" and pass a fitted estimator to the constructor.')
scores = _get_feature_importances(estimator, self.norm_order)
threshold = _calculate_threshold(estimator, scores, self.threshold)
return scores >= threshold
[docs] def fit(self, X, y=None, **fit_params):
"""Fit the SelectFromModel meta-transformer.
Parameters
----------
X : array-like of shape (n_samples, n_features)
The training input samples.
y : array-like, shape (n_samples,)
The target values (integers that correspond to classes in
classification, real numbers in regression).
**fit_params : Other estimator specific parameters
Returns
-------
self : object
Returns self.
"""
if self.prefit:
raise NotFittedError(
"Since 'prefit=True', call transform directly")
self.estimator_ = clone(self.estimator)
self.estimator_.fit(X, y, **fit_params)
return self
@property
def threshold_(self):
scores = _get_feature_importances(self.estimator_, self.norm_order)
return _calculate_threshold(self.estimator, scores, self.threshold)
[docs] @if_delegate_has_method('estimator')
def partial_fit(self, X, y=None, **fit_params):
"""Fit the SelectFromModel meta-transformer only once.
Parameters
----------
X : array-like of shape (n_samples, n_features)
The training input samples.
y : array-like, shape (n_samples,)
The target values (integers that correspond to classes in
classification, real numbers in regression).
**fit_params : Other estimator specific parameters
Returns
-------
self : object
Returns self.
"""
if self.prefit:
raise NotFittedError(
"Since 'prefit=True', call transform directly")
if not hasattr(self, "estimator_"):
self.estimator_ = clone(self.estimator)
self.estimator_.partial_fit(X, y, **fit_params)
return self


WATCH | Ugly Fight Breaks Out Between Punjab Police And PNB Players During Nehru Hockey Final
IOA President Narinder Batra, who is also the chief of International Hockey Federation (FIH), also called on HI to take strict action against the players and officials involved.
Indian hockey stooped to a new low on Monday when an embarrassing incident happened during the 56th Nehru Hockey Tournament final. Players of Punjab Police and Punjab National Bank got involved in an ugly fight after the scuffle broke out during the title clash in Delhi. It forced the national federation – Hockey India to seek a detailed report from the tournament organisers.
The brawl started while PNB was on the attack inside the Punjab Police circle. Both teams were locked at 3-3 at that point of time. The players exchanged blows and fought with sticks inside the turf for a while before the tournament officials rushed to douse the fire.
WATCH VIDEO:
The match continued following a brief interruption with eight players on each side after the on-field umpires showed red cards to three players each from both teams. Besides, the Punjab Police manager was also shown the red card for instigating his players.
PNB, eventually, lifted the title by winning the match 6-3.
The incident didn’t go down well with Hockey India, which immediately sought a detailed report from its Tournament Director, Mahesh Kumar. “We are waiting for the official report from the tournament officials and on its basis Hockey India will take necessary action,” HI CEO Elena Norman said.
Indian Olympic Association President Narinder Batra, who is also the chief of International Hockey Federation (FIH), also called on HI to take strict action against the players and officials involved in the ruckus.
“Such irresponsible teams and their careless and uncensored managements, such players and weak and spineless organising committees spoil the name of the game and bring bad reputation to the sport,” a fuming Batra said.
“I urge Hockey India to take maximum strict action,” he added.
For breaking news and live news updates, like us on Facebook or follow us on Twitter and Instagram. Read more on Sports Latest News on India.com.
Story Timeline
- 17 Nov 2019 Hockey India Name 33-member Core Probables For Senior Women National Camp
- 03 Nov 2019 Hockey India Names Core Probables For Junior Women's National Coaching Camp
- 12 Oct 2019 Hockey India Announces 22 Names For Women's National Coaching Camp Ahead of FIH Olympic Qualifiers
Comments - Join the Discussion


Anne Bozackaboutresearch projects contact |
PubMed |
OSF
Bozack AK, Pierre S, DeFelice N, Colicino E, Jack D, Chillrud SN, Rundle A, Astua A, Quinn JW, McGuinn L, Yang Q, Johnson K, Masci J, Lukban L, Maru D, Lee AG. Long-Term Air Pollution Exposure and COVID-19 Mortality: A Patient-Level Analysis from New York City. Am J Respir Crit Care Med. 2021 Dec 9. Online ahead of print. doi: 10.1164/rccm.202104-0845OC Bozack AK, Rifas-Shiman SL, Coull BA, Baccarelli AA, Wright RO, Amarasiriwardena C, Gold DR, Oken E, Hivert MF, Cardenas A. Prenatal metal exposure, cord blood DNA methylation and persistence in childhood: an epigenome-wide association study of 12 metals. Clin Epigenetics. 2021 Nov 19;13(1):208. doi: 10.1186/s13148-021-01198-z Bozack AK, Colicino E, Just AC, Wright RO, Baccarelli AA, Wright RJ, Lee AG.  Epigenetics. 2021. doi: 10.1080/15592294.2021.1985300. Bozack AK, Boileau P, Wei L, Hubbard AE, Sillé FCM, Ferreccio C, Acevedo J, Hou L, Ilievski V, Steinmaus CM, Smith MT, Navas-Acien A, Gamble MV, Cardenas A. Exposure to arsenic at different life-stages and DNA methylation meta-analysis in buccal cells and leukocytes. Environ Health. 2021 Jul 9;20(1):79. doi: 10.1186/s12940-021-00754-7. Bozack AK, Saxena R, Gamble MV. Nutritional Influences on One-Carbon Metabolism: Effects on Arsenic Methylation and Toxicity. Annu Rev Nutr. 2018 Aug 21;38:401-429. doi: 10.1146/annurev-nutr-082117-051757. Bozack AK, Cardenas A, Quamruzzaman Q, Rahman M, Mostofa G, Christiani DC, Kile ML. DNA methylation in cord blood as mediator of the association between prenatal arsenic exposure and gestational age. Epigenetics. 2018;13(9):923-940. doi: 10.1080/15592294.2018.1516453. Bozack AK, Hall MN, Liu X, Ilievski V, Lomax-Luu AM, Parvez F, Siddique AB, Shahriar H, Uddin MN, Islam T, Graziano JH, Gamble MV. Folic acid supplementation enhances arsenic methylation: results from a folic acid and creatine supplementation randomized controlled trial in Bangladesh. Am J Clin Nutr. 2019 Feb 1;109(2):380-391. doi: 10.1093/ajcn/nqy148. Bozack AK, Cardenas A, Geldhof J, Quamruzzaman Q, Rahman M, Mostofa G, Christiani DC, Kile ML. Cord blood DNA methylation of DNMT3A mediates the association between in utero arsenic exposure and birth outcomes: Results from a prospective birth cohort in Bangladesh. Environ Res. 2020 Apr;183:109134. doi: 10.1016/j.envres.2020.109134. Bozack AK, Domingo-Relloso A, Haack K, Gamble MV, Tellez-Plaza M, Umans JG, Best LG, Yracheta J, Gribble MO, Cardenas A, Francesconi KA, Goessler W, Tang WY, Fallin MD, Cole SA, Navas-Acien A. Locus-Specific Differential DNA Methylation and Urinary Arsenic: An Epigenome-Wide Association Study in Blood among Adults with Low-to-Moderate Arsenic Exposure. Environ Health Perspect. 2020 Jun;128(6):67015. doi: 10.1289/EHP6263. Bozack AK, Colicino E, Rodosthenous R, Bloomquist TR, Baccarelli AA, Wright RO, Wright RJ, Lee AG. Associations between maternal lifetime stressors and negative events in pregnancy and breast milk-derived extracellular vesicle microRNAs in the programming of intergenerational stress mechanisms (PRISM) pregnancy cohort. Epigenetics. 2020 Aug 25:1-16. doi: 10.1080/15592294.2020.1805677. Bozack AK, Howe CG, Hall MN, Liu X, Slavkovich V, Ilievski V, Lomax-Luu AM, Parvez F, Siddique AB, Shahriar H, Uddin MN, Islam T, Graziano JH, Gamble MV. Betaine and choline status modify the effects of folic acid and creatine supplementation on arsenic methylation in a randomized controlled trial of Bangladeshi adults. Eur J Nutr. 2020 Sep 11. doi: 10.1007/s00394-020-02377-z. Bozack AK, Millstein S, Martinez Garcel J, Kelly K, Ruberto R, Weiss L. Implementation and outcomes of the New York State YMCA diabetes prevention program: a multisite community-based translation, 2010-2012. Prev Chronic Dis. 2014 Jul 10;11:E115. doi: 10.5888/pcd11.140006. |
|
Github | Google Scholar | LinkedIn | PubMed | OSF |


Sample Link Style
The first time You see me, I should be a light blue,bold, nonunderline Link in the verdana font


I am a digital artist based in Scotland who works with technology to create interactive and generative installations. I am exploring themes of identity, self-expression, surveillance and the abstraction of our representation in the digital age.
I graduated from Duncan of Jordanstone College of Art and Design in 2019.


jl777c
05-Apr-19 06:35 PM
actually BTC devs are VERY active in doing their best to make life hard for all the other coins. first they made the segwit abomination, which made me abandon iguana from being a BTC node as there was no way I was supporting that and if it didnt do BTC, then it really wasnt worth maintaining its full node functionality (though my guess is that it still works find with stable codebase coins)
then they start randomly changing existing rpc calls, BREAKING existing apps
this is a big giant no-no. just ask linus what he things about kernel changes that break userspace
but legacy devs were not satisfied...
they decided to go after all the most commonly used rpc calls to ensure that not just some bitcoin apps broke but all of them did
they were nice enough to totally change the behavior of an existing rpc call and then make a new rpc with the old functionality
yes. you read that correctly. instead of keeping the old rpc the same and making the new functionality have a new name (sane and backward compatible) the broke all programs that used getinfo, validateaddress, signrawtransaction, etc.
you would think that is enough
now they are totally changing the addresses to a new format
so BTC 0.14 or 0.15 is what i still use and probably will use for the forseeable future as that is the pre-segwit insanity
1
2


--- player_js: true ---
Enable Javascript for the channel features to work.

Want to be a radio star? Submit a bump today!
Think the radio is missing something? Submit a request!
Like the radio? Donate!


Structure¶
The beep structure
command takes in N raw battery cycler files (mostly text or csv) and produces N standardized, structured data json files.
The structured json files can be loaded either with the BEEP python BEEPDatapath
interface (see Advanced Structuring) or with subsequent CLI commands such as beep featurize
(see CLI - Featurize).
Structuring help dialog¶
Usage: beep structure [OPTIONS] [FILES]...
Structure and/or validate one or more files. Argument is a space-separated
list of files or globs.
Options:
-o, --output-filenames PATH Filenames to write each input filename to.
If not specified, auto-names each file by
appending`-structured` before the file
extension inside the current working dir.
-d, --output-dir DIRECTORY Directory to dump auto-named files to. Only
works if--output-filenames is not specified.
-p, --protocol-parameters-dir DIRECTORY
Directory of a protocol parameters files to
use for auto-structuring. If not specified,
BEEP cannot auto-structure. Use with
--automatic.
-v, --v-range <FLOAT FLOAT>... Lower, upper bounds for voltage range for
structuring. Overridden by auto-structuring
if --automatic.
-r, --resolution INTEGER Resolution for interpolation for
structuring. Overridden by auto-structuring
if --automatic.
-n, --nominal-capacity FLOAT Nominal capacity to use for structuring.
Overridden by auto-structuring if
--automatic.
-f, --full-fast-charge FLOAT Full fast charge threshold to use for
structuring. Overridden by auto-structuring
if --automatic.
-c, --charge-axis TEXT Axis to use for charge step interpolation.
Must be found inside the loaded dataframe.
Can be used with --automatic.
-x, --discharge-axis TEXT Axis to use for discharge step
interpolation. Must be found inside the
loaded dataframe. Can be used with--
automatic.
-b, --s3-bucket TEXT Expands file paths to include those in the
s3 bucket specified. File paths specify s3
keys. Keys can be globbed/wildcarded. Paths
matching local files will be prioritized
over files with identical paths/globs in s3.
Files will be downloaded to CWD.
--automatic If --protocol-parameters-path is specified,
will automatically determine structuring
parameters. Will override all manually set
structuring parameters.
--validation-only Skips structuring, only validates files.
--no-raw Does not save raw cycler data to disk. Saves
disk space, but prevents files from being
partially restructued.
--s3-use-cache Use s3 cache defined with environment
variable BEEP_S3_CACHE instead of
downloading files directly to the CWD.
--help Show this message and exit.
Specifying output locations¶
There are three options for specifying output filenames:
- Specify all output filenames, one for each input file. Should be
json
. Use--output-filenames
(-o
) to specify files, for example:
$: beep structure -o output1.json -o /path/to/output2.json input1.csv input2.csv
# Outputs output1.json in the CWD and output2.json at /path/to/output.json.
- Specify an output directory where auto-named files will be output. Directory should exist. Use
--output-dir
to specify.
$: beep structure -d /path/to/output_dir input1.csv input2.csv
# Outputs
# - /path/to/output_dir/input1-structured.json
# - /path/to/output_dir/input2-structured.json
- Automatically named files output in CWD. No options needed.
$: beep structure input1.csv input2.csv
# Outputs in the CWD:
# - ./input1-structured.json
# - ./input2-structured.json
Select files (including from S3)¶
Input files can be named individually or globbed. Input files should be supported by BEEP; see Cycler Data Requirements for more details.
Example 1:
$: beep structure file1.csv file2.070
Input files do not need to belong to the same cycler type to work together in one operation.
Example 2:
$: beep structure /path/to/some_files/* /other/path/file.csv
If you pass the --s3-bucket
argument, you can select files or globs based on keys in this bucket. Note you
must have boto3 set up in order to use the S3 files with BEEP.
Example for S3:
S: beep structure --s3-bucket XXXXXXXXXXXXX /my/s3/key.071
Customize structuring parameters¶
You can customize the structuring parameters using these individual variables:
--v-range
--resolution
--nominal-capacity
--full-fast-charge
--charge-axis
--discharge-axis
Example:
$: beep structure * --v-range 0.5 0.9 --resolution 200 --nominal-capacity 1.1 --full-fast-charge 0.9
Alternatively, you can use automatic structuring by passing the --automatic
flag. While this flag will by default
use a general-purpose set of files for determining structuring parameters, you can specifcy your own parameters for
autostructuring by passing both --automatic
and --protocol-parameters-dir
. For example
$: beep structure * --protocol-parameters-dir /path/to/my/params --automatic
Failing or invalid files¶
If any of your files fail or are invalid, you can inspect the full traceback in the status json if you have --output-status-json
specified in the base beep command.
If this does not provide enough information, you can use the inspect command to examine your file, if it can be loaded.


UNBREAKABLE (2000) Reviewed by John Sylva
Rating: A
Last year, M. Night Shyamalan's The Sixth Sense took the country by surprise when its twist ending shocked audiences across the nation, introduced us to the exceptional talent of the young Haley Joel Osment, received 6 Academy Award nominations, and went on to become one of the highest grossing films of all time. Since the announcement of Shyamalan's follow up to Sense, Unbreakable, the country has been asking the questions-"Will Shyamalan deliver again? Will he be able to top The Sixth Sense? Can he create an ending more shocking than Sense's?" The answer to all three of these questions can now be told: The answer is yes-and with flying colors. A chilling masterpiece of the unexpected and the supernatural, Unbreakable, unlike Sense, will divide critics and audiences alike, but its imagination and ambition is what propels it past the quality level of The Sixth Sense.
Bruce Willis (who also starred in Sense) is wonderfully subtle as David Dunne, who, after miraculously being the lone survivor in a train crash, begins coming to strange realizations after a strange note is left on his windshield; He cannot recall a time when he was sick nor injured - somewhat strange for a grown man, eh? Dunne searches for the identity behind the eerie note he received, and is lead to Limited Edition, a comic-book art gallery, owned by the mysterious Elijah Price (an afro-sporting Samuel L. Jackson). Price offers an unrealistic, far-fetched explanation for Dunne surviving the crash and never being sick: David Dunne is unbreakable, his bones do not break. His cells react to bacteria and sickness in a different way than anyone else. Price on the other hand, is on the opposite end of the spectrum. Ever since birth, Price's bones have broken effortlessly. Price relates these two characteristics to that of comic book characters, as Dunne is just first discovering his "trademark", or his special powers as a super-hero.
Shyamalan knows audiences are coming into Unbreakable expecting a conventional tale of the supernatural; He knows audiences want a twist ending that will leave them breathless; He knows audiences want a film that will send them back into the theater several hours later to re-watch the film's twists which are reflected in the ending. And what does he do with this knowledge? He, quite frankly, slams it in the viewer's face and laughs at you for it. Unbreakable will undoubtedly leave audiences disappointed, leaving them asking "What was that all about?" and most likely stating what a "rip-off" it is. Shyamalan knows this. Shyamalan has not made Unbreakable for the mainstream audiences, he has made it for his personal satisfaction, a tribute to comic books. He has made a film that proves a film's advertising campaign does not necessarily reflect the film's true intentions or theme. And ultimately, he has made a film that tells the audience to not walk into his films with any expectations whatsoever, or he will, as seen with Unbreakable, slam them in your face. (And then laugh at you for it.)
Certainly not a rehash of The Sixth Sense, Unbreakable succeeds in a way like no other film this year has for one reason: It does not care how the mainstream will react to it. Shyamalan crafts Unbreakable in a way that the viewer is truly unclear of what they're watching-is this a supernatural thriller with a twist ending, or is it a comic-book adventure tale? The answer is not revealed until the film's final revelation, which will leave some with smiles spread wide across their faces, and will leave others scoffing in disbelief and disgust.  When the credits began to roll, I could only think about one thing: The sequel.
THE BOTTOM LINE: Unbreakable is a uniquely poetic and haunting film that proves M. Night Shyamalan is truly unbreakable.
Film reviewed November 26th, 2000.
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


Shipd Style is a responsive design CSS framework. It is culled from 3 years of repeatedly crafting mobile first designs, that layered on tablet and desktop functionality. With several great organizations, we reinvented this wheel. Each time it got more round and simple.
The framework foundation is based on Stubornella's awesome OOCSS, which separates concerns of box width from those of box padding & margin. This makes dealing with the IE box model differences pretty trivial. Developers need to get in the habit and discipline of always creating a nested div for padding, border and margin. But once that habit is well understood, designing is easy.
On top of that box model and grid managment system, we added a responsive design framework. There are a set of sizes defined for the base case (mobile), and then additional sizes for tablet and desktop. Front-end developers can change the size of element per layout. In mobile, a container can show up at the bottom of the page, and in other layouts it can be a side-menu. This page is one of those examples. The basic work can be done with markup and styling classes alone.


HEAD
Light Dance Editor
NTUEE LightDance Editor
Upload Control
Download Control
Merge Control
Name:
Dancers:
Chosen_Dancer
>>>>>>> 230d97cb7ce450a186f13542c264e7b8cecbaac0
-->
Name:
Dancers:
Chosen_Dancer
<<<<<<< HEAD


The ImageData class represents an image as a string or sequence of pixel data, or as a ctypes pointer. Details such as the pitch and component layout are also stored in the class. You can access an ImageData object for any image with get_image_data:
kitten = pyglet.image.load('kitten.png').get_image_data()
The design of ImageData is to allow applications to access the detail in the format they prefer, rather than having to understand the many formats that each operating system and OpenGL make use of.
The pitch and format properties determine how the bytes are arranged. pitch gives the number of bytes between each consecutive row. The data is assumed to run from left-to-right, bottom-to-top, unless pitch is negative, in which case it runs from left-to-right, top-to-bottom. There is no need for rows to be tightly packed; larger pitch values are often used to align each row to machine word boundaries.
The format property gives the number and order of color components. It is a string of one or more of the letters corresponding to the components in the following table:
R Red G Green B Blue A Alpha L Luminance I Intensity
For example, a format string of "RGBA" corresponds to four bytes of colour data, in the order red, green, blue, alpha. Note that machine endianness has no impact on the interpretation of a format string.
The length of a format string always gives the number of bytes per pixel. So, the minimum absolute pitch for a given image is len(kitten.format) * kitten.width.
To retrieve pixel data in a particular format, use the get_data method, specifying the desired format and pitch. The following example reads tightly packed rows in RGB format (the alpha component, if any, will be discarded):
kitten = kitten.get_image_data()
data = kitten.get_data('RGB', kitten.width * 3)
data always returns a string, however it can be set to a ctypes array, stdlib array, list of byte data, string, or ctypes pointer. To set the image data use set_data, again specifying the format and pitch:
kitten.set_data('RGB', kitten.width * 3, data)
You can also create ImageData directly, by providing each of these attributes to the constructor. This is any easy way to load textures into OpenGL from other programs or libraries.
pyglet can use several methods to transform pixel data from one format to another. It will always try to select the most efficient means. For example, when providing texture data to OpenGL, the following possibilities are examined in order:
The following table shows which image formats can be used directly with steps 1 and 2 above, as long as the image rows are tightly packed (that is, the pitch is equal to the width times the number of components).
Format Required extensions "I" "L" "LA" "R" "G" "B" "A" "RGB" "RGBA" "ARGB" GL_EXT_bgra and GL_APPLE_packed_pixels "ABGR" GL_EXT_abgr "BGR" GL_EXT_bgra "BGRA" GL_EXT_bgra
If the image data is not in one of these formats, a regular expression will be constructed to pull it into one. If the rows are not tightly packed, or if the image is ordered from top-to-bottom, the rows will be split before the regular expression is applied. Each of these may incur a performance penalty -- you should avoid such formats for real-time texture updates if possible.


Collaborators: Eliza Derepas, Justine Carr and Xina Chang-Castillo
The goal of the his project was to redesign the Fair Play for All (FPFA) website.
Our user research showed that the website failed to sell the good work that FPFA did in the Philippines. The redesign process focused around making the content clearer and creating an emotional connection with the user.
Through the design process, we were able to create a new website with a distinct visual style which clearly conveyed what FPFA was all about.
The Fairplay For All Foundation is located in Payatas, Manila, in the Philippines. The Philippines is a third world developing nation in South-East Asia, and the Payatas is a dumpsite and a landfill area within the captial city of Manilla, where poverty is entrenched and there are few opportunities to break out of that cycle.
Fairplay looks to end the poverty cycle sustainably through 3 pillars; education, sports and the Fairplay Cafe.
As a team, we hit the ground running with many different user research techniques and assessments of the current site.
Our most interesting insights came from usability testing and survey results.
The usability testing confirmed what we suspected about the existing website - that it failed to convey the core of what the charity was about.
The surveys brought us some interesting insights about what people who donate to surveys value, which drove our problem statement.
The objective of our usability tests of the existing website was to identify pain points that users experience during interactions with the site.
Users expected a donate button on the homepage
Social Media links need to be in the footer
Joining the mailing list was near impossible
Search results are listed in no obvious order
The Homepage does not make it clear what the Charity does
THEME 1
57%
of people had never donated to overseas charities before.
THEME 2
74%
of people who have donated need to connect emotionally or via shared values before donating to a charity
THEME 3
60%
of people who don't donate to overseas charities do so because of a lack of trust.
With our initial research phase done, we took the quantative and qualitative data from our research and build a problem statement and user insight statement.
Fairplay Foundation is a non-profit organisation designed to give children and families in Payatas in the Philippines a better chance to succeed in life and break the cycle of poverty for good. Our donors prefer to donate to local charities and feel a strong need to see where their time and money is going. Without their total trust, we risk losing their support. How might we increase trust, emotional connection and transparency to increase the number of people who donate and participate with the Fairplay Foundation.
“I need to establish an emotional connection and to know that my money is going to the right place because trust is the most important value to me when it comes to selecting charity.”
As part of our problem definition phase, we mapped the journey we wanted a user to take when using this website, as they build confidence and trust in the Fairplay For All brand.
The inspiration for our design was sparked by the black and white photography from the foundation's Payata’s Paper newsletter. This documentary style photography holds a certain truth and captures the raw honesty of living below the poverty line in Manila. We utilised this photographic style as one of the core elements for establishing transparency, trust and emotional connection with the user.
Video is an important element we wanted to include in our prototype, however xd does not support this file type. Moving images have the ability to very quickly transport a viewer to a different place, to understand and empathise with what they are watching and form a faster emotional connection.
To demonstrate our vision for video as part of the design, we asked someone experienced with Adobe After Effects to build this demo for us, to demonstrate this.
One of the key requirements for this project was that the website should be responsive. We designed with both the mobile and desktop viewports in mind, and one of my tasks was to demonstrate how the site would respond to changes in the viewport size. I put together this demo in Xd to demonstrate the responsive design.
From wireframes to our final design, the site went through many iterations, as we took on board instructor feedback, team reviews and feedback from many iterations of user testing.
Working in Xd, we bought our designs to life with clickable prototypes at all stages of the design process. From a clickable wireframe prototype, to the final high fidelity design, we always had clickable prototypes ready to feed into our testing.
At every stage of the process, our team was conducting user testing. Rather that provide an exhaustive list of the testing we did, here are a few specific examples of tests that we ran with users.
Early in the design phase, we had concerns that some of the hover states of user interface elements (our CTA buttons and main navigation links) were too subtle and it would not be easily distinguished as navigation components, and would disappear into the design.
We developed a set of interactive component tests in Adobe Xd which allowed us to compare design options and to see which hover states were more distinctive for users, and which elements caught users attention first.
Based on the outcome of that testing, we adjusted our design to make our CTA and primary nav hover states clearer.
We did a series of high fidelity user tests on both mobile and desktop to test whether or product met the overall aims of the project.
This final round of testing confirmed that our product design was on the right track. People were immediately drawn either to the donate button or the imagery. There were very few missed clicks and the time on task for each scenario based test was very short.
With more time, there are a few things we would like to revisit - in particular the bottom navigation was confusing and needed rework and simplification.
However, at the close of this three week project, we as a team, felt that we brought together a solution which solved the problem we were presented with.
We created a website with simple, clean navigation which built up trust and an emotional connection with the users, to increase exposure and donations to the Fairplay for All charity.


| TOC |
|
1.
Lists
1.1.
hanging list
1.2.
numbered list
1.3.
ordered list (letters)
1.4.
no explicit counters
1.5.
with explicit counters
1.6.
Nested list
1.7.
list without style
2.
spanx
3.
Tables
3.1.
no borders
3.2.
borders around headers
3.3.
example from xml2rc README
3.4.
no column titles
3.5.
referencing tables
3.6.
table captions
3.7.
single column
3.8.
table alignment
4.
Figures
4.1.
with preamble, no title...
4.2.
with postamble and title...
4.3.
Whitespace handling
4.4.
Whitespace around figures
5.
References
5.1.
xref with no content
5.2.
xref to named <t> element
5.3.
xref to named <t> element inside list
5.4.
xref to named <cref> element
5.5.
xref to named <t> element inside list
5.6.
xref with no auto-formatting
5.7.
xref with content and auto-formatting
5.8.
xref with content and 'none' formatting
5.9.
eref with no content
5.10.
eref with content
5.11.
iref inside paragraph
6.
Paragraph formatting
7.
Sections
7.1.
Subsection with TOC entry
7.2.1.
Sub-subsection with TOC entry
8.
Comments
9.
Artwork width
10.
Blank Lines
11.
Other
11.1.
Comments in Text
12.
References
§
Index
§
Author's Address
| TOC |
| TOC |
- Name:
- timeout
- Namespace:
- DAV:
- Purpose:
- The timeout associated with a lock
- Value:
- TimeType ;Defined in section 9.8
| TOC |
A numbered list:
| TOC |
An ordered list using letters:
- a.
- one
- b.
- two
- c.
- three
- d.
- one
- e.
- two
- f.
- three
- g.
- one
- h.
- two
- i.
- three
- j.
- one
- k.
- two
- l.
- three
- m.
- one
- n.
- two
- o.
- three
- p.
- one
- q.
- two
- r.
- three
- s.
- one
- t.
- two
- u.
- three
- v.
- one
- w.
- two
- x.
- three
- y.
- one
- z.
- two
- aa.
- three
- ab.
- one
- ac.
- two
- ad.
- three
| TOC |
Example for numbered list with user-defined-format:
- R1:
- R1
- R2:
- R2
Another list:
- S1:
- S1
- S2:
- S2
Next list should continue counting R's:
- R1:
- R3
- R2:
- R4
Same with character-based numbering:
- c-a:
- c-a
- c-b:
- c-b
| TOC |
A few requirements:
- R1:
- req R1
- R2:
- req R2
More requirements:
- R3:
- req R3
- R4:
- req R4
A few rules:
- R1:
- rule R1
- R2:
- rule R2
- R3:
- rule R3
Explicit counter with name matching it's format string:
- c-a:
- c-c
- c-b:
- c-d
Same, without counter:
- c-a:
- c-e
- c-b:
- c-f
| TOC |
- A.
- 17
- B.
- 42
| TOC |
One
Two
Three
| TOC |
This is default.
This is emph(asized).
This is strong.
This is verb(atim).
Here is a carriage return inside a spanx element.
| TOC |
The list of valid keywords are:
| keyword | default | meaning | not aligned |
|---|---|---|---|
| strict | no | try to enforce the ID-nits conventions and DTD validity | a |
| iprnotified | no | include boilerplate from Section 10.4(d) of [RFC2026] (Bradner, S., “The Internet Standards Process -- Revision 3,” October 1996.) | bb bb |
| compact | no | when producing a txt/nroff file, try to conserve vertical whitespace | ccc ccc ccc |
| subcompact | compact | if compact is "yes", then setting this to "no" will make things a little less compact | dddd dddd dddd dddd |
| needLines | n/a | an integer hint indicating how many contiguous lines are needed at this point in the output | eeeee eeeee eeeee eeeee eeeee |
| here come empty cells |
Remember, that as with everything else in XML, keywords and values are case-sensitive.
| TOC |
The table below should appear with no borders.
| C1 | C2 |
|---|---|
| 11 | 12 |
| 21 | 22 |
| Table 1: a table with no borders |
| TOC |
The table below should appear with borders just around the headers.
| C1 | C2 |
|---|---|
| 11 | 12 |
| 21 | 22 |
| TOC |
So, putting it all together, we have, e.g.,
| ttcol #1 | ttcol #2 |
|---|---|
| c #1 | c #2 |
| c #3 | c #4 |
| c #5 | c #6 |
which is a very simple example.
| Table 2 |
| TOC |
The table below should appear with no titles.
| 11 | 12 |
| 21 | 22 |
| Table 3: a table with no column titles |
The table below should appear with column titles (one being non-empty).
| FOO | |
|---|---|
| 11 | 12 |
| 21 | 22 |
| Table 4: a table with a single column title |
| TOC |
Table 1 (a table with no borders) shows a table with no borders.
The table above (a table with no borders) shows a table with no borders.
| TOC |
No anchor, no title
| Anchor | Title |
|---|---|
| - | - |
Anchor (not being referenced), no title
| Anchor | Title |
|---|---|
| yes | - |
| Table 5 |
No anchor, with title
| Anchor | Title |
|---|---|
| - | "title" |
| title |
Both anchor and title
| Anchor | Title |
|---|---|
| yes | "title" |
| Table 6: title |
| TOC |
| title |
|---|
| 1 |
| 2 |
| TOC |
| left |
|---|
| 1 |
| center |
|---|
| 1 |
| right |
|---|
| 1 |
| default |
|---|
| 1 |
| TOC |
| TOC |
with preamble, no title...
+--+ | | +--+
| TOC |
+--+ | | +--+
with postamble and title...
| Figure 1: another figure |
The figure above has the title "another figure (another figure)".
| TOC |
Para...
Leading whitespace
test test (leading ws)
Para...
Trailing whitespace
test test (trailing ws)
Para...
No whitespace
test test (no ws)
Para...
| TOC |
spacing paragraph
ART
spacing paragraph
preamble, then
ART
spacing paragraph
ART
then postamble
spacing paragraph
| TOC |
| TOC |
Section 5 (References) is the parent section.
| TOC |
With content: see first sentence of previous section.
Without content: see Paragraph 1.
| TOC |
With content: see first element in list below.
- test
- Test
| TOC |
With content: see test comment (No anchor, source given.).
Without content: see Comment comment‑test (No anchor, source given.).
| TOC |
See last entry in Section 1.3 (ordered list (letters)).
| TOC |
So far we have sections 1 (Lists) ("Lists (Lists)") through 5 (References) ("References (References)").
| TOC |
This is a subsection of References (References).
| TOC |
Here we are referring to RFC 2026 (Bradner, S., “The Internet Standards Process -- Revision 3,” October 1996.), without emitting extra formatting.
Here we are referring to this Section (xref with content and 'none' formatting), without emitting extra formatting.
| TOC |
See also http://greenbytes.de/tech/webdav. Here's another one that is quite long: http://greenbytes.de/tech/webdav/draft-reschke-rfc3744bis-issues.html#5.7_inherited-acl-set-protected. Does it break properly?
| TOC |
See also greenbytes WebDAV resources.
| TOC |
This paragraph contains an inline iref.
| TOC |
This is the first sentence of the paragraph. This is the second sentence of the paragraph (with two leading blanks). Here's another sentence that was started on a separate line in the input file.
This is the second paragraph.
| TOC |
| TOC |
| TOC |
| TOC |
| TOC |
This line contains a few comments. [comment-test] (JRE: No anchor, source given.) This line contains a few comments. [comment1] (Anchor given, no source.) This line contains a few comments. [comment2] (JRE: Both specified.) This line contains a few comments. [anchor37] (No anchor, no source.) This line contains a few comments. [anchor38] (No anchor, no source, but embedded markup:.)http://xml.resource.org This line contains a few comments.
| TOC |
This should fit (69 characters plus three spaces of indentation in text output).
012345678901234567890123456789012345678901234567890123456789012345678
This shouldn't.
0123456789012345678901234567890123456789012345678901234567890123456789
| TOC |
Just a forced
line break.
One
blank line.
Seven blank lines.
| TOC |
| TOC |
First sentence (before XML comment, invisible here). Second sentence.
| TOC |
| [RFC2026] | Bradner, S., “The Internet Standards Process -- Revision 3,” BCP 9, RFC 2026, October 1996 (TXT). |
| [RFC2396] | Berners-Lee, T., Fielding, R., and L. Masinter, “Uniform Resource Identifiers (URI): Generic Syntax,” RFC 2396, August 1998. This RFC will soon be updated, check http://cvs.apache.org/viewcvs.cgi/*checkout*/ietf-uri/rev-2002/rfc2396bis.html for the latest draft. The issues list is at http://cvs.apache.org/viewcvs.cgi/*checkout*/ietf-uri/rev-2002/issues.html. |
| TOC |
| anchor37: | No anchor, no source. |
| anchor38: | No anchor, no source, but embedded markup:. |
| comment-test: | JRE: No anchor, source given. |
| comment1: | Anchor given, no source. |
| comment2: | JRE: Both specified. |
| TOC |
| I | |
| inline iref |
| TOC |
| Julian F. Reschke | |
| greenbytes GmbH | |
| Hafenweg 16 | |
| Muenster, NW 48155 | |
| Germany | |
| Email: |<EMAIL_ADDRESS>|
| URI: | http://greenbytes.de/tech/webdav/ |


infection titer influenza \documentclass[pt]{minimal} \setlength{\oddsidemargin}{-pt} \usepackage{amsbsy} \usepackage{amsfonts} \usepackage{amsmath} \usepackage{amssymb} \usepackage{mathrsfs} \usepackage{upgreek} \usepackage{wasysym} protection children time subtype model Supplementary log antibody HNpdm susceptibility adults rate [., individual dynamics models latent (Supplementary Table individuals study titers virus antibodies {border-style boost data infections Fig. age baseline household individual’s likelihood px;} #ffffff;} estimate adults, immunity titer, HI-correlated \hfill observed responses (Fig. measurement years HN, Hong OR, antigenic estimates infection, non-HI-correlated probability protection, protective response transmission (see PCR-confirmed community consistent estimated fitted incidence infection. median parameters short-term year Infect. acute duration long-term results seasonal subtype-specific wanes < (., (Eq. different given immune imprinting obs pandemic primary protection. simulated (). Kong changes contribution correlate differences effect parameter peak pre-infection px; ratios using vaccination {font-family CI: Discussion). Figs. Group associated cat change epidemic font-size individuals’ longitudinal nonspecific observation odds original post-infection rises risk sites strains study. susceptibility, tested Influenza adults. attack boosts children. cohort double; error exposure factors fixed function gives hemagglutinin heterosubtypic households individuals, infected initial intervals maximum observations old suggest trajectories vaccine variation viruses Discussion, PCR-positive Protection Susceptibility University \begin{document}$$q_{_{i,s}}(t)$$\end{document} \le _{a_i,s}$$\end{document} additional affect analysis annual based boost, border-color border-width circulating correlates cumulative evidence fit group half-life higher imp included inferred intensity magnitude measure mechanistic model, monthly naive number provided range relationship series solid; standard studies sum swab tend titer. titers. used variability variable weighted within-household {font-style {font-weight (HN) (Table (the .)) .); A(HN) Antibody Carlo Commons Creative Data HA, HN. However, \begin{document}$$q_{i,s}(t) \begin{document}$$t_{i,s}^{\mathrm{X}}$$\end{document} \lambda _{a_i,s} adults’ age- assume average b). best-fit better bold broadly ceiling child collected complete confidence contact corresponding courier; daily defined dependence determine determined difficult distribution em; epidemics epitopes fitting force history homosubtypic increase individual, individual-level infectious inter-epidemic logistic longer longterm lower mean measurements min months obtained occurred panel periods population population-level positive pt;} rates recent replicate rise sera set small specimens strain sub-model subtype, subtypes, surveillance titers, use vaccinated values waning ≤ y


Part 4 - Setting up Travis-CI for automating deployment
Published:
This article is a part of a series of articles for web development using pelican. So, if you haven’t read the previous articles, please check it out by clicking the links below.
Creating and deploying static websites using Markdown and the Python library Pelican
- Part 1: Setting up Pelican - Installation and Theme
- Part 2: Writing content using Markdown
- Part 3: Hosting your website to GitHub Pages and custom domain
Up to this point, you have created and hosted your static website on GitHub pages and custom domain as well.
Now, let’s learn to automate the process of pushing to source and deploying to the master branch by using continuous integration tools like Travis-CI so that you don’t need to manually push to two branches every time you update your site.
-
First, visit Travis-CI and log in using your GitHub account.
-
Then, add your repository
yourusername.github.io
in the Repositories section as shown below.
-
Now, we need to generate Personal access tokens in GitHub. Go to Generate new token for Github
-
Check the
public_repo
checkbox and clickGenerate Token
as shown below.
- Copy the generated token by clicking the copy button as shown below. Note that you cannot view this token again if you don’t copy.
-
Go back to Travis-CI Repository and open settings. Add the following environment variables as shown in the gif:
- GH_TOKEN Paste the value of access token you copied
- TRAVIS_REPO_SLUG
username/username.github.io
- Now, open
fabfile.py
and delete the publish function along with the wrapper@hosts(production)
and replace it by the following lines:
# @hosts(production) > Removed
def publish(commit_message):
"""Automatic deploy to GitHub Pages"""
env.msg = commit_message
env.GH_TOKEN = os.getenv('GH_TOKEN')
env.TRAVIS_REPO_SLUG = os.getenv('TRAVIS_REPO_SLUG')
clean()
local('pelican -s publishconf.py')
with hide('running', 'stdout', 'stderr'):
local("ghp-import -m '{msg}' -b {github_pages_branch} {deploy_path}".format(**env))
local("git push -fq<EMAIL_ADDRESS>{github_pages_branch}".format(**env))
- Now, create a
.travis.yml
configuration file in the root directory for automatic deployment.
(.venv) $ touch .travis.yml
Add the following lines in it.
language: python
cache: pip
branches:
only:
- source
python:
- 3.5
install:
- gem install sass
- pip install -r requirements.txt
- git config --global user.email "your-github-email"
- git config --global user.name "your-github-name"
- git clone https://github.com/alexandrevicenzi/Flex.git themes/Flex
- git clone https://github.com/getpelican/pelican-plugins
script:
- fab publish:"Build site"
The above file is responsible for testing every pushed source code and also for automatic deployment of the output folder contents (HTML) to the master branch. Change the theme repository in the above file if you are using a different theme.
- The final step is to add the following line to the top of your
README.md
file.
# Personal Blog [![Build Status](https://travis-ci.org/username/username.github.io.svg?branch=source)](https://travis-ci.org/username/username.github.io)
Note that you must replace username
by your username in the above line. The above line adds the build status (passed or failed) in your repository as shown below.
You can click the build button to view the build status in Travis-CI in detail. You can view why the build failed in detail if the build failed and hence make the necessary corrections in the source code.
If the build fails, the new contents are not pushed to the master branch and hence your website won’t be updated by failed content caused by an error in the source code. This enables your website to run without errors at all times.
Hence, after a successful configuration, every time you update your source code and push to the source branch, automatic testing occurs and the website’s HTML files are pushed to the master branch.
Learn to integrate Disqus comments and Google Analytics in your website in the part 5 of the article.
If you have any confusion in any article, feel free to comment on your queries. I will be more than happy to help. I am also open to suggestions and feedbacks.
Also, you can use my GitHub repository for my blog post: ayushkumarshah.github.io as a reference in any point of the article. I have followed the same steps mentioned in this series to create my blog website that you are seeing right now.
If you want to visit any specific parts of the article, you can do so from the links below.
- Part 1: Setting up Pelican - Installation and Theme
- Part 2: Writing content using Markdown
- Part 3: Hosting your website to GitHub Pages and custom domain
- Part 4: Setting up Travis-CI for automating deployment
- Part 5: Integrate Disqus comments and Google Analytics with Pelican
Or, go to the home-page of the article.
Leave a Comment


Preparation time
1-2 hours
Cooking time
30 mins to 1 hour
Serves
Serves 8
Celebrate the start of summer with this simple and seasonal asparagus and new potato chicken pie.
For the filling, fry the onion and garlic gently in the butter until tender, without browning.
Add the potatoes, orange zest and white wine, and boil down until the wine has virtually disappeared.
Sprinkle over the flour and stir for a few seconds, so it is evenly distributed.
Gradually stir in the stock, to make the sauce.
Season with salt and pepper.
Stir in the chicken.
Cover and leave to simmer away quietly for 10 minutes or so.
Stir occasionally, then uncover for another five minutes, until sauce has thickened.
Stir in the cream and cook for a final three minutes.
Meanwhile, cook the asparagus lightly in salted water, until tender, but not floppy.
Drain.
Stir the asparagus in with the chicken and potatoes.
Taste and adjust the seasoning.
Spoon the whole lot onto a 1 - 1.5 litre/1¾ - 2½ pint pie dish and leave to cool.
Preheat the oven to 200C/425F/Gas 7.
Roll the pastry out thinly on a floured board.
Cut out a couple of long strips, about 1cm/½in wide.
Brush the edge of the pie dish with the beaten egg.
Lay the strips on the edges, curving to fit, and cutting so that they go all the way round, but don't overlap.
Brush with egg wash, then lay the remaining pastry over the top.
Trim off excess, and press the pastry down all around the edge to seal.
Use the trimmings to make decorative leaves, or flowers or whatever takes your fancy, and then glue them in place with the beaten egg.
Make a hole in the centre so that steam can escape
Chill the pie in the fridge for 30 minutes, then brush with beaten egg and place in the oven.
After 10 - 15 minutes, when the pie is golden brown, reduce the heat to 190C/375F/Gas 5 and continue cooking for a further 20-25 minutes.
Serve hot.


messaging
– Messaging¶
An EV3 Brick can send information to another EV3 Brick using Bluetooth. This page shows you how to connect multiple bricks and how to write scripts to send messages between them.
Pairing two EV3 Bricks¶
Before two EV3 bricks can exchange messages, they must be paired. You’ll need to do this only the first time. First, activate bluetooth on all EV3 bricks as shown in Figure 19.
Now you can make one EV3 Brick search for the other and pair with it, as shown in Figure 20.
Once they are paired, do not click connect in the menu that appears. The connection will be made when you run your programs, as described below.
When you scan for Bluetooth devices, you’ll see a list of device names. By default, all EV3 Bricks are named ev3dev. Click here to learn how to change that name. This makes it easy to tell them apart.
Repeat the steps in Figure 20 if you want to pair more than two EV3 Bricks.
Server and Client¶
A wireless network consists of EV3 Bricks acting as servers or clients. A example with one server and one client is shown in Figure 21. Messages can be sent in both ways: the server can send a message to the client, and the client can send a message to the server.
Show/hide full server example
Example: EV3 Bluetooth Server.
This is the full version of the excerpt shown in Figure 21.
#!/usr/bin/env pybricks-micropython
# Before running this program, make sure the client and server EV3 bricks are
# paired using Bluetooth, but do NOT connect them. The program will take care
# of establishing the connection.
# The server must be started before the client!
from pybricks.messaging import BluetoothMailboxServer, TextMailbox
server = BluetoothMailboxServer()
mbox = TextMailbox('greeting', server)
# The server must be started before the client!
print('waiting for connection...')
server.wait_for_connection()
print('connected!')
# In this program, the server waits for the client to send the first message
# and then sends a reply.
mbox.wait()
print(mbox.read())
mbox.send('hello to you!')
Show/hide full client example
Example: EV3 Bluetooth Client.
This is the full version of the excerpt shown in Figure 21.
#!/usr/bin/env pybricks-micropython
# Before running this program, make sure the client and server EV3 bricks are
# paired using Bluetooth, but do NOT connect them. The program will take care
# of establishing the connection.
# The server must be started before the client!
from pybricks.messaging import BluetoothMailboxClient, TextMailbox
# This is the name of the remote EV3 or PC we are connecting to.
SERVER = 'ev3dev'
client = BluetoothMailboxClient()
mbox = TextMailbox('greeting', client)
print('establishing connection...')
client.connect(SERVER)
print('connected!')
# In this program, the client sends the first message and then waits for the
# server to reply.
mbox.send('hello!')
mbox.wait()
print(mbox.read())
The only difference between the client and the server is which one initiates the connection at the beginning of the program:
- The server must always be started first. It uses the
BluetoothMailboxServer
class. Then it waits for clients using thewait_for_connection
method.- The client uses the
BluetoothMailboxClient
class. It connects to the server using theconnect
method.- After that, sending and receiving messages is done in the same way on both EV3 Bricks.
-
class
BluetoothMailboxServer
¶ Object that represents a Bluetooth connection from one or more remote EV3s.
The remote EV3s can either be running MicroPython or the standard EV3 firmware.
A “server” waits for a “client” to connect to it.
-
wait_for_connection
(count=1)¶ Waits for a
BluetoothMailboxClient
on a remote device to connect.Parameters: count (int) – The number of remote connections to wait for. Raises: OSError
– There was a problem establishing the connection.
-
close
()¶ Closes all connections.
-
-
class
BluetoothMailboxClient
¶ Object that represents a Bluetooth connection to one or more remote EV3s.
The remote EV3s can either be running MicroPython or the standard EV3 firmware.
A “client” initiates a connection to a waiting “server”.
-
connect
(brick)¶ Connects to an
BluetoothMailboxServer
on another device.The remote device must be paired and waiting for a connection. See
BluetoothMailboxServer.wait_for_connection()
.Parameters: brick (str) – The name or Bluetooth address of the remote EV3 to connect to. Raises: OSError
– There was a problem establishing the connection.
-
close
()¶ Closes all connections.
-
Mailboxes¶
Mailboxes are used to send data to and from other EV3 Bricks.
A Mailbox has a name
, similar to the “subject” of an email. If two EV3
Bricks have a Mailbox with the same name, they can send messages between them.
Each EV3 Brick can read its own Mailbox, and send messages to the Mailbox on
the other EV3 Brick.
Depending on the type of messages you would like to exchange (bytes, booleans, numbers, or text), you can choose one of the Mailboxes below.
-
class
Mailbox
(name, connection, encode=None, decode=None)¶ Object that represents a mailbox containing data.
You can read data that is delivered by other EV3 bricks, or send data to other bricks that have the same mailbox.
By default, the mailbox reads and send only bytes. To send other data, you can provide an
encode
function that encodes your Python object into bytes, and adecode
function to convert bytes back to a Python object.Parameters: - name (str) – The name of this mailbox.
- connection – A connection object such as
BluetoothMailboxClient
. - encode (callable) – Function that encodes a Python object to bytes.
- decode (callable) – Function that creates a new Python object from bytes.
-
read
()¶ Gets the current value of the mailbox.
Returns: The current value or None
if the mailbox is empty.
-
send
(value, brick=None)¶ Sends a value to this mailbox on connected devices.
Parameters: - value – The value that will be delivered to the mailbox.
- brick (str) – The name or Bluetooth address of the brick or
None
to to broadcast to all connected devices.
Raises: OSError
– There is a problem with the connection.
-
wait
()¶ Waits for the mailbox to be updated by remote device.
-
wait_new
()¶ Waits for a new value to be delivered to the mailbox that is not equal to the current value in the mailbox.
Returns: The new value.
-
class
LogicMailbox
(name, connection)¶ Object that represents a mailbox containing boolean data.
This works just like a regular
Mailbox
, but values must beTrue
orFalse
.This is compatible with the “logic” mailbox type in EV3-G.
Parameters: - name (str) – The name of this mailbox.
- connection – A connection object such as
BluetoothMailboxClient
.
-
class
NumericMailbox
(name, connection)¶ Object that represents a mailbox containing numeric data.
This works just like a regular
Mailbox
, but values must be a number, such as15
or12.345
This is compatible with the “numeric” mailbox type in EV3-G.
Parameters: - name (str) – The name of this mailbox.
- connection – A connection object such as
BluetoothMailboxClient
.
-
class
TextMailbox
(name, connection)¶ Object that represents a mailbox containing text data.
This works just like a regular
Mailbox
, but data must be a string, such as'hello!'
or'My name is EV3'
.This is compatible with the “text” mailbox type in EV3-G.
Parameters: - name (str) – The name of this mailbox.
- connection – A connection object such as
BluetoothMailboxClient
.