{% extends "../../layout.html" %} {% block sectionClasses %}plugins hasBreadCrumb plugins-spincast-pebble{% endblock %} {% block meta_title %}Plugins - Spincast Pebble{% endblock %} {% block meta_description %}Spincast Pebble plugin provides templating functionalities using Pebble.{% endblock %} {% block scripts %} {% endblock %} {% block body %}
This plugin provides an implementation of the TemplatingEngine interface : SpincastPebbleTemplatingEngine. It is based on Pebble.
Make sure you read the Templating Engine section for more information about the templating functionnalities. Of course the Pebble documentation is also very useful.
If you use the spincast-default
artifact and the standard Bootstrapper,
this plugin is already installed by default so you have nothing to do!
If you start from scratch, using the spincast-core
artifact, you can use the
plugin by :
1. Adding this Maven artifact to your project:
<dependency> <groupId>org.spincast</groupId> <artifactId>spincast-plugins-pebble</artifactId> <version>{{spincast.spincastCurrrentVersion}}</version> </dependency>
2. Installing the provided SpincastPebblePluginModule module to your Guice context.
The class implementing the SpincastPlugin interface is SpincastPebblePlugin.
You can bind a SpincastPebbleTemplatingEngineConfig implementation to tweak the default configurations used by this plugin. By default, the SpincastPebbleTemplatingEngineConfigDefault class is used as the implementation.


This is a starter {{.LANGUAGE}} webserver
There is a second page: Page 2
./rebuild_server.sh; # Builds bin/webserver
./bin/restart.sh; # kills existing server then runs webserver


Wedding
CEREMONY
The Kelly Gallery
17315 Antioch Rd
Overland Park, Kansas 66085
Saturday, June 3rd, 2017
5 p.m. under the Willow Tree
SCHEDULE OF EVENTS
Outdoor Ceremony
Saturday, June 3rd at 5 p.m.
Reception Under Outdoor Tent
Cocktail Hour & Hor D'oeuvres
Buffet Dinner Featuring:
- Boursin Chicken
- Prime Rib
Dancing & drinks to follow
ending at 10 p.m.
BRIDAL PARTY
- Carissa Winters
- Tori Wyett
- Kylin Winters
- Raymond Merschbrock
- Joshua Ridgely
- Jeff Lopez
Accomodations
HOTELS
Please book your hotel as soon as possible as they will not hold rooms for us. Book using the link below for a wedding discount.
Holiday Inn Express & Suites
7580 W. 135th Street
Overland Park, KS 66223
(913) 681-8400
A shuttle to/from the venue will be provided from 3 p.m. to 5 p.m. and again from 8 p.m. to 11 p.m.
BOOK NOW
DIRECTIONS
Coming Soon!
VICINITY MAP
Registry
Check back soon for updates!
Contact Us
Brianna Shepherd
Trevor Winters
Day of Wedding Questions:
Other Questions:
© 2016-2017 BriannaAndTrevor.com. All Rights Reserved.


 My psychiatrist prescribes me 40mg of Celexa twice a day. I took seven 40mg pills, 280mg of Celexa. This is where I messed up.
Not too long after I ingested the pills, I noticed lights getting brighter and my heart beating a little faster. Before I knew it, I felt like I was having a severe panic attack. Worse than any other ones I've ever had (I suffer from panic attacks and stress and take Klonopin for it). Objects started looking strange, I couldn't think straight (confusion, disorientation), and I felt like I was going to jump out of my skin. It was like abusing diphenhydramine at the 400mg - 600mg range. It was not a happy, fun, or exciting experience at all. It was terrible and I regret it even to this day.
I will never try this again and I extremely discourage anyone else from trying it. The pills are for depression, not for having a good ol' time. Take my word for it. Peace.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Service
Product
Category 1
Active
Link item
Link item
Active
Link item
Link item
Short image call to action
About
Reference
Contact
Product
UPS
Battery
Precision Air
Surge Protection
Generator
MDB and Accessaries
Service Solution
Maintenance Contract
Corrective Maintenance
Preventive Maintenance
Per call Service
Electrical System & Installation
Technical Support 24 Hr.
Power Monitoring & Analysis
UPS Monitoring
Battery Monitoring
Cooling Monitoring
Network Monitoring
Power Quality Analysis
Critical Power Solution
Consultant
Training
Total Solution on Critical Power System Design


About
I'm a Software Engineer from San Francisco California with a background in Communications and three years experience as a Project Manager. I'm passionate and self-driven with an interest in elegant yet practical solutions to todays problems by building innovative web applications. I enjoy collaborating with talent, motivated people while learning and applying my skills. I'm inspired by tech pioneers who have changed the world and it motivates me to do what I can to make the world a better place. I'm always looking for new opportunities and excited to bring my creative and problem solving skills into the tech field. On my free time, some other things I enjoy are videogames, sports, hiking and camping, and playing the keyboard. Oh, and I also have two dogs!
Skills
Projects
todoAPI/SPA
Created a JSON REST API with Express and MongoDB and then built a simple todo list single-page application using the API.
Tech Stack: Express, MongoDB, HTML5, CSS3, JavaScript, and Jquery
eFeedback
eFeedback is a fullstack MERN application that allows users to send out bulk emails in the form of surveys to their customers to collect some amount of feedback to ultimately provide a better application or service.
Tech Stack: Express, MongoDB, Mongoose, Passport, StripeAPI, SendGridAPI, React, Redux, HTML5, CSS3, SemanticUI, and JavaScript
myBlogger
MyBlogger is a web application that allows users to register and post blog entries about their daily lives. Users are encouraged to intereact with one another and comment on each others posts.
Tech Stack: Express, MongoDB, Mongoose, Passport, Quill, HTML5, CSS3, SemanticUI, and JavaScript
restfulTodo
RestfulTodo is a simple todo application that allows users to register, log in, and view their profile page with a list of their todos. With AJAX, users can create and delete their todos without refreshing the page or ever leaving their profile.
Tech Stack: Express, MongoDB, Mongoose, Passport, HTML5, CSS3, SemanticUI, and JavaScript
weatherApp
WeatherApp allows users to quickly look up weather information by searching cities globally around the world.
Tech Stack: React, Redux, ReactRouter, GoogleMapsAPI, HTML5, CSS3, SemanticUI, and JavaScript
youtubeClone
YouTube clone that allows users to search for any YouTube video. Each keypress updates the search dynamically.
Tech Stack: React, YouTubeAPI, HTML5, CSS3, Bootstrap, and JavaScript
campGrounds
CampGrounds is a web application that allows users to post reviews on camp sites and comment on other users reviews.
Tech Stack: Express, MongoDB, Mongoose, Passport, GoogleMapsAPI, HTML5, CSS3, Bootstrap, and JavaScript
Daily Habbits
Daily Habbits is a web and mobile application that lets users journal their daily activities and see their weekly progress and statistics. Users can also journal via text and receive daily notifications about their activities.
Tech Stack: RubyonRails, ReactNative, TwilioAPI, GoogleMapsAPI, WeatherUndergroundAPI, PostgreSQL, HTML3, CSS3, and JavaScript
Crabalicious Films
Crabalicious Films is a web application that allows users to rate and review films, comment on other users reviews, and sort films by categories.
Tech Stack: RubyonRails, PostgreSQL, HTML5, CSS3, Bootstrap, and JavaScript


Hazel Chu elected cathaoirleach of The Green Party
by Jack QuannDublin city Councillor Hazel Chu has been elected as the new cathaoirleach of The Green Party.
Councillor Chu takes up the role following a vote of party members and succeeds Roderic O'Gorman as chair.
The election was done by a postal ballot, with roughly half of all full members taking part.
Councillor Chu came narrowly ahead of Councillor Pauline O'Reilly, the party's general election candidate for Galway-West.
Speaking following the count, Ms Chu said: "I'm delighted to take up the role of cathaoirleach of The Green Party.
"I believe that The Green Party will have a growing influence in Irish politics in the years ahead and I'm keen that we prepare for that.
"I want to help get the party ready for the upcoming general election, I want to help develop new branches of the party, and I want to help support new candidates.
"As climate breakdown, environmental pollution, and inequality emerge as the issues of our time The Green Party are uniquely placed to contribute to Ireland's future.
"I want to make sure we are ready, as an organisation, to compete right across the country and build support."
She also thanked Ms O'Reilly "who ran a fantastic campaign".
She added: "I want to focus now on getting Pauline elected as a TD for Galway West."
"Last but not least, I want to thank the members for their support and for participating in such high numbers in this important party decision."
Ms Chu is a Dublin city councillor for the Pembroke area.
She trained as a barrister and has led communications for some of Ireland's best-known brands.
She co-founded the campaign group Mothers4Climate, has a column in the Business Post and is a regular contributor on Newstalk, Virgin Media and RTÉ radio.


Oct 2015
Intro to Electron - NodeJS on the Desktop
Adam Engebretson
Springfield Creatives
Oct 15 - 7:30pm
Scary Movies at The Moxie!
Springfield Python Developers
Oct 20 - 6:00pm
Controlling the physical world with Raspberry Pi
Todd Christell
The eFactory
WordPress Springfield
Oct 20 - 7:00pm
FALL Back to Basics: Installation & Setup of Your First Wordpress Site
Location: TBD
Springfield .NET Users Group
Oct 27 - 6:00pm
TBD
The Library Center
Springfield Drupal
Nov 9 - 6:00pm
Monthly Meetup
The Creative Foundry
Thunder Plains
Conference
Nov 3
Oklahoma City
Midwest.io
Nov 9-10
Kansas City, MO
Upcoming
- 1 YEAR - November - Intro to Ember.js - (Neil Hooper)
- Holiday Meetup for Dec
- New site, new engagements, new format
And Now
Electron
Adam Engebretson


ActiveRecord’s connection pool is based on threads. Since we are working with EM and a single thread, multiple fiber design, we need to provide our own connection pool that keys off of Fiber.current so that different fibers running in the same thread don’t try to use the same connection.
# File lib/active_record/fiber_patches.rb, line 52 52: def initialize(spec) 53: @spec = spec 54: 55: # The cache of reserved connections mapped to threads 56: @reserved_connections = {} 57: 58: # The mutex used to synchronize pool access 59: @connection_mutex = FiberedMonitor.new 60: @queue = @connection_mutex.new_cond 61: 62: # default 5 second timeout unless on ruby 1.9 63: @timeout = spec.config[:wait_timeout] || 5 64: 65: # default max pool size to 5 66: @size = (spec.config[:pool] && spec.config[:pool].to_i) || 5 67: 68: @connections = [] 69: @checked_out = [] 70: end
# File lib/active_record/fiber_patches.rb, line 95 95: def checkout_and_verify(c) 96: @checked_out << c 97: c.run_callbacks :checkout 98: c.verify! 99: c 100: end
Remove stale fibers from the cache.
# File lib/active_record/fiber_patches.rb, line 79 79: def remove_stale_cached_threads!(cache, &block) 80: keys = Set.new(cache.keys) 81: 82: ActiveRecord::ConnectionAdapters.fiber_pools.each do |pool| 83: pool.busy_fibers.each_pair do |object_id, fiber| 84: keys.delete(object_id) 85: end 86: end 87: 88: keys.each do |key| 89: next unless cache.has_key?(key) 90: block.call(key, cache[key]) 91: cache.delete(key) 92: end 93: end
Disabled; run with --debug to generate this.
Generated with the Darkfish Rdoc Generator 1.1.6.


CEDA OpenSearch Service
Welcome to the CEDA OpenSearch Service
The description document can be found
here


If you accidentally landed on this website this is a personal blog of Suresh Swamy. I set up this blog as part of the web developer course at Dev Academy NZ in 2015. I would like to write about anything that drives, motivates, inspires me. There will be personal stuff also, photos of places I have been, food, sports, or just anything I want to share.
As I progress through my learning I will try to keep improving this blog.
So stay tuned.


Title: Wise SVN
Keywords: svn tortoisesvn snailsvn versioncontrol sourcecontrol files
Description:
Simple but powerful SVN Integration for Unity 3D utilizing TortoiseSVN (for Windows) or SnailSVN (for MacOS) user interface. A must have plugin if you use SVN as your version control system in your project.
======== Prerequisites ========
• Have SVN installed
→ Have installed SVN command line interface (CLI)
• (Optional) Have TortoiseSVN (for Windows) or SnailSVN (for MacOS) installed.
======== Features ========
• Hooks up to Unity move and delete file operations and executes respective svn commands to stay in sync.
→ Handles meta files as well.
→ Moving assets to unversioned folder will ask the user to add that folder to SVN as well.
→ Moving folders / files that have conflicts will be rejected.
→ Will work with other custom tools as long as they move / rename assets using Unity API.
• Provides assets context menu for manual SVN operations like commit, update, revert etc.
• Show overlay svn status icons
→ Show server changes that you need to update.
→ Show locked files by you and your colleges.
• Auto-Lock assets by path and type
→ Modified files (asset or meta) that match specified path and type will be automatically locked.
→ When files are locked by someone else a prompt will be shown allowing users to steal the lock by force.
→ When file changes are cleared, they will be unlocked automatically.
• Branch Selector
→ Scans for Unity projects in your SVN repository's branches.
→ Lists all available branches.
→ Opens Repo-Browser showing target asset in selected branch.
→ Opens "Show Log" on target asset in selected branch.
→ Switches to selected branch.
→ Scans for conflicts (shows which branches have changes to the target asset).
• Minimal performance impact
• Survives assembly reloads
• You don't have to leave Unity to do SVN chores.
• Works on Windows and MacOS (maybe Linux?)
• Simple API to integrate with your tools.
======== Usage ========
Do your file operations in Unity and the plugin will handle the rest.
User SVN operations are available in the menu (or right-click on any asset): "Assets/SVN/..."
WARNING: Never focus Unity while the project is updating in the background. Newly added asset guids may get corrupted in which case the Library folder needs to be deleted.
Preferred workflow is to always work inside Unity - use the "Assets/SVN/..." menus. "Assets/SVN/Update All" will block Unity while updating, to avoid Unity processing assets at the same time.
This is an issue with how Unity works, not the plugin iteself. Unity says its by "design".
GitHub |
Unity Forum |
Reddit


grep
grep is the Unix utility used to perform text searches against files or standard input text. grep supports basic, extended, and Perl regular expressions, depending on the option specified:
-E uses extended regular expressions. -G uses basic regular expressions. -P uses Perl regular expressions.
Tip | Exact features and functionality vary based on the option specified. Most users opt for Perl regular expressions (described later) because these are the most standard. |
Note the following:
By default, grep displays the entire line for any lines containing matches; to show just the match, use the –o option. Use option –v to negate the match and display only nonmatching lines. Use option –c to display the count (number of matches) instead of all match details. Use option –i for matching that is not case sensitive. grep is used for search operations, not for replace operations. As such, no replace functionality is supported.
|


Being Excellent To Each Other
Women In Tech Nottingham was started in April 2016. We are a meetup for those working in technology and for those with an emerging interest in the field. Our mission statement is to:
We celebrate our diverse community and know that you can can support these causes no matter of your circumstance.  All that we ask are that our attendees Be Excellent To Each Other.
The set-up of the events will vary between talks, fireside chats, workshops and social events with the aim not only to get women to attend events, but also to lead them themselves.
We could not be without our partners Tech Nottingham, and sponsors Accelerate Places and Esendex.
The event is for over 18's as we have alcohol and the occasional bit of adult content. We do not mind under 18's attending as long as they are accompanied by an adult - but we cannot take responsibility for anyone under 18. Please contact an organiser if you intend to bring a younger person.
Many of us will have worked with Agile methodologies, or at least heard them spoken about. In this talk we will explore what we really mean when we talk about being Agile, and whats really key to becoming successful in Agile … spoiler alert: it’s not just about software development!
About Claire Lowry
Claire Lowry is an ex-Wales hockey playing, people loving, non-techie currently Head of Software Delivery at Oakbrook Finance
TBD
About Mary Baird-Wilcock
Mary Baird-Wilcock, founder of The Simplifiers in 2003, has one goal with this company…to help people simplify their lives. Whether you’re not sure how to pull off the wedding you’ve always imagined or just need a little help with the daily grind, Mary created The Simplifiers in response to the overwhelming feeling that life is moving at lightning speed these days and well, we all need a little help now and then.
We are in the Accelerate Nottingham Building, The Poynt North, 45 Wollaton Street, Nottingham, NG1 5FW
Just come in the front door.
Enter your email below to receive newletters from us and join our Slack group.


Books list
This section lists books from the database.
Authors list
This section lists authors from the database.
Go back to the demo


A chance to work and redesign oneself, and additionally being included in an association that puts stock in picking up an aggressive edge and offering back to the group. I'm without further ado extending my strong involvement in Designing. I concentrate on utilizing my interpersonal abilities to fabricate great client encounter and make a solid enthusiasm for my managers. I would like to create aptitudes in movement plan and my insight into the Web, and turn into a fair advantage for the business. As an individual, I'm self-assured you'll see me innovative,creative, amusing and normally energetic. I'm a forward scholar, which others may discover motivating when filling in as a group.
I have been working as software developer in Capgemini from 2.5 years.


Writing bad code differently?!
As part of my goal of changing my job title to Developer I've been on a whirlwind tour of enterprise tools and practices. I am currently working through the C# version of 'Uncle' Bob Martin's Agile Principles, Patterns, and Practices. I just got through the bit where Bob does Test Driven Development (TDD) pair programming with Bob Koss on a bowling score keeping application. It really is a pretty picture of TDD - It was test first, and the design was shaped and simplified by how the tests were framed.
I've never really done TDD, though it sounds like the idea. When I think about testing a new project unit testing is what comes to mind. I learned unit testing using Python and it's unittest module. At the time code coverage was also all the rage. In Python everything is effectively public, and so you can easily write tests even against code meant to be private. So when I think of tests I think of deep thorough coverage, even into internals, which is hardly practical when you don't have any code!
In the last few years I've watched a number of conference talks railing against test-first, or encouraging people to write tests differently. The thing I've been drawn to, and that I saw in Uncle Bob's example, was that you should "Write tests against the interface rather than against the implementation".
I just happen to be making a major revision to a some code that had no tests, so before I touched the code I worked on some tests. I resisted the urge to start testing things in file order, and instead thought about what the module's interface was. Since only a single function was ever used outside the module I started with that.
class Test_Filter(unittest.TestCase):
"""Test filter functions."""
def test_filter_rows(self):
"""Testing table filtering."""
# Setup
config = {'default_filter_field':'num'}
table = {0: {'num': 1, 'name': 'foo',},
1: {'num': 2, 'name': 'bar',},
2: {'num': 3, 'name': 'baz',},
3: {'num': 4, 'name': 'spam',},
}
# Test simple single filter
fltr = '3'
res = filter_rows(fltr, config, table)
self.assertEqual(res, [2],
msg="Expected row indices [2], got {}".format(res))
# Test simple filter on missing value
fltr = '9'
res = filter_rows(fltr, config, table)
self.assertEqual(res, [],
msg="Expected empty result, got {}".format(res))
# Test multiple simple filters (order and whitespace invariant)
err = "Filter '{}', expected [0, 2], got {}"
for fltr in ('3 1', '3 1', '1 3', '1 3', '1 3 1', '3 1 3', '1 1 3'):
res = filter_rows(fltr, config, table)
self.assertEqual(res, [0, 2],
msg=err.format(fltr, res))
# Test Special filters...
As I got ready to write the next set of tests though I was thinking about a talk I watched the other day Unselfish Testing by Jay Fields where he made some good points about test naming and organization. He recommends grouping tests into self contained methods which are actually named for what they are testing. I was at an obvious conceptual break, so I refactored a little:
# Details elided...
class Test_Filter(unittest.TestCase):
"""Test filter functions."""
def test_simple_filters(self):
# Setup
config = {'default_filter_field':'num'}
table = {...}
# Test single filter
fltr = '3'
res = filter_rows(fltr, config, table)
self.assertEqual(res, [2],
msg="Expected row indices [2], got {}".format(res))
# Test searching to missing value
...
# Test multiple filters (order and whitespace invariant)
...
def test_special_filters(self):
# Setup (duplicated from above)
# Test special filter
...
def test_mixed_filters(self):
# Setup (duplicated from above)
# Test combinations of simple & special filters
...
All three tests exercise the same filter_rows
function, but are using
different features (which use different helper functions/classes in the
module). Now I can change my implementation without changing my tests, and when
things fail I have more information about what exactly is broken. What I don't
have is verification of my backing logic.
I guess I'm okay with that. I can test my code in the repl somewhat like in Clojure, or make disposable tests just for development. If I keep everything pure and immutable there shouldn't be any weird interactions. Besides I don't know what an error looks like that can't be expressed through the public interface?
Bonus cool: Hugo's Markdown renderer is called BlackFriday, and hugo exposes some settings under a section of the same name. In particular Markdown by default replaces normal quotes with smart quotes, which cause problems and weren't rendering correctly for me. Here is the code to disable them:
# In config.toml
[blackfriday]
smartypants = false


POLYGONS2D description of functions operating on polygons A simple polygon is represented by a N*2 array, each row of the array representing the coordinates of a vertex. There is no need to repeat the first point at the end. For some functions, the orientation of the polygon can be relevant: CCW stands for 'Conter-Clockwise' (positive orientation), CW stands for 'Clockwise'. For multiple-connected polygons, the different connected boundaries are separated by a row [NaN NaN]. Example: % Simple polygon: P1 = [1 1;2 1;2 2;1 2]; drawPolygon(P1); axis([0 5 0 5]); % Multiple polygon: P2 = [10 10;40 10;40 40;10 40;NaN NaN;20 20;20 30;30 30;30 20]; figure;drawPolygon(P2); axis([0 50 0 50]); See also: polygonCentroid, polygonArea, polygonLength, polygonBounds polygonNormalAngle, polygonContains, polygonPoint, splitPolygons polygonSubcurve, distancePointPolygon, distancePolygons, distancePolylines, polygonSelfIntersections, isPointInpolygon intersectLinePolygon, projPointOnPolygon, intersectRayPolygon steinerPoint, steinerPolygon, supportFunction, convexification medialAxisConvex, expandPolygon, polygonLoops, reversePolygon clipPolygon, clipPolygonHP, drawPolygon, fillPolygon readPolygon, rectAsPolygon ------ Author: David Legland e-mail<EMAIL_ADDRESS>Created: 2008-10-13, using Matlab <IP_ADDRESS>7 (R2007a) Copyright 2008 INRA - BIA PV Nantes - MIAJ Jouy-en-Josas. Licensed under the terms of the LGPL, see the file "license.txt"


--- layout: post title: 'Interview with Dan North and Liz Keogh: BDD+DDD' date: 2007-12-27 03:57:10.000000000 -07:00 type: post published: true status: publish categories: - DDD and ... - Development Process - Interview - Library - Video tags: - BDD - Dan North meta: _gcid: '15' _gcuser: Vladimir Gitlevich content_type: flashnode Summary: '2' _bitly_trim: http://dddcommunity.org/?p=11 _dependencies: s:6:"a:0:{}"; _edit_last: '3110' _custom_background: a:5:{s:3:"url";s:0:"";s:16:"background-color";s:0:"";s:17:"background-repeat";s:6:"repeat";s:21:"background-attachment";s:6:"scroll";s:19:"background-position";s:8:"left top";} _intro_text: default _intro_custom_banner: a:1:{s:3:"url";s:0:"";} enclosure: "http://dddcommunity.org/wp-content/uploads/files/audio/dan_north_interview.mp3\r\n27197776\r\naudio/mpeg\r\n" custom_permalink: library/north_keogh_gitlevich_2007 U_S_C_message: '' author: login: Vladimir Gitlevich email<EMAIL_ADDRESS>display_name: Vladimir Gitlevich first_name: Vladimir Gitlevich last_name: '' ---
Dan North and Liz Keogh, the people behind Behavior-Driven Development, spoke about how BDD complements DDD with Vladimir Gitlevich at OOPSLA 2007.
Dan North: "...only Domain-Driven Design can tell me where I should or shouldn't be focusing my efforts... once I determined that some computer system might help me, I need a way of getting ... from concept to cash, from an idea of some outcome I want to a production software system making or saving me money. The way in which I get to that is Behavior-Driven Development, it's the series of conversations, interactions, ways in which I express my domain desires as functioning software... "


Main Button
Info Button
Danger Button
Warning Button
Loading Button
Loading Button
Loading Button
Loading Button
Small Button
Large Button
Large Button
Large Button


Up till common_schema version 1.1, the user would need to choose from distinct distribution files: an install compatible with MySQL 5.1, one compatible with InnoDB Plugin enabled servers, and one compatible with Percona Server. The difference between the three is the availability of certain INFORMATION_SCHEMA tables.
With 1.1, this is no longer the case: common_schema auto-detects the server and available feature set, and installs accordingly.
Wait, isn't common_schema just a SQL file?
Yes. It's not like there's an installer like InstallShield or anything. Nevertheless, common_schema offers a smart way of conditional handling, which is uses in itself. It's called QueryScript.
common_schema is installed by importing the SQL file (via SOURCE command; the mysql client; your favorite GUI). This creates your usual tables, views and routines. But some of these routines make for an interpreter for QueryScript. Somewhere along the installation process (remember - it's just a SQL import), common_schema switches over to executing scripts to manage the installation. In particular, there are a few views which depend on optional tables, such as InnoDB Plugin's tables for INFORMATION_SCHEMA.
Consider the following CREATE VIEW statement:
CREATE OR REPLACE ALGORITHM = UNDEFINED SQL SECURITY INVOKER VIEW innodb_transactions_summary AS SELECT COUNT(*) AS count_transactions, IFNULL(SUM(trx_state = 'RUNNING'), 0) AS running_transactions, IFNULL(SUM(trx_requested_lock_id IS NOT NULL), 0) AS locked_transactions, COUNT(DISTINCT trx_requested_lock_id) AS distinct_locks FROM INFORMATION_SCHEMA.INNODB_TRX WHERE trx_mysql_thread_id != CONNECTION_ID() ;
Such a statement would fail the import if the underlying tables (INFORMATION_SCHEMA.INNODB_TRX in our example) do not actually exist. Which is why this CREATE statement is not invoked just like that. It is wrapped within a script:
set @script := " set @common_schema_innodb_plugin_expected := 0; try { set @common_schema_innodb_plugin_expected := @common_schema_innodb_plugin_expected + 1; CREATE VIEW ... (as above) set @common_schema_innodb_plugin_installed := @common_schema_innodb_plugin_installed + 1; } catch { } "; call run(@script);
I really want to stress this: this is a try-catch statement running from within your MySQL server. QueryScript accepts this statement and behaves very similarly to the way you are used to with your favorite programming language.
If the CREATE VIEW cannot be fulfilled, an error is generated. But instead of failing the entire script, it is caught by the catchclause; the "set @common_schema_innodb_plugin_installed := ..." line is never executed upon such error.
Upon CREATE VIEW failure, @common_schema_innodb_plugin_installed falls short of @common_schema_innodb_plugin_expected and . By the end of installation process, the two are compared, so as to determine the install success:
+-----------------------------------------------------------+ | complete | +-----------------------------------------------------------+ | - Base components: installed | | - InnoDB Plugin components: installed | | - Percona Server components: not installed | | | | Installation complete. Thank you for using common_schema! | +-----------------------------------------------------------+
Can't you just use "mysql --force"?
So, one can import a SQL file using mysql --force, which does nto break down on first sight of error, but continues to next statements.
True, but:
- I don't want to ask that of the user.
- It won't give me a status on what went wrong.
By using QueryScript's try-catch:
- I can take alternate action on failure.
- common_schema can (and does) inform the user at the end of installation process which components are installed and which are not.
- It can (and does) write this info down to a metadata table such that I can ask the user for that information when submitting a bug report.
Eat your own dog food!
comments powered by Disqus


influenza avian patients respiratory virus Available at: human infection disease pandemic Influenza Avian health vaccine United including seasonal care cases flu potential illness {border-style poultry viruses Dis Med associated available especially px;} #ffffff;} FIG healthcare symptoms deaths global information patient patients, Hong Infect States contact emerging important early given infections likely severe significant (HN) CDC Control Fig Health Table birds control diseases influenza. people spread viral appropriate case death infected infectious influenza, medical number rapidly resulting travel Kong antiviral contagious critical high million neuraminidase practices presenting strain transmission use vaccines HN, SARS acute diagnosis persons precautions result risk sick similar testing Disease Engl National WHO. age cause causing countries highly illness. new potentially present provide public reduce strains suspected Cancer Cases Emerg Heart However, approved birds, capacity direct humans hygiene impact laboratory patients. pneumonia pulmonary px; reported response usually {font-family (Color Centers HN. HPAI Infection Lancet World animals based causes chest common community days effects exposure fever figure findings font-size greater guidelines index known lack leading lung obtain online.) outbreak outbreaks pandemic, person rate remain suggest time total version virus. waiting Deaths HCW Human Oseltamivir Prevention. Rapid TABLE Thailand Transmission Unlike additional airborne alert cells clinical confirmed contain containment double; estimates hand healthy hospital ill immune include increase increased influenza: likelihood local lower mortality older physician possible preventive primary rapid remains research resistant severity subtypes swab vaccine. years Accessed April Asia Asian Chest Department Development Drug FDA February Healthcare MMWR Medical Pneumonia/influenza Respiratory Stroke Studies U.S. Vaccine administered bird border-color border-width caused compared current developing efforts emergency facilities fatal fluid general good government history hours humans. immunization imported infections, intensive like live measles measures millions occurring outbreak, pandemics pathogen pathogenic physicians practice progressive protection resulted room solid; species strategies test tract treatment used virus, viruses. workers worth {font-style {font-weight COPD COVID- Clin Clinical Early Elsevier Emerging Flu Food Given HCF Hand March Nature October Pandemic Patients Pharmaceuticals, Practices R.B. States, States. Wkly ability absence addition affected aggressive animal animals, annual bioterrorism bold centre changes class clinician collab: concerned conducted considered courier; detection develop developed development drug economic effective em; emergence encourage epidemic estimated evaluating expected exposed face facilities. family fatality gastrointestinal genes illness, includes infection. infections. inhalation involved kill lead long low major make need noted numerous obtained occur order pandemic. permission possible, professionals proper pt;} receiving recent referred resource setting study symptoms, therapy treat type virulence virulent weeks widespread year


Komodo Notary Nodes Map | Sponsored by Komodo Pioneers
1
jeezy14-Apr-19 04:16 PM
@Alright you mean ppl are not where they are supposed to be?
Cryptoon14-Apr-19 04:16 PM
jl must be freezing
jeezy14-Apr-19 04:17 PM
why, its not that cold in NL
Alright14-Apr-19 04:17 PM
There are some people that hosted nodes outside of the designated region. You'll have to ask @kolo about that though.
ComputerGenie 👴👴👴14-Apr-19 04:18 PM
why, its not that cold in NL
he's mapped in Antarctica
kolo14-Apr-19 04:18 PM
This won't happen if no other urgent bugs will be discovered
Cryptoon14-Apr-19 04:18 PM
@jeezy jl777 node is in antarctica ;p(edited)
kolo14-Apr-19 04:19 PM
Except for cloud nodes and anycast nodes variations
Alright14-Apr-19 04:20 PM
Israel is in Asia
jeezy14-Apr-19 04:25 PM
@Deleted User I like a fat steak from time to time, the question is if @kolo says its correct and official
Alright14-Apr-19 04:25 PM
those maps conflict
Iceland
jeezy14-Apr-19 04:27 PM
Icexit
1
its officially not a member of the EU btw
Lumbi14-Apr-19 05:15 PM
@Alright can somebody put the lumberscout box in bangkok (AR) ?(edited)
1
kolo14-Apr-19 05:17 PM
There is no official list or map of candidates, all are made by contributing members. We were told we should not affect candidates (to be fair) by listing/non listing them, so we rely on what people contribute. Thanks those are really good. The most fair method I assume.
Map is tricky thing as there is no loction of node known, all data is actually contact data of hosting company registred anywhere.
Komodo Notary Nodes Map | Sponsored by Komodo Pioneers
phm8714-Apr-19 05:45 PM
I noticed several SH NN are located in Australia. I did not compare internet speeds
Alright14-Apr-19 05:46 PM
My reason for choosing Israel as well. No notaries even remotely close to it and 10Gbit :S
Lumbi14-Apr-19 05:47 PM
@webworker01 Is Malta part of SH?
I wonder how's the Gbit in Panama? I didn't realise how big the AR region is.. Maybe SH is a better bet than AR...
ComputerGenie 👴👴👴14-Apr-19 05:52 PM
My main goal with choosing SH as a region is to expand the notary network to an underserved area. My reason for choosing Israel as well.
I like that and believe it's an important thing for folks to take note of....
@phm87
1) where's his proposal
2) let him do his own job
phm8714-Apr-19 07:34 PM
his proposal is on the github and it was updated. Ok I'll let him do his job but I'm fair play sorry
ComputerGenie 👴👴👴14-Apr-19 07:36 PM
ahhh yes, I see now a recycled one from last year, that might have been what caused some confusion
Dr.Terminus14-Apr-19 07:44 PM
can fail2ban settings be left at default?
phm8714-Apr-19 07:45 PM
He added SH, I told him that maybe it is not a good idea (it can dillute votes) but he'll do as he wants
mrlynch14-Apr-19 07:46 PM
does he not have a keyboard to type here?
phm8714-Apr-19 07:48 PM
he is busy I think and it is another guy who told me this
ComputerGenie 👴👴👴14-Apr-19 07:49 PM
does he not have a keyboard to type here?
yes, but it only usually works when he wants to complain in #talk-mining that no one wants to rewrite the code yiimp/yaamp he already has for him
mrlynch14-Apr-19 08:00 PM
is that the closed source one?
he is busy I think and it is another guy who told me this
so he had a guy tell you tell us?!
ComputerGenie 👴👴👴14-Apr-19 08:06 PM
is that the closed source one? not really, just the algo solving bits for equihash are a closely guarded "secret" that isn't shared unless someone likes you
mrlynch14-Apr-19 08:34 PM
just the algo solving bits for equihash <- isn't that like 80% of a pool's point?
1
NNoperator14-Apr-19 08:43 PM
for hushv3 migration do we import our previous hush address?
SHossain14-Apr-19 08:44 PM
new hush3 address is same as KMD
R
NNoperator14-Apr-19 08:44 PM
didn't have a balance for that one
SHossain14-Apr-19 08:44 PM
Kolo will send
1
! |🆉🆉🆉🆉🆉.🆉🆉| ! - crackers14-Apr-19 08:53 PM
Such wow.
ComputerGenie 👴👴👴14-Apr-19 08:54 PM
could have said what he really thought....(edited)
! |🆉🆉🆉🆉🆉.🆉🆉| ! - crackers14-Apr-19 08:54 PM
#metoo(edited)
ComputerGenie 👴👴👴14-Apr-19 09:02 PM
wonders if voters will look at the fact that some "seasoned" NN running for more nodes have current nodes that are less fruitful and some nodes that have literally been inactive in over 6 months


NOTE: This post was written a few months ago during a period of turmoil at my job. I've since moved on and started a new position.
As I mentioned in a previous post, I'm in a chaotic time at work, leading me to debate (on an almost daily basis) if I need to get serious about job hunting.
At present, I've decided to ride out the chaos, but that leads to a new problem: how to stay motivated and keep doing a good job while things are going wonky.
As has been my experience in several previous jobs, when things start getting tough at work, the rumor mill really takes off. There are a couple of stages of this. It starts with smaller side coversations about the future of the company/product/group.
I've learned a few lessons about these sessions:
1) No one involved really knows anything. It may be that their guesses are correct, but I've found that generally, the folks sitting around griping are not the ones with the knowledge of the real situation.
2) Management is never going to give you answers to silly questions that always get asked in times like these: "will there be layoffs?", "Is the site getting shut down?", etc. I call this type of question silly as there is no good answer to them. No sane manager that is actually doing her job is going to answer them truthfully. Frequently it would actually be illegal to answer them truthfully.
The next time you hear a question like this, play out the potential responses. If the manager says, "No, the site's is not getting shut down next month". How much credence will you give that answer? Will it change anything?
Coping
So, here is my coping plan for the next couple weeks/months/however long this lasts.
I'm going to try to avoid the rumor-mill conversations or get out of them as quickly and quietly as I can. Those might feel good at the time, but they ruin your momentum and motivation.
I'm also going to try to stay focused on the task.  I'm fortunate that I currently have more than enough work to do to keep me busy. That work may turn out to be futile in the end, but I need to remember that how I do the work matters and my reputation with my co-workers is one of my most valuable assets.
I'm going to focus on keeping calm and knowing that I can ride out this storm. The worst case scenario here is that this job goes away tomorrow, next weeek, next month. I knew this job wasn't "forever" when I took it. I should gain what I can while it lasts, both in terms of knowledge and skill and also in reputation with my peers. I've been laid off before on several occassions. It's been the community I've built around me that has pulled me through in those times.
That said, I'll definitely keep my eyes open for interesting opportunities that cross my path. One shouldn't bury one's head in the sand, after all.


EvalAI
Evaluating state of the art in AI
Featured Challenge
Explore other past, ongoing and upcoming challenges.
View AllOrganized by: {{main.featuredChallenge.creator.team_name}}
{{main.featuredChallenge.short_description}}...
Sorry! there are no featured challenges. Please check again after a while.
Explore other past, ongoing and upcoming challenges.
View AllWhat is EvalAI?
EvalAI is an open-source web platform for organizing and participating in AI challenges. EvalAI = evaluating the state of the art in AI.
EvalAI is an open-source web platform for organizing and participating in AI challenges. EvalAI = evaluating the state of the art in AI.
Who uses EvalAI?
Several partner organizations already host their challenges on EvalAI:


Note: The Model, View, Controller pattern, or "MVC", actually comes in many flavors, but for the purposes of this article, I'm referring to MVC for the Web. Feel free to comment below, but keep in mind that we have a particular viewpoint here.
The Problem: getting MVC wrong is expensive and costs you a lot of money.
I often start working with a new client as a manager or developer and find a Web app with a common set of mistakes. On one hand, I would like to see software developers learn from past mistakes. On the other hand, this pays my bills. In particular, MVC—which has unfairly been getting a bad rap—is thoroughly misunderstood and much of this can be blamed on rubbish examples and tutorials.
Here's a perfect "bad" example from an MVC explanation using Python and Flask:
@app.route('/')
def main_page():
"""Searches the database for entries, then displays them."""
db = get_db()
cur = db.execute('select * from entries order by id desc')
entries = cur.fetchall()
return render_template('index.html', entries=entries)
In this example, we have a page which finds "entries" and displays them on a Web page. It's entirely possible that you see no problem with this, but it perfectly demonstrates what's wrong with people's understanding of MVC: you've pushed knowledge of your database, your business logic, and your HTML into the controller.
That's what our examples and tutorials are teaching developers. Because of this, when I work with a new client using "MVC", what I really see is this:
def some_controller_method():
"""begin hundreds of lines of code"""
How do I hate thee? Let me count the ways. (with apologies to Elizabeth Barrett Browning). The following comes from years of experience seeing this over and over again.
But what does this mean in practice? Let's consider a real example I encountered a few years ago.
One company I worked with had all of the above problems. In particular, they had a 3,000 line "method" for searching for products. It conflated many things, including searching for products and filtering the search results. Thus, even though I was tasked with working on it, every time I touched search, it would break filtering. Every time I touched filtering, it would break search. It was slow and tedious to get anything done. It took me some time to separate search and filtering and when I was done, I had a surprise visit from one of the developers of the mobile side. It seems they wanted a proper search engine for ages but never added it because they couldn't separate the searching (which they needed) from the filtering (which they didn't). They thanked me because, after my work, it took them 15 minutes to implement a search engine.
Not getting this right flushes money down the toilet. Often we hear that a new feature will take a lot of time to implement "because the application wasn't designed for this use case" when what is really meant is "because we didn't understand separation of concerns and thus a one week feature will take months."
Note: you can fix this mess, but it takes time and you have to understand what MVC should look like.
To contrast this, let's look at a the controller for an extremely complex bit of logic from the free MMORPG, Tau Station, using Perl and the Catalyst MVC framework:
sub station ( $self, $c, $station ) : Local Args(1) {
$c->character->travel_to_station($station);
}
Without going into detail about what travel_to_station does (trust me, it's complex), all we see is a request for a particularly complex action to be performed. In the controller we can see:
Having the route information hard-coded is a bit unfortunate, but that's easy to work around. However, this controller method merely connects the model to the view, and that's all. That's what you're looking for in MVC. MVC, when appropriate, takes an application with a UI (user interface), and decouples the responsibilities into reasonable layers.
It's now easy to test the logic (you're testing the model, not the controller layer and all of its web context). It's easy to reuse this code. And, if the model is properly built, you have a great separation of concerns that makes it easy to extend, maintain, and repair the application.
And that's it! There's nothing fancy, but it often requires explanation. The controller, as shown above, should be as thin as possible. The view should only have display logic and the model is ... what, exactly?
I'll write more about this another time, but the model is the part where everything breaks down. Almost every MVC tutorial that I see confuses the data model with the Model. This is what we get (pseudocode):
method neighbors():
model = this.get_orm();
neighbors = model.table('Characters')
.search( location: this.character.location );
this.template("people", people=neighbors);
Now that looks reasonable. In fact, it seems so sensible that I did something very similar in the Tau Station MMORPG a long time ago. But it was deeply flawed. It turns out there are many cases where you need to know the other characters in your vicinity and this logic should be encapsulated. But it's just one method call, so factoring it out is silly, right?
Wrong. As it turns out, you didn't want to show any characters who hadn't been active in the past day. Well, unless they were NPCs. Or the other characters have something else which makes them "non-visible". Any time we discover a new case of when characters are or are not visible, we can visit this logic in every controller method, or we can abstract it out into a single method:
So let's try it again:
method neighbors():
model = this.get_orm();
neighbors = model.table('Characters').visible_to(this.character);
this.template("people", people=neighbors);
Ah, that's much better. Except we have exposed our ORM (and thus, our database). We have many data sources which have data in Redis, or configuration files, or a custom cache, or from all sorts of locations that the controller should never, ever know about. Some of my clients with this anti-pattern have worked around this by trying to implant those other data sources directly in their ORM, which simply shuffles the coupling around. The controller should never care about the source of data. The controller should only be asking for the data. Instead:
method neighbors():
neighbors = this.model('Characters').visible_to(this.character);
this.template("people", people=neighbors);
Where do the "visible" characters come from? You don't care. By hiding all of these details from the controller, the developers are free to implement the fetching of this data any way they want, so long as they respect the contract originally specified when this method was created.
The model is your business logic. And I'll go a step further and say a good design choice is to make the model provide services the client needs, with a headless application underneath. By creating a this, you can layer a controller and HTML view on it. If you're careful, you can have your controller target multiple views and build a native mobile application on top of it, only requiring a new view. You could create a native client/server desktop application, too. If the controllers are too inflexible, that's OK. They're tiny and easy to skip. Write thin controllers specifically for your mobile and desktop apps, secure in the knowledge that the application logic is all in your headless application.
There any many benefits to this architecture and I'll cover them in a later article. Further, the headless application needs its own architecture. When is the last time you saw an MVC explanation go into detail about the architecture of the model? That's a rare beast indeed and it's why so many companies have themselves mired in technical debt: they get a partial explanation of a complex concept and start building from there..
Please leave a comment below!
If you'd like top-notch consulting or training, email me and let's discuss how I can help you. Read my hire me page to learn more about my background.
Copyright © 2018-2023 by Curtis “Ovid” Poe.


{% macro displayNewsList(news_list) %} {% for news in news_list %}
Published on: {{news.publishedAt}}
Published Time: {{news.publishedTime}}
{{news.description | truncate(140)}}


1 - Capture Screen
Capture selected region
Capture entire screen
Delay (seconds)
Capture
2 - Configure
Budoco URL
Username
Password
Save Configuration
Save password also?
3 - Send
Send to Budoco
Sending...
Click on image to begin drawing. Pen color:
black
blue
cyan
green
orange
magenta
red
white
yellow


There's a python script named "m" in the root that performs common operations. 'm' is a python script, so you'll need python installed. Here is the list of things that m can do:
USAGE: m [command] [options] [.py file] Where command is one of: run -- given a .py file run it using skulpt ./m run myprog.py test -- run all test cases in test/run dist -- create skulpt.js and builtin.js with -u also build uncompressed skulpt for debugging docbi -- regenerate builtin.js only and copy to doc/static regenparser -- regenerate parser tests regenasttests -- regen abstract symbol table tests regenruntests -- regenerate runtime unit tests regensymtabtests -- regenerate symbol table tests regentests -- regenerate all of the above host -- start a simple HTTP server for testing upload -- run appcfg.py to upload doc to live GAE site doctest -- run the GAE development server for doc testing nrt -- generate a file for a new test case runopt -- run a .py file optimized browser -- run all tests in the browser shell -- run a python program but keep a shell open (like python -i) ./m shell myprog.py vfs -- Build a virtual file system to support skulpt read tests debugbrowser -- debug in the browser -- open your javascript console
A typical development workflow might be as follows. Suppose that you want to add one of the missing builtin functions to Skulpt. Lets say its the abs function just for the sake of example.
print abs(-1.0) print abs(24)
Sk.builtin.abs = function abs(x) { return Math.abs(x); };
You are not done yet, because builtin functions also have to be declared in the builtindict.js object as follows:
Sk.builtins = { 'range': Sk.builtin.range, 'len': Sk.builtin.len, 'min': Sk.builtin.min, 'max': Sk.builtin.max, 'sum': Sk.builtin.sum, 'abs': Sk.builtin.abs, ... }
Now you can test your modifications from the command line by running:
./m run myabs.py ----- print abs(-1.0) print abs(24) ----- /* 1 */ var $scope0 = (function($modname) { /* 2 */ var $blk = 0, /* 3 */ $exc = [], /* 4 */ $gbl = {}, /* 5 */ $loc = $gbl; /* 6 */ $gbl.__name__ = $modname; /* 7 */ while (true) { /* 8 */ try { /* 9 */ switch ($blk) { /* 10 */ case 0: /* 11 */ /* --- module entry --- */ /* 12 */ // /* 13 */ // line 1: /* 14 */ // print abs(-1.0) /* 15 */ // ^ /* 16 */ // /* 17 */ Sk.currLineNo = 1; /* 18 */ Sk.currColNo = 0 /* 19 */ /* 20 */ /* 21 */ Sk.currFilename = './myabs.py'; /* 22 */ /* 23 */ var $loadname1 = $loc.abs !== undefined ? $loc.abs : Sk.misceval.loadname('abs', $gbl); /* 24 */ var $call2 = Sk.misceval.callsim($loadname1, Sk.numberFromStr('-1.0')); /* 25 */ Sk.misceval.print_(new Sk.builtins['str']($call2).v); /* 26 */ Sk.misceval.print_("\n"); /* 27 */ // /* 28 */ // line 2: /* 29 */ // print abs(24) /* 30 */ // ^ /* 31 */ // /* 32 */ Sk.currLineNo = 2; /* 33 */ Sk.currColNo = 0 /* 34 */ /* 35 */ /* 36 */ Sk.currFilename = './myabs.py'; /* 37 */ /* 38 */ var $loadname3 = $loc.abs !== undefined ? $loc.abs : Sk.misceval.loadname('abs', $gbl); /* 39 */ var $call4 = Sk.misceval.callsim($loadname3, Sk.numberFromStr('24')); /* 40 */ Sk.misceval.print_(new Sk.builtins['str']($call4).v); /* 41 */ Sk.misceval.print_("\n"); /* 42 */ return $loc; /* 43 */ goog.asserts.fail('unterminated block'); /* 44 */ } /* 45 */ } catch (err) { /* 46 */ if ($exc.length > 0) { /* 47 */ $blk = $exc.pop(); /* 48 */ continue; /* 49 */ } else { /* 50 */ throw err; /* 51 */ } /* 52 */ } /* 53 */ } /* 54 */ }); 1 24 -----
This is all incredibly useful information.
- First it demonstrates that your addition actually worked. You can see the output at the bottom.
- Second, you can see how skulpt 'compiled' your python program into its intermediate Javascript form. While this may not be all that helpful in this particular case it can be very very helpful in figuring out what skulpt is actually doing.
Now you should run all of the unit tests to make sure you have broken anything else accidentally. This is really easy:
./m test
If any tests fail it will be obvious that they did, and you'll have to do some investigation to figure out why. At the time of this writing you should see:
run: 343/343 (+1 disabled) closure: skipped
Ok, This is a pretty quick and dirty overview. I'll try to add some more documentation over time to give you a better idea of how to do some other more difficult tasks such as:
The most important one: run unit tests. This runs the tests on V8 (the d8 shell), but it's included as a binary in the source tree so you shouldn't need to bother building it (if you're on Ubuntu anyway). Simply:
$ ./m
There's different categories of tests for tokenize, parse, run, and interactive, which are under the same name in the test directory. Most new tests end up in run now: run tests are simply a chunk of python code which is run on real Python and compared to the Skulpt output. When you add a new file to the test/run subdirectory, you'll need to do $ ./m regenruntests. This reruns python on the test input and caches the output to make running the Skulpt tests faster.
More thorough tests and build the combined one-file version of Skulpt. This combines all the source files into one, runs the tests on the combined version, runs jslint on the combined version, compresses it using YUI, runs the tests on the compressed version, and if all goes well, copies the final versions into 'dist' and 'doc':
$ ./m dist
Generally, I don't debug in the browser because it's too cumbersome. A couple tricks for debugging (though it depends on where things are going wrong of course):
print(JSON2.stringify(object, null, 2)) is the first stop to see what's going on. print(astDump(ast)) if you're dealing with an AST tree. $ ./m debug test/run/t123.py pretty-prints the compiled version of test/run/t123.py (i.e. the JS code), and starts a d8 shell so you can interactively call functions, or inspect values using the debug functionality of d8.
In order to fabricate a test case for something new to work on, just generally write a "blah.py" that does something you're interested in, and then do:
$ python blah.py <... output ...> $ ./m run blah.py <... output ...>
If the outputs don't match, then there's something to be fixed. Try to narrow it down to something minimal that just has one specific bug, and then add it to the test suite as test/run/tXXX.py.
There's a helper script that just looks for the next available XXX and opens vim to let you paste the test case: ./m nrt (standing for New Run Test). nrt will automatically add the expected output and other files so that your new test will be a part of ./m test for all time.
If you have done something really invasive you will want to regenerate all the tests, you can run ./m regenruntests to do this. That runs python on all the .py files and saves the output to the same name with the extension .py.real, which is what the test suite uses to compare against when running in Skulpt. Unless it doesn't In some cases we just can't make skulpt match the Python output exactly. In this case you can create a tXXX.py.real.force file which contains the desired test output to compare against the actual output in Skulpt For example:
>>> print t <turtle.Turtle object at 0x1009a6590>
It would be impossible to arrange for you to have a turtle at exactly that address, and in any case skulpt doesn't worry about that information and would simply print out <turtle.Turtle Object> This is a perfect example of when to use a force file. Simply edit the real file and remove the hex address. There are other cases where you may run into this as well.


ZATTIX
Toggle navigation
HOME
Collections
Piano
Violin
Drums
PURCHASE LIST
POST AN AD
ZATTIX
Buying and Selling could not be simpler than this
Piano
Violin
Drums
Search
Search Filters
CATEGORIES
Piano
Violin
Drums
COMPANY
Zattix
Cassion
Picasot
CONDITION
New
Used
Condition
New
Used
Company
Zattix
Cassion
Picasot
Category
Piano
Violin
Drums
Zattix Piano Model CX_100
850$
From India
A simple but sophisticated piano
Buy
Zattix Piano Model CX_100
850$
From India
A simple but sophisticated piano
Buy
Zattix Piano Model CX_100
850$
From India
A simple but sophisticated piano
Buy
Zattix Piano Model CX_100
850$
From India
A simple but sophisticated piano
Buy
Zattix Piano Model CX_100
850$
From India
A simple but sophisticated piano
Buy
Zattix Piano Model CX_100
850$
From India
A simple but sophisticated piano
Buy
Previous
1
2
3
Next


My reserach is focused on improving program comprehension efficiency, application usability and programming courses.
Publications
2021
Domain Usability Evaluation
Michaela Bačíková, Jaroslav Porubän, Matúš Sulír, Sergej Chodarev, William Steingartner, Matej Madeja, Electronics.
PDFDOI
Empirical Study of Test Case and Test Framework Presence in Public Projects on GitHub
Matej Madeja, Jaroslav Porubän, Sergej Chodarev, Matúš Sulír, Filip Gurbáľ, Applied Sciences.
PDFDOI
Automating Test Case Identification in Java Open Source Projects on GitHub
Matej Madeja, Jaroslav Porubän, Michaela Bačíková, Matúš Sulír, Ján Juhár, Sergej Chodarev, Filip Gurbáľ, Computing and Informatics.
PDFDOI
Large-Scale Manual Validation of Bug Fixing Commits: A Fine-grained Analysis of Tangling
Steffen Herbold ... Matej Madeja et al. Empirical Software Engineering Journal.
PDFarXiv
submitted
2020
Unit Under Test Identification Using Natural Language Processing Techniques
Matej Madeja, Jaroslav Porubän, Open Computer Science 10 (2).
PDFDOI
Large-Scale Dataset of Local Java Software Build Results
Matúš Sulír, Michaela Bačíková, Matej Madeja, Sergej Chodarev, Ján Juhár, Data, 2020.
PDFDOI
Observation of Students Behaviour in Programming Courses with an Automated Testing Platform at Differently Geolocated Universities: A Case Study
Matej Madeja, Jaroslav Porubän, Veljko Pejovic, Martin Gjoreski, Acta Electrotechnica et Informatica 2020.
PDFDOI
2019
Accuracy of Unit Under Test Identification Using Latent Semantic Analysis and Latent Dirichlet Allocation
Matej Madeja, Jaroslav Porubän, Informatics 2019.
PDFDOI
Continuous Analysis of Assignment Evaluation Results from Automated Testing Platform in Iterative-Style Programming Courses
Matej Madeja, Miroslav Biňas, Lukáš Prokein, ICETA 2019.
PDFDOI
Automation of Mass Computer Classrooms Management Using Ansible
Matej Madeja, Miroslav Biňas, Jaroslav Porubän, OSS Conf 2019.
PDF
Tracing Naming Semantics in Unit Tests of Popular Github Android Projects
Matej Madeja and Jaroslav Porubän, SLATE 2019.
PDFDOI
Innovative Approaches in C Introductory Programming Courses
Matej Madeja and Jaroslav Porubän, ICTERI 2019.
PDF
2018
Implementation of SCRUM Methodology in Programming Courses
Matej Madeja and Miroslav Biňas, ICETA 2018.
PDFDOI
Usability of an Open Space Class Location and Schedule Application
Tomáš Tarkanič, Matej Madeja, Lukáš Galko, Jaroslav Porubän, ICETA 2018.
PDFDOI
Automated Testing Environment and Assessment of Assignments for Android Mooc
Matej Madeja and Jaroslav Porubän, Open Computer Science 8 (1).
PDFDOI
Program Comprehension From the Perspective of Testing
Matej Madeja, SCYR 2018.
PDF
2017
Automatic Assessment of Assignments for Android Application Programming Courses
Matej Madeja and Jaroslav Porubän, Informatics 2017.
PDFDOI


| Location | Open hours | Call us |
|---|---|---|
| Seattle | 6AM-8PM | xxx-xxx-xxxx |
| Tokto | 6AM-8PM | xxx-xxx-xxxx |
| Dubai | 6AM-8PM | xxx-xxx-xxxx |
| Paris | 6AM-8PM | xxx-xxx-xxxx |
| Lima | 6AM-8PM | xxx-xxx-xxxx |
| Location | Open hours | Call us |
|---|---|---|
| Seattle | 6AM-8PM | xxx-xxx-xxxx |
| Tokto | 6AM-8PM | xxx-xxx-xxxx |
| Dubai | 6AM-8PM | xxx-xxx-xxxx |
| Paris | 6AM-8PM | xxx-xxx-xxxx |
| Lima | 6AM-8PM | xxx-xxx-xxxx |


http://www.susangranger.com/
Susan Granger's review of "THE 6th DAY" (Columbia Pictures)
Beginning with a quote from Genesis - "and God created man on the sixth day" - this sci-fi fantasy revolves around a billionaire entrepreneur (Tony Goldwyn) who is determined to conquer death: "I'm just taking overwhere God left off." To this end, he's funded Replacement Technology where genetic research is done by a highly respected, if conflicted scientist (Robert Duvall). In this world of the near future, animal cloning is accepted but human cloning is strictly forbidden. So when an assassination attempt goes wrong and a charter helicopter pilot (that's Arnold) is unwillingly cloned, indomitable Arnold teams up with his duplicate to reveal a sinister corporate conspiracy. "I'm going to take my life back," he vows. So much for the plot concocted by Cormac and Marianne Wibberley. What's likely to catch your interest is the sexy holographic girlfriend that Arnold's buddy, Michael Rapaport, has created; she's compliant with his desires and disappears when she's no longer needed. Or perhaps you'll like director Roger Spottiswoode's ("Tomorrow Never Dies") mega-budget array of high-decibel explosions, gunfire and car crashes. Amusing moments occur when the relentless, virtually indestructible assassins (Michael Rooker, Sarah Wynter) keep reappearing - "Doesn't anyone stay dead anymore?" - and when Arnold, the family man, quips, "I don't want to expose (my daughter) to any excessive violence. She gets enough of that from the media." But the real humor, or drama, inherent in having someone meet his clone is never explored. On the Granger Movie Gauge of 1 to 10, "The 6th Day" is an action-packed 5. It's ironic that a movie that puts a spin on the dangers of cloning looks like a clone of other, better Arnold Schwarzenegger movies like "Total Recall."
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


Pentagon-Microsoft $10-billion cloud deal awarded fairly: US Defence Secy
Esper said he was confident the competition 'was conducted freely and fairly without any type of outside influence'
by AFP | PTIA multi-billion-dollar Pentagon cloud-computing contract was awarded fairly and with no "outside influence", Defense Secretary Mark Esper said Friday.
Esper said he was confident the competition "was conducted freely and fairly without any type of outside influence," speaking on a visit to Seoul.
His comments came a day after Amazon challenged the award of the $10 billion Joint Enterprise Defense Infrastructure programme, better known as JEDI, to Microsoft, alleging "unmistakable bias".


This application is built using following open source libraries.
Notices for file:
- Otto - An event bus by Square
License
-------
Copyright 2012 Square, Inc.
Copyright 2010 Google, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
[1]: http://square.github.com/otto/
[2]: http://github.com/square/otto/downloads
[snap]: https://oss.sonatype.org/content/repositories/snapshots/


Models available¶
This is a list and a brief description of the various models that are currently available in superres-tomo. More detailed information about each of the models can be found in their individual module documentaion. Additionally example use cases are provided in the tutorials.
cnn_reconstruct¶
This module contains a CNN model for tomographic image reconstruction. For more details on how to use this follow the tutorial on reconstruction with a CNN.
dense_reconstruct¶
This module contains a densely connected model for tomographic image reconstruction. For more details on how to use this follow the tutorial on reconstruction with a dense network.
AlexNet¶
AlexNet is a specific instance of a CNN. It became famous in 2012, when it outperformed all of the competition in the ImageNet challenge. AlexNet contains eight layers; the first five are convolutional layers, some of them followed by max-pooling layers, and the last three are fully connected layers. 1 It uses the ReLU activation function.
U-Net¶
The U-net architecture is particularly popular in image segmentation tasks. The model consists of convolution layers mirrored by deconvolution layers, squeezing down and then reconstructing an image of the same size as the original. Doing this a U-Net can convert pixels in the original image into label values and segment the image. U-nets were initially developed for biomedical image segmentation. 2
Autoencoder¶
An autoencoder is a type of artificial neural network used to learn efficient data codings in an unsupervised manner.[3]_ The aim of an autoencoder is to learn a representation (encoding) for a set of data, typically for dimensionality reduction, by training the network to ignore signal “noise”. For this reason autoencoders can be used for denoising images.
References¶
- 1
Krizhevsky, Alex; Sutskever, Ilya; Hinton, Geoffrey E. (2017-05-24). “ImageNet classification with deep convolutional neural networks” (PDF). Communications of the ACM. 60 (6): 84–90
- 2
Ronneberger, Olaf; Fischer, Philipp; Brox, Thomas (2015). “U-Net: Convolutional Networks for Biomedical Image Segmentation”. arXiv:1505.04597
- 3
Vincent, Pascal; Larochelle, Hugo (2010). “Stacked Denoising Autoencoders: Learning Useful Representations in a Deep Network with a Local Denoising Criterion”. Journal of Machine Learning Research. 11: 3371–3408


Everyone Says I Love You 4 out of 5 stars
Review by Ed Johnson-Ott For more reviews, go to www.nuvo-online.com and click on "film."
Late in "Everyone Says I Love You," Woody Allen and Goldie Hawn, playing a divorced couple, slip out of a benefit in Paris and go for a walk. After a bit, they sit and chat about the times they've had, about love, about relationships. They exchange a gentle, platonic kiss and then, on the banks of the river Seine, they dance. As the moonlight reflects off the water they dance gaily and, quite casually, Goldie Hawn's feet leave the ground.  Hawn glows as she dances in air, so alive that even the law of gravity steps aside for a few moments. That elegant, utterly transcendent scene is one of the most wonderful things I've ever witnessed in a movie.
"Everyone Says I Love You" is Woody Allen's 26th film and his first musical. I've avoided Allen's work for some time. That business with his step-daughter was really disturbing, to be sure, but mostly I had just grown quite tired of his neurotic shtick and tedious repetition of ponderous existential questions. Things are quite different in this film, though. "Everyone Says I Love You" radiates with an effervescent innocence, with romance and hope. Creating a musical appears to have lightened Allen to the point where he uses song and dance to undermine his own bleak outlook. In one scene, Alan Alda, while seated at his father's funeral, tells the family that he never believed in God. "Even if God did exist," Alda's character quips, "He did such a terrible job that it's a wonder everyone doesn't file a giant class action suit against him." In most Woody Allen films, a line like that would be allowed to stand alone, or even worse, lead into a philosophical discussion on hopelessness. Not this time, though. Seconds after he speaks, the ghost of his father climbs right out of his coffin. While Alda and his family stare in astonishment, Grandpa starts singing "Enjoy Yourself (It's Later Than You Think)." The ghosts of other funeral home corpses join him for in a conga line, dancing and cartwheeling away any notion that death is the end.
"Everyone Says I Love You" is filled with moments like that. Even the musical form itself is treated as something quite common, as if everyone breaks into song and dance from time to time. The conceit is underlined by the way the songs are handled. Everyone sings, regardless of whether or not they have a trained voice. The combination of lush orchestration and ordinary voices has a peculiar charm. The dance numbers also have a captivating, haphazard feel. Although wonderfully choreographed, the dancers look as if they could stumble at any moment. It all adds up to musical numbers that actually feel spontaneous.
Of course, there has to be a story around all those songs, and Allen has assembled an impressive cast to tell it. He plays a writer living in quasi-exile in Paris, although he remains close friends with his painfully liberal ex-wife (Hawn) and her husband (Alda.) Numerous sub- plots spin involving everyone's kids, including a sweet romance between Drew Barrymore and Edward Norton that is interrupted when Barrymore becomes smitten with a hardened ex-con (Tim Roth.) Romance returns to Allen's life when his daughter D.J. (Natasha Lyonne) matches him up with the lovely Von (Julia Roberts). Seems D.J. has been spying on Von's counseling sessions and knows her deepest desires and fantasies. She feeds the information to Dad, who unethically uses the knowledge to become Von's dream date.
On paper, the plot seems quite complicated, but things flow very smoothly on the screen. The multiple storylines really don't matter anyway. Magic and happy endings are what the film is about. Allen uses gorgeous locations, beautiful photography and the musical numbers to create a romantic world where hope reigns supreme and love conquers all. Who would have thought the King of misery could have created so much happiness?
copyright 1997, Ed Johnson-Ott
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


  All 4 Cellular Rebate & Discount thesis_description: Our All 4 Cellular Discount Coupon Code for all4cellular.com. We have the best All 4 Cellular Rebate anywhere. thesis_keywords: All 4 Cellular , All 4 Cellular Coupon Code, All 4 Cellular Discount, All 4 Cellular Rebate product_name: All 4 Cellular hop_url: http://www.icouponblog.com/hop.php?id=5706 ---
www.all4cellular.com is the best place to shop for all your cellular needs at rock bottom, closeout costs. You can buy anything you need for any brand of cell phones. Just visit them online and discover for yourself. You can buy blue tooth headsets, headphones, batteries, chargers, USB cables, holsters, parts and so much more. All 4 Cellular carries high quality products at the lowest possible prices. check it out today online at www.all4cellular.com. Use our discount coupons to get a great deal.
All 4 Cellular is a great website to shop for genuine, high quality products at low prices. Whatever brand of cell phone you have, you can find parts, accessories and products relating to that. You won’t have to shop anywhere else once you visit all4cellular.com. Everything you need for your cellular phone, you will find in one place at this great website. All products sell for amazing close out prices. check it out. Our money saving coupons will save you a bundle!
all4cellular.com is a great place to buy inexpensive but highly efficient chargers, batteries, holsters, skin, gels, pouches, micro memory sticks, micro SDHC cards and many more accessories. All 4 Cellular carries parts, products and accessories for Motorola, Plantronics, Jabra, Samsung, Blackberry and HTC. Visit the website and find the product you are looking for in no time. all4cellular.com is the place to shop at for the best products and prices. Use our discount coupon to save money today.


NOTE: We started writing this few days and haven’t released yet, please don’t use. If you are interested in contributing, drop me a note at<EMAIL_ADDRESS>Roomer
Roomer is a multitenant framework for Rails using PostgreSQL
Multitenant Data Strategy
While there are several strategies for multi-tenancy, Roomer uses PostgreSQL’s schemas (namespaces) to achieve its goal. You can use Roomer if your application has the below characteristics:
-
Each Tenant’s data has be to be private to the Tenant.
-
No (or minimal) requirement to run cross-tenant queries.
Each Tenant’s data is stored in separate schema and shared data is stored in a “global” schema accessible to all the Tenants.
PostgreSQL “Schemas”
A database in PostgreSQL contains one or more named schemas, which in turn contain tables. Schemas also contain other kinds of named objects, including data types, functions, and operators. The same object name can be used in different schemas without conflict; for example, both schema1 and myschema may contain tables named mytable. Unlike databases, schemas are not rigidly separated: a user may access objects in any of the schemas in the database he is connected to, if he has privileges to do so.
More information at www.postgresql.org/docs/8.2/static/ddl-schemas.html
Usage
Installation
Roomer currently only supports Rails 3
gem install roomer
After you install Roomer and add it to your Gemfile, you need to run the generator. Roomer will use default values “tenant” for Tenant scoped models and “global” for shared models. If you’d like to override the defaults use the optional parameters
rails generate roomer:install
The generator will install an initializer under config/initializers/roomer.rb which describes ALL Roomer’s configuration options and you MUST take a look at it.
Setup
After you’ve done the necessary config changes to the initializer, run the setup:
rails generate roomer:setup
Running Migrations
The setup will generate migrations under db/migration/[shared_shema_name], by default it should be db/migration/global. You need to run the shared migrations to setup the tenant tables
rake roomer:migrate:shared


1 Samuel 23:2
Therefore David inquired of the LORD, saying, Shall I go and smite these Philistines? And the LORD said unto David, Go, and smite the Philistines, and save Keilah.


Plasma SP-D, Matrix Metalloproteinase-7, and Osteopontin Index Distinguishes IPF From Other IIPs. (White ES, Xia M, Murray S, et al. ) Am. J. Respir Crit. Care. Med. (In Press)
Six-SOMAmer index relating to immune, protease and angiogenic functions predicts progression in IPF. (Ashley SL, Xia M, Murray S, et al.) PloS One. (In Press)


---
layout: post
authors: ["Diana Clark"]
title: "PyCon is Just a Month Away"
date: 2014-03-17
time: "13:00:00"
tags: ["Announcements"]
---
With PyCon just under a month away,
there are a few things we want to make sure everyone knows about:
-
Tutorial registration is still open, and you can easily add
tutorials to an existing registration. Check out
https://us.pycon.org/2014/schedule/tutorials/
for the schedule,
and head to https://us.pycon.org/2014/registration/register/
to add them to your account.
-
We're really happy to be offering childcare services for the first
time, available Friday through Sunday of the conference. Thanks to
the Python Software Foundation's subsidy, the cost per day is $50.
Space is limited:
https://us.pycon.org/2014/childcare/.
-
The Young Coder tutorials are back for another year, with Saturday's
class being held in English, and Sunday's being held in French. The
tutorial is free for children 12 and over! See
https://us.pycon.org/2014/events/letslearnpython/
for more information.
-
Software Carpentry is hosting a number of classes during the first
two days of sprints, April 14 and 15. Software Skills for
Scientists, a master class in R, How to Teach Programming, and
more. Be sure to register:
https://us.pycon.org/2014/events/software_carpentry/.
-
Another new event for 2014 is a set of dinners we've put together
on Friday. After the day's talks have ended, hosts Brandon Rhodes and
Greg Brockman are running two separate dinners near the conference:
https://us.pycon.org/2014/events/dinners/.
Reserve your seat before we sell out by adding one of the dinners
to your registration:
https://us.pycon.org/2014/registration/register/.
-
The third annual 5K Charity Fun Run takes place Saturday morning,
with the proceeds benefiting the EFF. See
https://us.pycon.org/2014/5k/
for more details, and signup at
https://app.lap.io/event/2014-pycon-5k-charity-fun-run.
-
The schedule for sponsor workshops is still filling up at
https://us.pycon.org/2014/schedule/sponsor-tutorials/,
so keep an eye on it. These free workshops give you a chance to
sit down with our sponsoring organizations and learn more about
what they're up to.
-
PyCon 2014 is in the center of an exciting city full of great food,
culture, and history. Check it out with a guided tour of Old Montreal,
a climb up Mount Royal, and more. These events are open to all
attendees and those traveling with them. Please RSVP:
https://us.pycon.org/2014/events/explore_montreal/.
-
Python on the Rails: If you're heading to PyCon by way of Toronto,
we've got a private train car leaving Toronto on April 10th. We'll
be arriving a mere 5 minute walk from Palais des congrès de
Montréal. Join us!
http://pythononrails.ca/.
For more PyCon news, read our blog at
http://pycon.blogspot.com or
follow us on twitter
at http://twitter.com/pycon. For
onsite details, please read
https://us.pycon.org/2014/onsite.
— Diana Clarke
Chair, PyCon 2014


The application provides simplified version of SPA together with .Net Core
Please proceed to the list of users ...
Loading...
Result: {{jsonResult | json }}


| Opcode | Instruction | 64-Bit Mode | Compat/Leg Mode | Description |
| DD E0+i | FUCOM ST(i) | Valid | Valid | Compare ST(0) with ST(i). |
| DD E1 | FUCOM | Valid | Valid | Compare ST(0) with ST(1). |
| DD E8+i | FUCOMP ST(i) | Valid | Valid | Compare ST(0) with ST(i) and pop register stack. |
| DD E9 | FUCOMP | Valid | Valid | Compare ST(0) with ST(1) and pop register stack. |
| DA E9 | FUCOMPP | Valid | Valid | Compare ST(0) with ST(1) and pop register stack twice. |
Performs an unordered comparison of the contents of register ST(0) and ST(i) and sets condition code flags C0, C2, and C3 in the FPU status word according to the results (see the table below). If no operand is specified, the contents of registers ST(0) and ST(1) are compared. The sign of zero is ignored, so that -0.0 is equal to +0.0.
| Comparison Results* | C3 | C2 | C0 |
| ST0 > ST(i) | 0 | 0 | 0 |
| ST0 < ST(i) | 0 | 0 | 1 |
| ST0 = ST(i) | 1 | 0 | 0 |
| Unordered | 1 | 1 | 1 |
Notes: * Flags not set if unmasked invalid-arithmetic-operand (#IA) exception is generated.
An unordered comparison checks the class of the numbers being compared (see “FXAM—Examine ModR/M” in this chapter). The FUCOM/FUCOMP/FUCOMPP instructions perform the same operations as the FCOM/FCOMP/FCOMPP instructions. The only difference is that the FUCOM/FUCOMP/FUCOMPP instructions raise the invalid-arithmeticoperand exception (#IA) only when either or both operands are an SNaN or are in an unsupported format; QNaNs cause the condition code flags to be set to unordered, but do not cause an exception to be generated. The FCOM/FCOMP/FCOMPP instructions raise an invalid-operation exception when either or both of the operands are a NaN value of any kind or are in an unsupported format.
As with the FCOM/FCOMP/FCOMPP instructions, if the operation results in an invalid-arithmetic-operand exception being raised, the condition code flags are set only if the exception is masked.
The FUCOMP instruction pops the register stack following the comparison operation and the FUCOMPP instruction pops the register stack twice following the comparison operation. To pop the register stack, the processor marks the ST(0) register as empty and increments the stack pointer (TOP) by 1.
This instruction’s operation is the same in non-64-bit modes and 64-bit mode.
CASE (relation of operands) OF ST > SRC: ST < SRC: ST = SRC: ESAC; IF ST(0) or SRC = QNaN, but not SNaN or unsupported format THEN C3, C2, C0 ← 111; ELSE (* ST(0) or SRC is SNaN or unsupported format *) #IA; IF FPUControlWord.IM = 1 THEN C3, C2, C0 ← 111; FI; FI; IF Instruction = FUCOMP THEN PopRegisterStack; FI; IF Instruction = FUCOMPP THEN PopRegisterStack; FI;
| C1 | Set to 0 if stack underflow occurred. |
| C0, C2, C3 | See Table 3-51. |
| #IS | Stack underflow occurred. |
| #IA | One or both operands are SNaN values or have unsupported formats. Detection of a QNaN value in and of itself does not raise an invalid-operand exception. |
| #D | One or both operands are denormal values. |
| #NM | CR0.EM[bit 2] or CR0.TS[bit 3] = 1. |
| #MF | If there is a pending x87 FPU exception. |
| #UD | If the LOCK prefix is used. |
Same exceptions as in protected mode.
Same exceptions as in protected mode.
Same exceptions as in protected mode.
Same exceptions as in protected mode.


About MultithreadedTC
The MultithreadedTC framework was created to make it easier to test small concurrent abstractions. It enables test designers to guarantee a specific interleaving of two or more threads, even in the presence of blocking and timing issues.
To learn more, please read this overview.
MultithreadedTC was created at the University of Maryland by Bill Pugh and Nat Ayewah. It has been used in a number of courses to test concurrent projects, and enable students to write their own test cases.
MultithreadedTC is free and open source under the New BSD License.


COVID-19, Inequality, and Donating What You Can Now
Or, why I donated more than $7000 in recent weeks |
I.M.F. Predicts Worst Downturn Since the Great Depression
Coronavirus has widened America’s vast racial wealth gap, study finds
George Floyd and the cascade of crises in black America
This is the world we live in now – one in which those worst off are hit hardest by the Coronavirus, and the inequalities and ugly divides within the United States get even worse.
I asked myself what I should do about this, as someone who at least has a stable income and considerable savings from the 2 years I worked as a software engineer in the Bay Area. The answer was simple: donate a lot of the money I had saved, and do it now, ideally in a way that got it to those likeliest to get hit hardest by the pandemic.
And so, I donated 20% of my cash savings, $7000, to GiveDirectly’s Project 100, which simply “gives $1000 cash transfers, no strings attached, to families in financial need to help make ends meet during the coronavirus crisis.” I also donated smaller amounts to other causes, but 20% was the big one. I decided on this amount as something sensible to still leave me with significant savings in case of a crisis or need (I might actually want to buy a car some day, who knows).
I share this not to elicit praise or pat myself on the back, but rather to suggest you consider doing something similar, if you are in a similar position of having considerable amounts of money saved up in checkings or savings accounts. Now more than ever it made sense to just do something big, to really give away what I could, in the face of this enormous crisis that will only make the lives of those who already have a much harder life that I do that much harder.
To really address these issues would require far more than individual actions, of course. But personally, it just seemed to make sense to still do what I could, and I only hope this post might give some others in a similar position this idea to consider.


|
||||||||||
| PREV LETTER NEXT LETTER | FRAMES NO FRAMES |
ServicePropertyFactory
.BeanFactory
.BeanFactory
(from which
the different kinds of Spring application contexts derive).SpringLookupFactory
, containing a (required)
bean name to obtain, and an (optional) bean factory.ServiceImplementationFactory
that doesn't create
beans, but instead it looks them up inside a Spring
BeanFactory
.ObjectProvider
mapped to the "spring:"
prefix.StrategyFactory
when building a service.hivemind.lib.StrategyFactory
service that constructs a
service where the first parameter of each method is used to selecte a strategy from an
StrategyRegistry
.hivemind.lib.StrategyFactory
service factory.StrategyRegistry
.
|
||||||||||
| PREV LETTER NEXT LETTER | FRAMES NO FRAMES |


You do not yet have any persona data. Fill out your profile to get better results.
{{else}}Based on what you and the team members have told us, this is the optimized persona. This persona represents a schema of traits that we are now scanning for in our talent pool to best complement your team.
We will alert you via email when a great match has been found.
Based on the extent to which the personality traits are already represented in your team and based on the persona that was generated for the role fit that you are looking for we build a dynamically adapted persona that represents a balance between the traits you defined and what is most needed in your team using psychological work team interaction models.
The visionary trait expresses in how far someone is creative and able help further developments that do not yet have a fixed goal.
The organizer trait expresses in how far someone has an analytic view on the state of affairs and can organize ongoing work to achieve given goals.
The mediator trait expresses in how far someone can find a balance between different individual and task needs and goals within an organization or development.
The manager trait expresses in how far someone can make plans that decompose and recompose challenges leading a project to the desired outcomes.
The manager trait expresses in how far someone has the ability to focus on the required steps to achieve a given goal and does what is needed to achieve them.


psiroki.github.io
My published projects on github.io:
- wirt: image resizing tool, set the parameters,
drop the image, you get your resized image back (originally created
to render Google Sheets chart SVGs in higher resolution)
- imagebox: crops the solid area around pictures
and extends the borders automatically, making them look centered with
a nice margin (Dart version of autocrop)
- imagerocket: supposed to be a complete rewrite
of imagebox, but more like imagebox on steroids, however the UX is not the best
and it's not fully functional yet
- calbox: a calculator with five operators (+, -,
*, /, **), parentheses and variables
- rawurl: if you want to send a URL to somebody, but
they will blindly copy whatever redirection link the given platform throws
at them, you can enter it here, and they can open the webpage to copy the
URL as you intended
- carp: camera warp effect
- mirror: displays whatever the webcam sees
- ledcalc: calculates led current limiting
resistors, and helps to choose the resistor
- autocrop: old version of imagebox
- sudokubox: a sudoku game that does the basic
elimination automatically
- lighting: IndexedDB example, calculates the amount
of light needed for rooms depending on room type and size (based on
values I've found on Wikipedia, I think)
- photogrid: displays rule of thirds and golden ratio
on images
- audiopic: a friend of mine doesn't have the right
to install anything on his computer, so I've made something that can encode
an image and an audio file into a video (works much better on Firefox,
sadly Chrome is garbage)
- ccjegyzet: C++ notes I wrote in Hungarian for students /
magyar nyelvű C++ jegyzet a nyelvet tanulóknak
- cc-adv: just some notes about C++ in Hungarian I've never finished /
haladó C++ jegyzet, aminek nem jutottam a végére
- ledlayout: a personal project of mine
to develop a LED based Dominican rosary, helping me with where to put
the LEDs, and a basic program to test and troubleshoot the program
before I start development on real hardware


Green Climate Fund approves $100m for China’s sustainable projects
by Babalwa BunganeThe Asian Development Bank has secured $100 million in funding from the Green Climate Fund to mitigate climate change in China’s Shandong province.
The funding will be used to establish the Shandong Green Development Fund, which will accelerate funds for sustainable infrastructure and technologies projects.
Shandong Green Development Fund will act as the financial arm of the provincial government in supporting projects aimed at reducing greenhouse gas emissions.
In addition to the GCF’s funding, Shandong province will receive additional funds from Germany’s KfW and France’s Agence Française de Développement.
Shandong province has a population of just under 100 million and is the second-most populous province in the country.
Climate change is a hot topic disrupting the energy industry and is also set for discussion at the Asian Utility Week and POWERGEN Asia conference. Click here to register to attend and for more information about the event.
Amy Leung, director of ADB in East Asia, said: “Many parts of the PRC and other Asian countries face similar challenges to Shandong. We are confident that this project will have a strong demonstration value on how Asian economies can shift to a low-carbon and sustainable growth trajectory.
“The fund will pilot new ways to attract private sector funding and know-how that can be replicated elsewhere.”
Based in Songdo, Republic of Korea, GCF is a global fund created to support the efforts of developing countries to respond to the challenge of climate change. It was established in 2010 by 194 governments to limit or reduce greenhouse gas emissions in developing countries and catalyse a flow of climate finance to invest in low-emission and climate-resilient development.
Sign up for the ESI Africa newsletter


This EPUB is used to detect the execution of JavaScript. It is bare-bones such that EPUB reading system that do only support a small subset of JavaScript functionality will still able to correctly render this EPUB.
| Resource | Support |
|---|---|
| JavaScript support (inline) | Not executed |
| JavaScript support (external) | Not executed |
| navigator.appVersion | |
| navigator.epubReadingSystem |


Never run out of battery with this Oral-B electric toothbrush on sale
by Joseph GreenTL;DR: The Oral-B Genius 9000 CrossAction electric toothbrush is on sale for £99.99 on Amazon, saving you 67% on list price.
An electric toothbrush is an essential bit of kit nowadays. If you're still using an old-school brush that requires you to use a bit of elbow grease, it's high time you gave yourself a break.
There are absolutely loads of electric toothbrushes available online right now from a number of top brands, with many discounted as part of Amazon's "Countdown to Black Friday Sale." You can pick up some particularly good deals on devices from Oral-B.
The Oral-B Genius 9000 CrossAction electric toothbrush can be picked up for as little as £99.99 on Amazon, and includes four toothbrush heads and a dual charging travel case that powers both your toothbrush and phone with one plug, so you'll never run out of battery again.
This device is usually listed at £299.99, meaning you could save a massive £200 with this deal. A 67% discount is pretty extraordinary, and something we would be surprised to see bettered in the upcoming Black Friday and Cyber Monday sales.
Give yourself a break with an Oral-B electric toothbrush from Amazon.
Oral-B Genius 9000 CrossAction Electric Toothbrush — £99.99 (list price £299.99) See Details


Newton fractal in Julia using Symbolics.jl
The most recent video of 3blue1brown covered Newton fractals, a family of fractal curves that are obtained by applying Newton's method to complex numbers. Since I am covering Newton's method in my optimization course this week, it might be an entertaining illustration to play around with this topic.
Newton's method
Newton's method is a root-finding algorithm. We can use it to find roots of a function \(f\), i.e., inputs \(x\) for which it holds that \(f(x)=0\).
When executing Newton's method, we start with an initial \(x\) and iteratively apply the following rule till convergence:
\[ x \mapsto x - \frac{f(x)}{f'(x)}\,. \]This rule can be derived by taking the first-order Taylor approximation of \(f(x+h)\) in \(x\) and solving for the step \(h\) that sets the approximation to zero.
Let us apply this to a simple function!
f(x) = x^3 - 1;
For most functions, we can compute its derivative, and hence Newton update, easily enough. However, let us be lazy and use this opportunity to use Julia's new CAS Symbolics.jl
. We write a function that takes a function as an input and computes the map above:
using Symbolics
function get_map(f)
# define variable
@variables x
# define derivative operator
Dx = Differential(x)
map = x - f(x) / Dx(f(x)) |> expand_derivatives
# now we expand and compile to a Julia function
update_expr = build_function(map, x)
return eval(update_expr)
end
update = get_map(f)
#1 (generic function with 1 method)
Yes! We get a new function: the update map! Let us try it on a value \(x=2\)
update(2.0) # apply map once
1.4166666666666665
update(update(2.0)) # apply map twice
UndefVarError: update not defined
update(update(update(2.0))) # apply map thrice
UndefVarError: update not defined
update(update(update(update(2.0)))) # apply map four times
UndefVarError: update not defined
We see that after a couple of steps, the Newton method converges to the root \(x=1\).
For our convenience, let us define a function that applies this map \(n\) times.
function applyiteratively(x, update; n=100)
for i in 1:n
x = update(x)
end
return x
end
applyiteratively(2.0, update) # apply 100 times
UndefVarError: update not defined
Complex roots
Astute readers might have noticed that \(x^3-1\) has three roots: one real (\(x=1\)) and two complex ones (\(x=-1/2+\sqrt{3}i/2\) and \(x=-1/2-\sqrt{3}i/2\)). Would our method also work with complex inputs?
applyiteratively(-2.0 - 2.0im, update)
UndefVarError: update not defined
We see that this converges to a different (complex) root! Other values might converge to different roots!
applyiteratively(2.0 + 2.0im, update)
UndefVarError: update not defined
The Newton fractal
Imagine that we try this process for many complex numbers in an interval. Depending on the initial starting input, we end up in a different root. By colouring the results according to the root we end up in, we obtain the Newton fractal.
lower = -2 - 2im
upper = 2 + 2im
step = 0.5e-2
# generate a range of complex values
Z0 = [a+b*im for b in real(lower):step:real(upper),
a in imag(lower):step:imag(upper)]
# apply the update 100 times
Z100 = applyiteratively.(Z0, update);
UndefVarError: update not defined
This results in a large complex matrix. We might define a colourmap for complex numbers as done here, though plotting the angle of the complex number in polar coordinates suffices.
using Plots
heatmap(angle.(Z100), colorbar=false, color=:rainbow, ticks=false)
UndefVarError: Z100 not defined
Below are some other examples.
\[ f(x) = x^8 + 15x^4 -16 \]UndefVarError: get_map not defined
\[
f(x) = \cosh(x) - 1
\]
UndefVarError: get_map not defined


Markup ====== Simple markup language parsed at run-time in the browser -------------------------------------------------------- (cy) (xlink http://sleepless.com/blog/ Sleepless Inc.) -- All Rights Reserved This is the first sentence of the first paragraph. This is the second sentence of the first paragraph. This is the second paragraph. It also has two sentences but the underlying markup is written a little differently. Unordered list -------------- - unordered list item - unordered list item Ordered list ------------ # ordered list item 1 # ordered list item 2 # ordered list item 3 Image ----- (image coffee.png Yum!) Figure ----- (figure coffee.png Yum!) Links ----- (link https://github.com/sleeplessinc/markup Click to get Markup!) (xlink https://github.com/sleeplessinc/markup Click to get Markup in a separate tab!) Styles ------ **This is emphasized text** and __This is underlined text__ Symbols ------ - (tm) - (r) - (c) - (cy) - (cm A1 Widgets Ltd.) Block quote ----------- " To be, or not to be. That is the question! Whether 'tis nobler to suffer the slings and arrows of outrageous fortune, or to whatever ... " Code ----- Some {inline code} versus ... { // ... this, which is a block of code. var x = 1; var y = 9; } Dashes ----- Two hyphens make an n-dash, like "--" Three hyphens make an m-dash, like "---" Four dashes makes a horizontal rule like this ... ---- Five or more dashes makes an h2 heading out of the preceding line. ----- Five or more equals signs makes an h1 heading out of the preceding line. ===== Special ------- Only if used in browser code: - Page last modified (lastModified) That's it!


static fun parseFeature(): GeoJsonFeature
Parses a single GeoJSON feature which contains a geometry and properties member both of which can be null. Also parses the bounding box and id members of the feature if they exist.
geoJsonFeature
- feature to parse
Return
GeoJsonFeature object