Kanban in action
A practical, down-to-earth introduction to kanban
Site
,
book
and
mistakes
by
Marcus
and
Joakim
.


Kenyan Singer Shines in US After Grammy Nomination
by Collins NyamungaJ.S Ondara is a 27-year-old US-based Kenyan singer-songwriter based in the US and has received a nomination in the 62nd Grammy Awards that will be held on January 26, 2020.
His debut Album TALES OF AMERICA which has a total of 11 songs was shortlisted under Best Africana Awards. The songs talk about the life of an immigrant and the pursuit of the American dream.
Ondara relocated to Minnesota, the US in 2013 after winning the US green card lottery. When he got there he learnt to play the guitar from scratch and secured a huge recording deal.
“When I think about my childhood, and where I’m from, the chances of this are so random that sometimes I lose words to try to explain what it’s like,” he said in an interview with US-based publication Rolling Stones.
His journey began in Nairobi when he first stumbled upon rock artists like Bob Dylan. He narrates how he would skip classes and spend all the bus fare given to him at the local internet cyber cafe instead.
“I’m a romantic in that same way. I just figured I’ll go to America, this random city. I’m going to follow where my heart wants me to go. And for me, it was Bob Dylan,” Ondara explained.
Winning the Green Card was only the beginning. Like all immigrants, he had to adjust to life abroad.
“But then I get to Minnesota, and it hits me very quickly that I don’t know anyone. Getting to America was impossible, but the path ahead of me, once I got there, felt even more impossible,” he recounted.
Although not known by a majority of Kenyans. He has made quite a name for himself. Some of the popular songs include the American Dream, “God Bless America” and “Saying Goodbye”.
His music has taken him around the world and is currently preparing to tour France from November 26, 2019.


This week, I hit a milestone in my journey as we finished our first nonprofit project at FCC. So, until the next project arrives the study goes on, and here’s a recap of what I’ve learned this past two weeks.
##Focus Switch
Since I’ve been getting a little more confident with my JavaScript skills, I started moving from a 100% pure JavaScript approach to learning some practical skills alongside JS. Nonetheless, it’s still about 40% pure JS and 60% other things including frameworks, which are (mostly) 100% JS, so JS is still a big part of my daily study. I’ve also started doing some personal projects: there’s a small static site I’m building for a family member (which in turn helped me streamline my frontend workflow) and another small CRUD project using React and Backbone.
##Resources ahoy!
To keep the post short, here’s a compilation of the best resources I’ve read and watched this past 2 weeks:
####Books
- You Don’t Know JS: Scope & Closures This book series is awesome and I’m looking forward to reading the rest of the series.
- Developing Backbone.js Applications This book by Addy Osmani is very good to start learning Backbone, and also free online.
- Backbone.js Blueprints free with a Tutsplus subscription, it’s also very good since it guides you through many projects using Backbone.
- Functional JavaScript a small book with good content about functional JavaScript.
####Courses
- Introduction to TypeScript Free from Microsoft, why not?
- MongoDB for Node.js Developers Very good, verified and free. A must for new JS developers
- Getting Started with Backbone.js the most updated introductory course to Backbone.js. A bit condensed but great after reading Addy’s book.
- Getting Started with React.js A very good intro to React.js
####Blog posts
- The Symmetry of JavaScript Functions by Ragan Wald. No need to say anything else.
- Web Development & Design Tools Nice post by our fellow “senior camper” Danny Fritz. Went through all the links, some really nice finds!
- Avoid Side Effects with Immutable Data Structures The title says it all. Recommended reading.
- Building Apps with PureScript and React by a fellow camper, I’m really looking forward to see the rest of this series.
- Enough With the Salts: Updates on Secure Password Schemes Good read on password schemes.
- Shipping Node.js Applications with Docker and Codeship
####Backbone.js Resources
This last week was all about Backbone, and here’s the best resources I’ve found (plus the books and Tutsplus courses)
- Backbone React Sortable Table
- From Backbone Views to React
- Moving from Backbone to React See a pattern?
- Why Backbone Resources seem to be outdated? A question I posted in HN
- What is Backbone.js?
- Learn Backbone.js completely a bit outdated but good reference.
- Zombies! RUN! Managing Page Transitions In Backbone Apps
- Backbone Resources Mother lode of Backbone resources
- Relieving Backbone Pain with Flux & React
####Finding a Job
My last batch of resources is about finding a job. It’s a hard process and harder if you are planning on moving to another country or finding a remote job.
- Top JavaScript (ES5) Interview Question
- Best Sources To Find A Remote Job As A Software Developer
- 5 Signs Your Resume Isn’t Ready for Today’s Job Search
- Big-O Cheat Sheet not only to cheat, but also to learn.
- Web Developer Salaries
- The best (and cheapest) places in the world for coworking
- Cost of living calculator Good to compare an equivalent salary between different states.
####More Resources
If you are looking for more JavaScript learning resources, check my Road So Far
That’s it for this week, happy easter and happy learning!


--- layout: default title: Contact Me ---
Chulobot is a highly scalable and flexible Web Crawler written in Java. Check back later for its upcoming release!


BREAKING: WAEC releases Nov/Dec examination results, withholds 9,457
by https://www.facebook.com/CheerfulpraiseThe West African Examination Council (WAEC) has released results of candidates that sat for the 2019 West African Senior School Certificate Examination in Nigeria and withheld the results of 9,457 candidates.
The Head of National Office, WAEC Nigeria, Mr Olu Adenipekun, announced the release of the results on Friday at a media conference in Lagos.
According to him, a total of 94, 884 candidates who sat for the examination, out of which 33, 304 (representing 35.10%) obtained credits and above in at least five mandatory subjects, including English Language and Mathematics. 35. 64% of the total candidates who sat the same exam last year had a similar result, indicating a slight fall.
Details shortly…


okama.common package¶
Submodules¶
okama.common.helpers module¶
-
class
okama.common.helpers.
Date
¶ Bases:
object
-
static
subtract_years
(dt, years)¶ Subtract N years (integer) from a date. Used for time series. First month is +1 (if today is August the series should start at September to give 12 months).
-
static
-
class
okama.common.helpers.
Float
¶ Bases:
object
Group of methods using float values inputs. Some of them can take DataFrame also.
-
static
annualize_return
(rate_of_return, periods_per_year=12)¶ Annualizes a return. Default annualization is from month to year.
-
static
annualize_risk
(risk, mean_return)¶ Annualizes Risk. Annualization from month to year (from standard deviation) is by default. Monthly mean return is also required. Works with DataFrame inputs (in math.sqrt is not used).
-
static
approx_return_risk_adjusted
(mean_return, std)¶ Approximates geometric mean return given mean return and std.
-
static
get_monthly_return_from_annual
(annual_return)¶ Gets value of monthly return for a given annual return.
-
static
get_purchasing_power
(inflation, value=1000.0)¶
-
static
get_random_weights
(n, w_shape)¶ Produce N random normalized weights of a given shape.
-
static
-
class
okama.common.helpers.
Frame
¶ Bases:
object
Group of methods using DataFrame (or Series) input.
-
static
change_columns_order
(df, selected_columns, position='first')¶ Places selected_columns on the first position (position=’first’) or last position (position=’last’).
-
static
get_annual_return_ts_from_monthly
(ror_monthly)¶ Annual Rate of Returns time series from monthly data.
-
static
get_cagr
(ror)¶ Return Compound Annual Rate of Return (CAGR) for each asset given returns time series DataFrame.
-
static
get_cumulative_return
(ror)¶ Return Compound Return for time series of return (one or several).
-
static
get_cvar_historic
(ror, level=5)¶ Compute the Conditional VaR (CVaR) at a specified level.
-
static
get_drawdowns
(ror)¶ Get drawdowns from return time series.
-
static
get_okid_index
(rates, symbol)¶ Computes OKID index from bank rates time series. The index is a basket of 12 one year bank deposits (1 month shift). symbol is required for rates time series adjustments (for ‘RUS_RUB_TOP10.RATE’ it’s a different adjustment)
-
classmethod
get_portfolio_mean_return
(weights, ror)¶ Computes mean return of a portfolio (monthly).
-
classmethod
get_portfolio_return_ts
(weights, ror)¶ Returns the mean return time series given portfolio weights and the DataFrame of assets mean returns.
-
classmethod
get_portfolio_risk
(weights, ror)¶ Computes the std of portfolio returns.
-
static
get_rolling_fn
(ror, window, fn, window_below_year=False)¶
-
static
get_semideviation
(ror)¶ Returns semideviation for each asset given returns time series.
-
static
get_var_historic
(ror, level=5)¶ Compute monthly historic Value at Risk (VaR) at a specified level.
-
static
get_wealth_indexes
(ror, first_value=1000.0)¶ Returns wealth indexes for a list of assets (or for portfolio). Works also with pd.Series inputs.
-
static
jarque_bera_dataframe
(ror)¶ Jarque-Bera goodness of fit test on time series in form of Pandas DataFrame. The Jarque-Bera test shows whether the returns have the skewness and kurtosis matching a normal distribution.
- Returns:
(The test statistic, The p-value for the hypothesis test) Low statistic numbers correspond to normal distribution.
-
static
jarque_bera_series
(ror)¶ Jarque-Bera goodness of fit test on a single time series (Pandas Series). The Jarque-Bera test shows whether the returns have the skewness and kurtosis matching a normal distribution.
- Returns:
(The test statistic, The p-value for the hypothesis test) Low statistic numbers correspond to normal distribution.
-
static
kstest_dataframe
(ror, distr='norm')¶ Kolmogorov-Smirnov test for goodness of fit test on time series in form of Pandas DataFrame.
- Returns:
(The test statistic, The p-value for the hypothesis test)
-
static
kstest_series
(ror, distr='norm')¶ Kolmogorov-Smirnov test goodness of fit test on a single time series (Pandas Series).
- Returns:
{‘statistics’: The test statistic, ‘p-value’: The p-value for the hypothesis test}
-
static
kurtosis
(ror)¶ Calculate expanding Fisher (normalized) kurtosis time series. Kurtosis should be close to zero for normal distribution.
-
static
kurtosis_rolling
(ror, window=60)¶ Calculate rolling Fisher (normalized) kurtosis time series. Kurtosis should be close to zero for normal distribution. Window should be at least 12 months.
-
static
skewness
(ror)¶ Calculate expanding skewness. The shape of time series should be at least 12. In the opposite case empty time series is returned. TODO: implement skewtest (from scipy)
-
static
skewness_rolling
(ror, window=60)¶ Calculate rolling skewness. Window size should be at least 12 months.
-
static
weights_sum_is_one
(weights)¶
-
static
-
class
okama.common.helpers.
Index
¶ Bases:
object
-
static
beta
(ror)¶ Calculate beta coefficient time series. Index (or benchmark) should be in the first position (first column). The period should be at least 12 months.
-
static
cov_cor
(ror, fn)¶ Returns the accumulated correlation or covariance time series. The period should be at least 12 months.
-
static
rolling_cov_cor
(ror, window=60, fn='corr')¶ Returns the rolling correlation (or covariance) time series. The history period should be at least 12 months.
-
static
tracking_difference
(accumulated_return)¶ Returns tracking difference for a rate of return time series. Assets are compared with the index or another benchmark. Index should be in the first position (first column).
-
static
tracking_difference_annualized
(tracking_diff)¶ Annualizes the values of tracking difference time series. Annual values are available for periods of more than 12 months. Returns for less than 12 months can’t be annualized.
-
static
tracking_error
(ror)¶ Returns tracking error for a rate of return time series. Assets are compared with the index or another benchmark. Index should be in the first position (first column).
-
static
-
class
okama.common.helpers.
Rebalance
¶ Bases:
object
Methods for rebalancing portfolio.
-
static
create_fn_list_ror_ts
(ror, *, period='year')¶ Returns a list of functions of weights.
-
static
rebalanced_portfolio_return_ts
(weights, ror, *, period='year')¶ Returns mean return time series of rebalanced portfolio given returns time series of the assets. Default rebalancing period is a Year (end of year) For not rebalanced portfolio set Period to ‘none’
-
static
rebalanced_portfolio_wealth_ts
(weights, ror, *, period='year')¶ Returns wealth index time series of rebalanced portfolio given returns time series of the assets. Default rebalancing period is a Year (end of year) For not rebalanced portfolio set Period to ‘none’
-
static
-
okama.common.helpers.
check_rolling_window
(window, ror, window_below_year=False)¶


This is a website for showing traffic data in Tehran (capital of Iran) getting routing for bus and automobile activing different layers and more... android version of this project is available too.
Project page: tehrantrafficmap.ir
This is a website for showing traffic data in Mashhad getting routing for bus and automobile activing different layers and more... android version of this project is available too.
Project page: map.mashadtraffic.ir
This is a 3D Map of Mashhad Rendered with webgl used three.js and d3.js library. there is functionalit such as rotating camera, zoom and draging map with good animation.
This is a estate website which every one can put their announcement and search for new estates with opimized search engine (use google map api), users can search from map or even lists. There are lots of different services for realestates and users.
Project page: insooansoo.com
This is a website for showing traffic data in Isfahan getting routing for bus and automobile activing different layers and more... android version of this project is available too.
Project page: isfahantraffic.ir
This Website is about a company that pakaging different kind of snacks and offer them to their customeres around iran. They gather customer information about their body and offer them the proportional packages.
Project page: Behchasht.com
This is a portal for east rahro system company.
Project page: Rahro System Portal
This is a website for pars engineering company show their products with beautiful and different gallery. This website is full ajax and optimised.
Project page: Parseng.co
This is website for East Rahro system company.
Project page: Rahro System Website
This is customizable loader created based on HTML5 Canvas tech. you can simply use this plugin in your projects, watch this Demo If you want this go on codecanyon.net website and buy it with only 6$.


A React Application that allows user to find Github Profiles. They can also explore aspects of a Github Profile such as the amount of followers, their most recent repos, and if the person is hireable.
Front-End RepoThis Full-Stack project allows users to keep track of the exercises they have completed. The web application includes CRUD actions and user authencation. The Back-End was built using Ruby on Rails, and the Front-End was built using HTML, CSS, JavaScript, Bootstrap, and some Handlebar.js.
Front-End Repo Back-End RepoFitness-Journal is a Front-End Project. It was bulit using HTML, Materialize.css, and JavaScript. I used localStorage to persist the data. This web app allows users to track caloires from Meals and from workouts.
Front-End RepoSnow Doctors is a fictional copany that specializes in clearing parking lots and driveways. This was a project to test my Web Design skills. This site was made using HTML and CSS. The site is also responsive.
Front-End RepoSince I began learning web development, I've realized that programming is more than the syntax of a language. It's about solving complex problems that make a user's life easier. My learning has never stopped. Everyday, I am trying to learn new languages, and find ways to incorporate them into projects that I build.
Resume617-704-1380


Greetings,
I've recently assembled a CT with AC/AC transformer, monitoring at my home using the arduino connected to my company grid, also I have a couple of 100W solar panels connected to a grid tie.
My question is simple, the readings on the CT are supposed to go down or up if the power entering on the PV solar are increasing?
I mean, I've made the test of unplugging the GTI and the reading on the CT doesn't change, and according to my reader on the GTI I'm producing 130W(example).
In my logic the value on the CT should increase if I disconnect the GTI, right?
Thanks for the help...
Re: Import vs Export Measurement ...
Tell me more:
What voltage is your Arduino running at?
What voltage are you developing across the CT's burden resistor?
What value is the burden resistor?
What ratio current transformer are you using?
It might well be that the change in power level is too small to be measured.
Re: Import vs Export Measurement ...
I'm running my arduino at 5V
The CT is a CT sensor SCT-013-030 (Max 30A) so no Burden resistor is needed.
AC/AC - 9V
What is the change in power that should be noticed? If I'm consuming 300W on my house and producing 150W it should be noticed?
Thanks
Re: Import vs Export Measurement ...
Hi Rechena,
If you're running the standard sketch for Voltage and Current, then I would expect you to detect a change of 130W without any difficulty. The benefit of this approach is that you get to measure real power, by summing the instantaneous product of voltage and current over the measurement period.
If, instead, you are just measuring current, and assuming a nominal value of voltage to calculate the power that is flowing, then your values are likely to be much less accurate. With no actual current flowing through the CT's primary, my test rig recorded a background current of anything up to half an amp. But when voltage was measured too, the calculated power value dropped to virtually nil (no more than a couple of Watts). The benefit of measuring voltage as well as current to obtain power has been well aired on this forum in the last month or two.
I have three old-style bulbs on which the power labelling is difficult to read. Plugging in each one into my test rig in turn, there was never any doubt as to which one was which. The power that they took was always close to either 40W, 60W, or 100W, with minimal error.
I'm simply using the standard V&I sketch, calibrated first to give the expected value for AC voltage, and secondly to give the expected values for the current taken by various known loads. Calculating the expected values for VCAL and ICAL is always a good idea, but this approach can't correct for component values which are slightly in error, or components whose parameters are not known. For example, the current clamp that I'm using clearly has a large number of turns in its secondary coil, but I do not know how many. However, if I double the current that the clamp is measuring, then the reading that's taken by the Arduino is also doubled, so my system appears to be linear over the range that I'm interested in, which is basically up to 13A.
My suggestion would be to fully check your system using a test rig before trying to obtain any real values for your PV. My rig, since dismantled, can be seen at
http://www.youtube.com/watch?v=w0OpfWBmYz8&feature=plcp
At that time, I was only measuring currents but the system worked well enough for demo purposes.
Re: Import vs Export Measurement ...
Hy Calypso_ray, I'm using the normal sketch
Re: Import vs Export Measurement ...
And it's really supposed to reduce on the total W? Meaning if realpower = 200W and PV power = 100W if I turn the PV off it should be 300W realPower?
Thanks once again..
Re: Import vs Export Measurement ...
I've made some tests on a isolated rig, but with fans and lights, and I could actually see the values chaging, same has my house, for instance. If I turn the lights on the living room the W go up a couple of W's. But it never gets down or up with the solar PV production...
I'm measuring the solar PV production with a Chinese Kill a Watt and with a attopilot connected to an arduino. Do i need to add another CT to the Solar PV output and then make some math?
Thanks, and sorry for all the questions...
Re: Import vs Export Measurement ...
Where have you installed the CT?
If you are monitoring current on the meter tails between the meter and the distribution board, then yes, you should read the nett imported power. And if you are generating more than you are consuming, the power should be negative indicating that you are exporting.
You could of course add another CT to measure generation, then you could display the 3 quantities that you are interested in: generated, consumed and nett power. Which maths you do depends on where the CTs are installed.
Re: Import vs Export Measurement ...
Here, we have:
Meter(street) -> Amp Selector(company only) -> Differential Breaker -> HouseHold Breaker's...
I've placed the CT after the Differential Breaker.. is it ok?
Re: Import vs Export Measurement ...
I'm using a modified version of the standard sketch, but nothing of significance has been changed. My sketch was attached to a message that I posted on 28th May at http://openenergymonitor.org/emon/node/176?page=4
For my test rig, I removed the outer insulation from part of an extension cable so that a CT would fit around just one of the cores. Different loads could then be plugged in so as to provide known currents for the Arduino to measure. This provided an easy way of checking and calibrating the system. When it was all moved out into the garage, no further adjustments were needed.
Re: Import vs Export Measurement ...
I'e been looking at your code and the core part is just like mine... except on the calibration part.. Still not sure what my problem could be :(
Re: Import vs Export Measurement ...
And where does the PV feed in on this list?
Meter(street) -> Amp Selector(company only) -> Differential Breaker -> CT -> HouseHold Breaker's...
Re: Import vs Export Measurement ...
-> CT -> HouseHold Breaker's -> PV
Re: Import vs Export Measurement ...
 Calypso_rae is correct, the 30 A CT should read 100 W without difficulty (from my measurements on the A-D converter, I think it should be accurate to within 10% at 75 W, and it is more accurate at higher powers - because more bits of the A-D converter are used).
Does the power you read (no PV) agree with the actual load - to within (say) 10%? What do you read for Apparent Power - it should be only a little more than Real Power?
Re: Import vs Export Measurement ...
Yep, that's what's making me sesing that something is wrong.. If I turn the PV off the power dosen't increase...
This is the current output with no sun, since it's night :P
realPower;apparentePower
660.53;934.71
When I turn the PV off the value that should change is supposed to be the real or the apparent? or both?
Thanks
Re: Import vs Export Measurement ...
Sorry about the blank page, it seems to be a problem with ckeditor which I cant get to the bottom of appart from that it look like this problem: http://cksource.com/ forums/viewtopic.php?t=25524, I have reinstated fckeditor in the mean time which seems to work.
Re: Import vs Export Measurement ...
No Problem :) Thanks :)
Re: Import vs Export Measurement ...
In the meantime, I've changed the CT from the Line to the Neutral, and it is now working PERFECTLY :)
Meaning if:
RealPower = 300W
Solar PV = 50W
With PV down, realPower = 350W :)
Is this supposed to happen?
Thanks once again for all the help.
Rechena
Re: Import vs Export Measurement ...
That is not supposed to happen! If you have a single phase supply, you should get exactly the same result whether you measure on the line or the neutral.
I have to consider whether there is a problem with your supply - the conductor marked line really is line and neutral really is neutral?
However, the end result appears to be good - your EmonTx looks to be working correctly.
Yes, that looks correct. And if you switch off the appliances when you are generating, you should see -50 W - meaning 50 W is being returned to the grid.
Re: Import vs Export Measurement ...
My thoughts exactly, but acctually on the line was not measuring. Not sure what it is... Could be a grid tie inverter problem?
Re: Import vs Export Measurement ...
I don't want to cause unnecessary worry, but I think you need to check all your wiring very carefully. It seems that there might be a second path for the current somewhere. If I'm right, it could mean that the whole installation is in a dangerous state and needs attention.
As a quick check, have you measured the line and neutral voltages with respect to earth? I don't know which country you are in so I don't know what the standard supply is, but the neutral should be within a few volts of earth and the line voltage should be about 240 V as you measured earlier.
(The worst case could be something like the problem my neighbour had: A plumber fitted a new electric shower and in the process of adding the extra wiring, he exchanged line and neutral for the whole house. Thus all the switches and fuses were in the neutral conductor and if something was switched off or if a fuse blew, the circuit remained live! The only fuse that remained to protect the house was the 80 A fuse belonging to the electricity company, and the only way to make anything and everything not live was to pull that fuse out. Fortunately, I found the error before anyone got hurt and before a fault set the house on fire).
Re: Import vs Export Measurement ...
Ok, I've made some more tests and with the main breaker off the V on the voltmeter is 0V but on the arduino is 17W realPower... wierd isn't it...
I've tried the house plugs, and no current is passing... This is the image of the connection..
The blue wire is the Neutral... everyting looks fine...
Re: Import vs Export Measurement ...
That is nothing to worry about. We think it is due to digital noise pickup from the processor combined with where exactly the mid-point voltage sits in relation to the ADC decision levels. See here http://openenergymonitor.org/emon/buildingblocks/measurement-implication...
On the photo, where did you put the CT when it was on the line cable? Because there are two rows of breakers, you did put it on the incoming side of the main breaker (marked "Line in")? If you put it on the outgoing side ("Line feeding top busbar only"), you only measured part of the current because the line connection to the breakers on the same row as the main breaker is a busbar ("Busbar 1") that is out of sight. But because all the neutrals are connected together at the top and then one neutral cable comes down to the main breaker, where you have it now you have the full neutral currrent passing through the CT.
Re: Import vs Export Measurement ...
Ok, you lost me there,
I had the ct connected to the Line out, after that big breaker there, but, it is supposed to power all the breakers. not?
I had the CT connected on the Black cable over there, near the blue one that I'm now using.
Thanks
Re: Import vs Export Measurement ...
Not correct. The feed from the street goes in to the top of the main breaker on the brown & blue wires. The switched feed out to the bottom row of breakers is a copper bar not visible in the picture. The black wire from the bottom of the main breaker feeds out to the top row of breakers.The blue neutral from the bottom of the main breaker connects to the row of neutral terminals at the top of the box.
Therefore, if your CT was on the black wire, you were only measuring the current taken by circuits connected to the top row.
Now, your CT is on the blue wire and it is measuring all the current returning whichever row of breakers fed the circuit.
And I think your PV was connected to the bottom row.
Re: Import vs Export Measurement ...
Robert, you are a genious :)
I complettly forgot about the bus bar
And yes the PV was on the bottom breakers. I will try it again, on the brown wire. Thanks once again for the pattience and help :)
Re: Import vs Export Measurement ...
RW: A plumber fitted a new electric shower and in the process of adding the extra wiring, he exchanged line and neutral for the whole house. Thus all the switches and fuses were in the neutral conductor and if something was switched off or if a fuse blew, the circuit remained live! The only fuse that remained to protect the house was the 80 A fuse belonging to the electricity company, and the only way to make anything and everything not live was to pull that fuse out. Fortunately, I found the error before anyone got hurt and before a fault set the house on fire).
I recently needed to fix some lights at a house with very old wiring. It turns out that there are fuses in each of the Live and Neutral lines. The fuse that had blown was in one of the Neutral lines, so although no lights were coming on, all of that wiring was still live.
The moral of this tale is always to make sure that any exposed wiring really is non-live before touching it. If there is any doubt, check it first with a neon-equipped screwdriver, or preferably a multi-meter.
Re: Import vs Export Measurement ...
I always use a neon, and I always make sure that is working by checking that the circuit is live before I switch off / pull fuses, and dead after I've done so. A neon will light up on body capacitance to earth and generally does not require an earth connection, whereas a multimeter will do.
I claim mine was worse than yours: you at least had a relatively small fuse in the line side that would have still protected against a low impedance fault.
Did your "fix" involve a new consumer unit - it ought to have done. I can't remember when double-pole fuses were outlawed, it was certainly a very long time ago - probably before WW2 (and I wasn't born then - I date from the 1940's, but only just!).
Re: Import vs Export Measurement ...
The house in question was built around 1930, and the lighting circuits could well be original from that period, so it's well due for a re-wire!


Chuck Underwood Nanodegree Arcade Clone
Directions:
Get to the other side (I know I am not a chicken) and avoid the bugs.
WASD or arrow key to move - P to pause - R to restart


Introduction
As Unmanned Aerial Vehicles (UAVs) become increasingly integrated into various commercial, military, and civilian applications, ensuring secure and reliable communication links between UAVs and ground control stations is of utmost importance. One key aspect of communication security is the implementation of secure communication protocols, which can provide authentication, confidentiality, and integrity for the data transmitted between UAVs and ground control systems. This article aims to provide an overview of the existing secure communication protocols suitable for UAV systems, their features, and their potential advantages and drawbacks.
Secure Real-time Transport Protocol (SRTP)
Secure Real-time Transport Protocol (SRTP) is a security-enhanced version of the Real-time Transport Protocol (RTP), a widely used protocol for delivering audio and video streams over IP networks. SRTP provides confidentiality, message authentication, and replay protection for RTP traffic. SRTP is particularly suitable for securing real-time data streams, such as video feeds from UAV cameras, due to its low overhead and minimal impact on latency. SRTP uses Advanced Encryption Standard (AES) for encryption and secure hash algorithms, such as HMAC-SHA1, for message authentication. Key management for SRTP can be performed using various methods, including manual pre-shared keys, secure signaling protocols like ZRTP or MIKEY, or by using DTLS as a key exchange mechanism (DTLS-SRTP).
Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)
Transport Layer Security (TLS) is a widely-used cryptographic protocol designed to secure communications over a computer network. It provides privacy, data integrity, and authentication between two communicating applications. Datagram Transport Layer Security (DTLS) is an adaptation of TLS for use with datagram protocols, such as the User Datagram Protocol (UDP), which is commonly used in UAV communication systems due to its low latency and connectionless nature. DTLS retains most of the security features of TLS, including strong encryption, message authentication codes, and key exchange mechanisms. DTLS is designed to handle packet loss and reordering, making it suitable for unreliable networks, such as those encountered in UAV operations. DTLS can be used to secure command and control links, as well as payload data transmission between UAVs and ground control stations.
Internet Protocol Security (IPsec)
Internet Protocol Security (IPsec) is a suite of protocols designed to secure IP-based communication at the network layer. IPsec can be used to protect data flows between UAVs and ground control stations by creating encrypted tunnels that encapsulate the IP packets. IPsec provides confidentiality, data integrity, and authentication by using strong encryption algorithms, such as AES, and secure key exchange mechanisms, such as the Internet Key Exchange (IKE) protocol. IPsec can operate in two modes: transport mode, which encrypts only the payload of the IP packet, and tunnel mode, which encrypts both the payload and the IP header. While IPsec provides robust security, it may introduce additional overhead and latency, making it less suitable for time-sensitive UAV applications.
Conclusion
The choice of a secure communication protocol for UAV systems depends on the specific requirements of the application, such as latency, bandwidth, range, and power consumption. Protocols like DTLS, SRTP, and IPsec provide robust security features. It is essential to consider the trade-offs between security, performance, and resource utilization when selecting the most suitable protocol for a given UAV system. As UAV technology continues to advance and their applications diversify, ensuring secure and reliable communication will remain a critical research challenge. Future work in this area should focus on the development of new secure communication protocols tailored to the unique requirements of UAV systems, as well as the integration of existing protocols with emerging technologies, such as artificial intelligence and quantum cryptography.
Reference


Labtest Diagnostics would like to become St. Louis Community's undisputed leader in providing excellent, cost efficient laboratory services of the uppermost quality to physicians, assisted living facilities, hospitals, and individuals while maintaining the highest ethical standards.
The mission of Labtest Diagnostics is dedicated to the principles of consistent excellence in esoteric laboratory testing. We are committed to aiding the clinician in early diagnosis and continued disease management through the design of laboratory profiles and panels that provide the ordering physician an array of preselected tests. These tests assist to resolve the various clinical problems faced in practice at the most cost-effective manner possible.
Labtest Diagnostics uses state of the art technology performed solely by an accredited laboratory and experienced professionals. Labtest Diagnostic’s staff treats our clients, their staff and patients with the respect they deserve. Client Services Representatives at Labtest Diagnostics are ready to do “whatever it takes” to satisfy our clients.
We shall achieve excellence in diagnostic testing, information and services to become the area's most valued company to patients, customers, colleagues, investors, business partners, and the communities where we work and live.


Cordeiro’s 5 TDs help Hawaii beat San Jose St. 42-40
HONOLULU (AP) - Chevan Cordeiro accounted for five touchdowns, including two in the fourth quarter, and Hawaii held on for a 42-40 win over San Jose State on Saturday night.
Cordeiro was 23-of-31 passing for 309 yards and three touchdowns with no interceptions and added 11 carries for 55 yards and two scores. Miles Reed had 124 yards rushing and a TD on 17 carries and JoJo Ward finished with seven receptions for 170 yards and two touchdowns for Hawaii (6-4, 3-3 Mountain West).
San Jose State’s 16-play, 67-yard drive stalled and the Spartans (4-6, 1-5) settled for a 28-yard field goal by Matt Mercurio that trimmed their deficit to 28-26 going into the fourth quarter. Cordeiro hit Jared Smart for a 5-yard touchdown to give Hawaii a nine-point lead with 12 minutes to go and, after Josh Love connected with Bailey Gaither for a 40-yard TD about 2 ½ minutes later, Cordeiro’s 2-yard scoring run capped a 12-play, 85-yard drive to make it 42-33 with 4:23 remaining.
Love hit Isaiah Ward for a 19-yard touchdown to bring San Jose State within two with 1:51 to go but Cordeiro’s 4-yard run on third-and-2 allowed the Rainbow Warriors to bleed the clock.
Love passed for 375 yards and two TDs, DeJon Packer had 20 carries for 112 yards and two scores and Tre Walker had 10 receptions for 138 yards for San Jose State.
Sign up for Daily Newsletters
Copyright © 2019 The Washington Times, LLC.
Please read our comment policy before commenting.


--- title: 'Dataset: Philippine Municipalities Created by Executive Order' date: 2014-07-25 09:32:00 Z tags: - dataset - laws - philippines layout: post type: post status: publish meta: pe_theme_meta: O:8:"stdClass":2:{s:7:"gallery";O:8:"stdClass":3:{s:2:"id";s:2:"89";s:5:"width";s:0:"";s:6:"height";s:0:"";}s:5:"video";O:8:"stdClass":1:{s:2:"id";s:2:"63";}} _edit_last: '1' tumblr_landlaborcapital_id: '92841585252' tumblr_landlaborcapital_permalink: http://landlaborcapital.tumblr.com/post/92841585252/dataset-philippine-municipalities-created-by-executive author: Nathaniel ---
Oh boy. Doing panel econometrics and economic history in developing countries is awful. One problem, ALWAYS, is when we want to match historical data to contemporary data. Doing so entails historic shapefiles or datasets that allow us to track administrative boundary changes; these things are seldom available for places like the Philippines.
So here is a little dataset that lists new municipalities created by executive order (only) from 1936-1965
Philippine Executive Order Municipalities, 1936-1965 - Table on Mode.
Note this does not list the “mother” municipalities.


We are 12
shopping cart
Mens
Womens
Kids
Jerseys
Accessories
T-Shirts
Sweatshirts
Hats
Shop Mens
Shop Womens


Tutorial: basic logic
This tutorial demonstrates how to use XLS to create a simple combinational module, in this case one that performs floating-point-to-integer conversion.
The first task is to define the full semantics of the module. We wish for the module to accept a IEEE-754 floating-point number and to output the integer representing the same. All fractional elements will be discarded. Overflow, NaN, and infinite values will be clamped to the maximum or minimum representable integer value with the sign of the input number.
1. Bootstrapping
When creating a module, one first needs to define the signature and skeleton of
the entry function. If you recall, a IEEE binary32 (the C float
type) has 1
sign bit, 8 [biased] exponent bits, and 23 fractional bits. These values can be
packed into a tuple, and so, the signature of our function can be defined as:
pub fn float_to_int(
x: (u1, u8, u23))
-> s32 {
s32:0xbeef
}
DSLX syntax is intended to follow Rust syntax as much as possible, so this may look familiar if you're a Rustacean. In any case, let's walk through this code, line-by-line:
- This line declares a public function (
pub fn
), namedfloat_to_int
. Since this function is "public", it can be referenced from other modules (i.e., files) if imported therein. - Function parameter declarations! This function only takes one parameter,
x
, whose type follows its name. In this case, it's atuple
: a grouping of potentially disparate elements into a single quantity. A tuple is specified by listing a set of types in parentheses, as here. Our tuple has a 1-bit element for the sign, an 8-bit element for the biased exponent, and a 23-bit element for the fractional part. In what is the complete opposite of a coincidence, these fields match those of an IEEE float32 number. If a function takes more than one argument, they'll be comma-separated. - u1, u8, and u23 are all shortcuts for the type uN[1], uN[8], and uN[23]. The uN[X] construct declares an X-bit wide unsigned type. There is also sN[X], which declares an X-bit wide signed type. - Other type shortcuts exist such as bitsX, bool (alias for uN[1]), and u[1-64] and s[1-64], being aliases for uN[1] through uN[64] and sN[1] through sN[64]. - Function return type. This function returns a signed 32-bit type, matching the intentions of float-to-int conversion (since floats are signed).
- Finally, the last line: the final statement in a function is its return
value. Here, we're unconditionally returning a signed 32-bit number with
the value
48879
. This is only temporary to make the function syntactically valid - we're still learning the basics! Gimme a second!
As an aside, it's a good idea to keep a bookmark to the DSLX language reference handy. It has the full details on language features and syntax and even we XLS devs frequently reference it.
Anyway...the tuple representation of our input is a bit cumbersome, so let's define our floating-point number as a struct instead:
pub struct float32 {
sign: u1,
bexp: u8,
fraction: u23,
}
pub fn float_to_int(x: float32) -> s32 {
s32:0xbeef
}
Finally, let's write a quick test to make sure things work. Add the following code to your file.
#[test]
fn float_to_int_test() {
// 0xbeef in float32.
let test_input = float32 {
sign: u1:0x0,
bexp: u8:0x8e,
fraction: u23:0x3eef00
};
assert_eq(s32:0xbeef, float_to_int(test_input))
}
Now run the test through the DSLX interpreter:
$ ./bazel-bin/xls/dslx/interpreter_main float_to_int.x
You should see something like the following:
[ RUN UNITTEST ] float_to_int_test
[ OK ]
[===============] 1 test(s) ran; 0 failed; 0 skipped.
If so, then congrats! You've written - and tested - your first DSLX module! Next up: let's make it do something more interesting.
2. Simple logic
After getting the trivial module up and running, the next step is to add real
logic to the implementation. Recall that a floating-point number's fractional
part has an implicit leading 1
, so a floating-point number is representable as
an integer if its exponent is < 30, that is to say, if its value is between
[-2^31, 2^31).
To get that exponent, we need to unbias it. In its binary representation, a valid floating-point number's exponent is a value from 0 to 254, being an 8-bit value (an exponent of 255 indicates either NaN or an infinity). The range of a floating-point number's exponent is from -128 to 127, though, so we need to subtract 127 from that value to get the actual exponent. Let's write a function to do just that:
fn unbias_exponent(exp: u8) -> s9 {
exp as s9 - s9:127
}
Notice that we need to expand the exponent to add on the sign bit before the subtraction!
 They're needed because we've not yet fully built out DSLX' type inference capabilities, but this is an area targeted for improvement.
Now that we can get the proper exponent, we can code up the rest of the simple
in-bound cases. To do that, we need to prepend that leading 1
and shift the
fractional part into its proper location in the final integer. Here's what that
looks like when we add that to our original function:
pub struct float32 {
sign: u1,
bexp: u8,
fraction: u23,
}
fn unbias_exponent(exp: u8) -> s9 {
exp as s9 - s9:127
}
pub fn float_to_int(x: float32) -> s32 {
let exp = unbias_exponent(x.bexp);
// Add the implicit leading one.
// Note that we need to add one bit to the fraction to hold it.
let fraction = u33:1 << 23 | (x.fraction as u33);
// Shift the result to the right if the exponent is less than 23.
let fraction =
if (exp as u8) < u8:23 { fraction >> (u8:23 - (exp as u8)) }
else { fraction };
// Shift the result to the left if the exponent is greater than 23.
let fraction =
if (exp as u8) > u8:23 { fraction << ((exp as u8) - u8:23) }
else { fraction };
let result = fraction as s32;
let result = if x.sign { -result } else { result };
result
}
If we run this function with our original test case, it still works! Of course, one should run additional test cases to see what happens with other inputs, particularly because this implementation will fail for some important values.
Try adding tests on your own to find these cases - and to fix them! If you're stumped, hints (and answers) are hidden below:
Missing case 1
What if the input is 0.0? What should the result be? To fix this, add a specific check for a zero exponent and fractional part.Missing case 2
Are NaNs or infinite numbers handled correctly? To fix, add a special check for NaN or infinities at function end. Consider making `is_inf` and `is_nan` functions!3. Conclusion
I hope that these examples help you get a better grasp on DSLX and writing
modules in them. While our float-to-int function correctly handles
float
-to-int32_t
conversions, what if we wanted to convert double
to
int64_t
? Or even float
to int64_t
? Even worse, will we have to write
separate floating-point operators for every floating-point type we (or our
users) wish to support?
Fortunately, the answer is no! The next tutorial covers type parameterization, and demonstrates how we can write a single int-to-float routine that covers all our possible conversions. See you there!


Under Construction
Table of Contents
- Introduction
- Learning Rails
- Apps
- Octopress
- What I Learned
- Conclusion
- Technologies behind this Blog
- Source
Introduction
I’ve always wanted a personal website, for such a long time that I can’t even remember the original reason. But it always felt so difficult, like there would be hoop after hoop to jump through. And there were, but I found that each hoop was very easy to jump through, with fantastic resources and frameworks doing almost the entirety of the leg work.
This was one of my first truly independent projects. Prior to this I had always had a partner, professor, TA, etc to fall back on if I got stuck. So this project was stepping out of my comfort zone, which is always difficult. But as I’ve found, pushing those boundaries has great reward and brings a certain feeling of personal pride and independence.
Learning Rails
To learn Ruby on Rails I made use of Codeacademy Ruby Guide, Michael Hartl’s Ruby on Rails Tutorial, and Railscast. Codeacademy was fairly basic and I think is catered towards complete beginners. But looking through there I found some good basic guides to brush up on things like git or commandline. Michael Hartl’s tutorial was incredible and even after finishing it I would come back and use it as a reference guide. For things that Michael Hartl’s guide couldn’t cover I would look through Railscast.
Apps
I started off wanting to build a blog, so I modified Hartl’s code for that purpose. Building a dynamic mysql blogged webapp. I wanted to try something a little bit different as well so I build a Photo Uploading app. It seemed like it would be difficult but by utilitizing Ruby on Rails gems it turned out to be easy. The Cloudinary gem was quick to setup and did all the heavy lifting, offering a way to upload and store images in the cloud.
I wasn’t entirely happy with the blog though, as a one person blog I found the dynamic nature to be redundant. Then I got lucky browsing around the internet reading blogs. I found that this ‘Octopress Blog: A Blogging Framework for Hackers’ came up repeatedly, so I decided to check it out. Turns out it was exactly what I was looking for. I thought Ruby on Rails did a lot of the work for me, but Octopress utilizes Jekyll to do even more. It generates posts, provides tools like improved image tags. And above all it is static, so no need for a database, one less thing to worry about breaking. It also takes care of the UI, and lets you download template themes for a personal flare. Or quickly plugin fun additions like Disqus or Google Analytics. Above all its static, so I don’t have to worry about the model part of MVC.
What I Learned
I learned far more than just Ruby and Ruby on Rails. The nature of an independent project is that every step you have to search for the proper tool to do this or that, and you end up finding a lot of new things. For example, I fell in love with the three window (commandline, editor, browser) workflow. I got more comfortable with using commandline debuggers, helping to reduce my dependence on the bloated IDEs I had been stuck with in college. The commandline is very romanticized and it was awesome to get to know it better.
I found out how easy things are, especially since Ruby on Rails has such a strong community. Heroku makes it effortless to deploy your app, gems like New Relic can monitor your app with less than 10 lines and 10 minutes of work. When I wanted to speed my app up, it took copying and pasting in two short blurbs and installing a gem. The hours I spent building a login system from scratch in Michael Hartl’s tutorial was replaced instantaneously with the Devise gem (the understanding I got from the tutorial can not be replaced though). I remember setting the devise gem up and looking for the generated code (I thought it was a scaffold). But after checking git and seeing that there were actually no changes to the source… that the system actually worked!
This is where I started to understand how much of programming is simply reading and interface and plugging to pieces together. How layers like ActiveRecord could be laid on top of your database so that it could handle anything from postgresql, mysql, etc. How REST could be laid on top off resources and interact with them through universal verbs/actions.
I learned to write user stories and plan out my code better before I started typing (school projects would generally provide structure). I learned to use git better, to branch on features and merge them back only once completed. And that they were only completed once that had an automated test suite. And to use Test Driven Development to make sure they that new features were fulfilling their test cases. I had theoretically known what MVC and REST were, but here I got some first hand experience with them. Things I take for granted like how to write in Markdown.
University didn’t expose me to the most interesting language, there were a few weeks of ocaml and python, but asides from that mostly Java and C++. I found Ruby to be very refreshing, being able to do things like inject. Or easy list comprehension and array splicing like python. Or how as a dynamic language, it would have really cool methods like ‘method_missing()’, lazy evaluation, or would put ‘?’ or ‘!’ if it returned a boolean or modified data, respectively. How it had an REPL to play around with an idea, or first class functions (procs, lambdas, closures) intead of the mess that Java callbacks are. It also enforced the idea that despite all the differences, at their root all the languages were very similar. Sure there would be some different syntax, typing, or libraries but in the end it all came down to the idea of structured programming: that everything could be done with a combination of sequence, selection, iteration.
I bought a domain and learned how to use its DNS, which was actually one of the biggest hassles. There isn’t a wealth of helpful information online about hosting, and it’s very unhelpful that providers work differently so the guides you find aren’t entirely applicable. However, the longer it takes you to find something out, the better you understand it, so no harm there.
I learned random invaluable things like Lorem Ipsum and the origins of foobar.
Conclusion
Overall I found it very analagous to backpacking around Asia. When you first set out its terrifying, you have no one to rely on. But you learn and quickly find everything to be very easy. You meet incredible people who want to help you. You discover new things about yourself and come out of it a stronger and more independent individual.
Technologies behind this Blog
This blog webapp utilizes the technologies/services:
- Ruby on Rails obviously!
- Octopress, powered by Jekyll. A blogging framework for hackers.
- gandi.net for hosting and dns services.
- Rack::Cache for faster loading
- Heroku for hosting online as well as the New Relic addon to stop the dyno from idling.
- Devise for user, session, and password management.
- Bootstrap to make things look pretty since I’m no css wizard.
- Rspec and Capybara for quick automated testing.
Source
- Source on github
- Hosted at nicklau.io


The data in this experiment are a sample of 400 controls from the European Prospective Investigation of Cancer (EPIC) Norfolk study (http://www.srl.cam.ac.uk/epic/) each with approximately 250k Perlegen (http://www.perlegen.com/) SNPs (the EPIC 400 study). This is part of a screen sample from a multistage study of breast cancer in EPIC.
The flowchart of our implementation is shown in Figure 1. The input data have three sources of information, i.e., genotype, map and phenotype. The genotype data contain actual genotypes for all individuals in the so-called long format (individual ID, SNP ID, and genotype). Map information show position of each SNP by chromosome. Phenotypic information is in the usual tabular format (individual ID, sex, body mass index and other measurements). These three sources of information are merged into a combined dataset for analysis. For screen purpose, only single point analysis was conducted. Call rates were obtained, as with HWE tests for all SNPs, the results of which were used as an inclusion/exclusion filter of SNPs in the regression analysis. The code for SNP information including HWE tests is shown as follows,
proc sort
data=epic;
by chr
pos;
run;
ods select
none;
proc allele
data=epic genocol;
ods output
markersumm=ms allelefreq=af genotypefreq=gf;
by chr
pos;
var
a1a2;
run;
ods select all;
The input data is sorted by chromosome (chr) and positions (pos), as input to PROC ALLELE which accepts genotype (genocol) and outputs summary information of SNPs (markersumm), allele frequencies (allefreq) and genotype frequencies (genotypefreq). The outputs are stored in ODS (output delivery system) databases by chromosomes and SNP positions, and all outputs for individual SNPs are suppressed (ods select none). This shows great simplicity.The raw genotype data and map information can be used to construct input files for HAPLOVIEW (http://www.broad.mit.edu/mpg/haploview/) for visualisation. The SNPs involved can be submitted to ENSEMBL (http://www.ensembl.org/index.html) to obtain gene annotation.
Several useful features are notable in this analysis.
First, we do not require any other software to manage data. In a traditional
statistical analysis, the data usually takes the so-called wide format, where
rows indicate sample and columns variables. Since the number of SNPs is quite
large, it is more sensible to organise genotype data into the so-called long
format with only a few columns indicating individual IDs, SNP IDs and genotypes.
Although this requires larger amount of storage but the analysis is considerable
simpler, for one can perform analysis for each SNP in sequence and store the
results in a systematic fashion. Second, we were able to take advantage of
SAS/GENETICS module for HWE and haplotype analysis. Third, all the outputs are
available as databases for re-use and it is possible to generate data for
external software programs such as HAPLOVIEW. The facility of result database is
possible with ODS. Lastly, the SAS programs we developed can run without
c
We have kept the
comma-separated data in compressed format, to be readily processed by pipe
mec
Figure 1. A flowchart of the EPIC 400 Analysis. The raw data consist of genotypes, phenotypes and map information, to be merged. Descriptive statistics are then obtained, followed by calculation of call rates and HWE, the results of which are fed into the regression which assesses statistical significance and comparison with theoretical distribution by Q-Q plot. The raw data can also be reformatted into HAPLOVIEW input files so that specific region in the genome can be visualised.


Supported triggers
Preview of build-in animations triggers.
animation
preview
empty
click
hover
loop
loop-on-hover
morph
morph-two-way


This page will post data to the PiAIZU Raspberry Pi. A webserver will receive the POST data and call the script: /var/www/html/cgi-bin/lmx.cgi This script will parse the received the data and if it's valid the data will be repacked into binary c structures. These structures will the be passed further through a UNIX socket. The lmx sample application will listen in the "other end" of the socket for incoming packages and handle the requests.
Send text to LMX-001
Show cross hair:
The text below is a response from the LMX sample application on a regular GET request.


{% extends '../app.html' %} {% load static %} {% block content %}
CV. USAHA MAJU BERSAMA
Alamat: Desa Blang Luah, Kac. Darul Makmur, Kab. Nangan Raya, Prov. Aceh
Your username and password didn't match. Please try again.
{% endif %} {% if next %} {% if user.is_authenticated %}Your account doesn't have access to this page. To proceed, please login with an account that has access.
{% else %}Please login to see this page.
{% endif %} {% endif %}


CROW
Stay Clean
Home
About Us
Contact Us
My Account
My Info
My Order
Payment
Report
Name:
Email:
Street:
State:
City:
Zip:
Old Password:
New Password:
Confirm Password:
Update


| Package | Description |
|---|---|
| org.apache.olingo.commons.api.edm.provider |
Contains representations for objects created during CSDL document parsing
|
| Modifier and Type | Class and Description |
|---|---|
class |
CsdlAction
Represents an action CSDL item
|
class |
CsdlActionImport
Represents an action import CSDL item
|
class |
CsdlBindingTarget
The type Csdl binding target.
|
class |
CsdlComplexType
The type Csdl complex type.
|
class |
CsdlEntityContainer
The type Csdl entity container.
|
class |
CsdlEntitySet
The type Csdl entity set.
|
class |
CsdlEntityType
The type Csdl entity type.
|
class |
CsdlEnumMember
The type Csdl enum member.
|
class |
CsdlEnumType
The type Csdl enum type.
|
class |
CsdlFunction
The type Csdl function.
|
class |
CsdlFunctionImport
The type Csdl function import.
|
class |
CsdlNavigationProperty
The type Csdl navigation property.
|
class |
CsdlOperation
The type Csdl operation.
|
class |
CsdlOperationImport
The type Csdl operation import.
|
class |
CsdlParameter
The type Csdl parameter.
|
class |
CsdlProperty
The type Csdl property.
|
class |
CsdlPropertyRef
The type Csdl property ref.
|
class |
CsdlSingleton
The type Csdl singleton.
|
class |
CsdlStructuralType
The type Csdl structural type.
|
class |
CsdlTerm
The type Csdl term.
|
class |
CsdlTypeDefinition
The type Csdl type definition.
|
| Modifier and Type | Method and Description |
|---|---|
protected <T extends CsdlNamed> |
CsdlAbstractEdmItem.getAllByName(String name,
Collection<T> items)
Gets all by name.
|
protected <T extends CsdlNamed> |
CsdlAbstractEdmItem.getOneByName(String name,
Collection<T> items)
Gets one by name.
|
Copyright © 2013–2018 The Apache Software Foundation. All rights reserved.


Geometric Models in Drake¶
Table of contents
Introduction¶
This document discusses how physical objects (i.e., robots and other objects such as furniture) are represented in Drake.
The representations of physical objects are modeled in Drake declaratively using either URDF (Unified Robot Description Format) or SDF (Simulation Description Format), which are both XML formats.
- SDF Reference
- Drake’s version of URDF. Drake’s URDF has extensions to the official ROS URDF.
The target audience for this document is for those who want to model a physical object for use in Drake. You should have some understanding of XML formats, and be able to run Drake. You don’t need to know C++. This document provides enough reference material for someone to edit or create a representation of a simple object and its environment, by defining the terminology and providing an overview of what’s in a model file. This document is not meant as a tutorial for creating URDF/SDF files, which you can find elsewhere. For deeper understanding of polygonal modeling and advanced topics like meshes and textures, we try to provide links to further information, but you may have to do more of your own research and education.
In this document, we call the URDF or SDF representation of the object a model. The model of an object will describe the object’s physical properties, including visual, contact, and dynamic properties. Visual properties describe the appearance of an object, such as its shape and texture. Dynamic properties describe how the object moves and have parameters like mass and spatial inertia. Contact properties describe how an object behaves when in contact with other objects and include numerous collision parameters.
These properties allow you to do simulation, visualization, motion planning, and control.
Terminology¶
Mesh - a polygon mesh which is a collection of vertices, edges, and faces that describes the surface of a 3D object. For a mesh to represent the fine details of a surface, a complex mesh is required. Processing a mesh gets more expensive as the mesh becomes more complex. Therefore, it is important to use a mesh with just enough detail to serve the purpose. To be compatible with Drake, all of the faces in the mesh must be triangles. Many modeling tools have a simple tool for “triangulating” the mesh.
SDF- Simulation Description Format. An XML format that describes objects and environments for robot simulators, visualization, and control. SDF is OSRF’s successor to URDF. Unlike URDF, SDF allows multiple objects to be modeled in a single SDF file, and allows you to model the pose of the robot in the world. Relative to URDF, SDF is being more actively maintained.
Texture - the digital representation of an object’s surface. A texture may include color, brightness, transparency, reflectivity, and other aspects. The texture is mapped onto a preexisting surface - typically a mesh.
URDF- Unified Robot Description Format, an XML format for representing one model of a robot or other object. Unlike SDF, only one object can be modeled per file, and pose cannot be modeled. Drake’s URDF extends the official ROS URDF.
File formats for Drake model components¶
Model file format¶
Drake’s models can be defined in either URDF or SDF file formats, but SDF is newer and thus preferred. They are similar formats. Both are XML-based.
Mesh file format¶
Drake can process the following mesh file format (file extension):
- OBJ - a 3D geometry definition file format.
If Drake processes an SDF or URDF file and finds a mesh file name extension that is not a type that it can process (currently only OBJ), it will see if a file exists with the same path and name but with an “obj” extension.
The following are mesh file formats that are not processed by Drake, but may be found in the Drake repository and may be used to find OBJ versions:
- DAE (digital asset exchange) - can include textures. An issue exists to add Drake support for DAE files.
- STL (STereo Lithography) - describes only the surface geometry of a three-dimensional object without any representation of color, texture or other common CAD model attributes. An issue exists to add Drake support for STL files.
- WRL- an obsolete mesh format that is superseded by a new format called X3D. Allows you to specify surface color, textures, shininess, transparency, and other parameters. Vertices and edges for a 3D polygon can be specified.
Texture file format¶
Textures are normally used to represent the appearance of an object’s surface,
for example, the colors and patterns. To visualize the appearance of a Drake
model, use the drake-visualizer
program in the Director external.
There are three ways in which drake-visualizer
applies visual surface
properties to meshes:
- Via VTK’s native VTM/VTP texture files.
- Via OBJ’s native MTL material files.
- Via URDF’s and SDF’s material specification. (Currently only color is supported.)
Priority will be given in the order shown above, i.e., VTM/VTP will be used if they exist followed by MTL and finally SDF and URDF. Note that VTM/VTP files will only be used if they (1) exist in the same directory as the OBJ file and (2) share the same base file name as the OBJ file.
To create VTM/VTP texture files for your OBJ mesh, one method is to get a DAE file which is equivalent to your OBJ file (your 3D scanner may be able to output both DAE and OBJ, or file converters are available). Convert the DAE file into a VTM texture by running this Python script. Save the script to the place where your DAE file is stored. Then run the following commands, and the script will create VTM and VTP files:
$ sudo apt install python-collada
$ python convertCollada.py my_file.dae
The content of a Model file¶
The best way to learn how to create a model is to examine and change an existing, working model. This tutorial walks through editing a model in Drake.
For detailed information on the elements of a model, see the URDF or SDF references for more information.
Modelling the shape of an object¶
To model a shape for visual purposes, use URDF’s or SDF’s <visual>
tag. To
model a shape for the purpose of determining contact between your model and
other objects, use URDF’s or SDF’s <collision>
tag. (While both SDF and URDF
use those same tags, note that the structure and content of those tags differ.)
To explain why you might want to define the collision element differently than the visual element, let’s explore the different ways of defining shapes.
An object’s shape can be modelled using a 3D scanner, which produces a polygon mesh. Meshes of geometrically complicated objects contain many polygons. The detail (density) of the mesh is great for a realistic visual display. However when a mesh is used for a collision element, collision algorithms must process all the polygons that are close to the target, which can be slow. For these reasons it is often desirable to use something simpler than a mesh for the collision model. It’s a tradeoff between accuracy of the shape and processing time.
The <visual>
tag is used in visualization programs like
drake-visualizer
(in the
Director external). Drake does
not process the visual tag, unless you have something specific in your code that
will process it, like
RgbdCamera.
Regardless of what program is processing the visual data, the processing time
of visual elements is generally not an issue.
In addition to modelling shapes with meshes, you can also model shapes with geometric primitives, such as cylinders, spheres, or boxes. Geometric primitives are far less complex than meshes and so require far less processing time.
In the iiwa14.urdf robotic arm example, we use meshes for the visual geometry elements, and cylinders for the collision elements, except for the last links where meshes are used. The idea is that for links of the arm, we don’t need exact shapes for collision, where we don’t expect to need precision. Even if we were to use an “elbow” to shove an object out of the way, we probably don’t need exact accuracy.
But there are cases where we need the precision of a mesh. For example, extra modeling precision may be needed to simulate a robot arm’s end effector reaching into tight spaces or performing dexterous manipulation tasks. In these cases, if it’s taking too long to process the original mesh, then the mesh needs to be simplified. The next section describes some options.
Simplifying a Mesh¶
Q: What is the easiest way to use something simpler for a collision model?
A: If you are starting with a mesh of an object (e.g., from a 3D scanner), you may be able to use a primitive geometric shape (e.g., cylinder, box, or sphere) instead of the mesh, as described above. To do this, consider a tool like Gazebo, which provides a visual editor of model files, and allows you to modify primitive geometric shapes in your model.
Q: A single geometric shape is not accurate enough for my needs. What else can I do?
A: You can use multiple overlapping geometric shapes to define slightly more complex collision elements.
Q: I need something much more accurate than these simple shapes. How do I simplify a mesh?
A: Sometimes you really need the accuracy of a mesh.
An existing complex mesh can be simplified using a tool like Blender, a free and open source 3D creation suite.


Man Utd to exercise clause to extend star’s £20k-a-week contract by 12 months
by Ron CarneMan Utd are reportedly set to exercise a clause in Timothy Fosu Mensah’s contract which will see him extend his stay at Old Trafford by a further 12 months.
The 21-year-old hasn’t featured this season as he continues to recover from surgery after suffering cruciate ligament damage.
SEE MORE: ‘Really is an absolute joke’ – Neville tears into Man Utd trio over key issue in Sheffield Utd draw
However, a decision needs to be reached on his future with his current deal set to expire next summer, while he can start to talk with other clubs from January onwards.
According to The Sun, with Man Utd holding an option to extend his contract by a year, they are set to trigger that clause and avoid a scenario in which Fosu Mensah leaves for nothing at the end of the season.
It remains to be seen whether or not the two parties can reach an agreement on a longer-term deal next year to see him commit his future, but for now, that would seem like the sensible solution for all concerned, assuming that Fosu Mensah wishes to stay at Old Trafford beyond this season.
The Dutch international has made a total of 21 appearances for Man Utd since making his initial breakthrough in the 2015/16 campaign.
He’s also had loan spells with Crystal Palace and Fulham during that time, but it still remains to be seen whether or not he will earn a long-term future in Manchester, or if the decision to extend his deal is merely a temporary solution.


Project Documentation: Minesweeper
Documentation explaining how you implemented your game and how it satisfies the remainder of the requirements. The documentation should be in a file named documentation.html, with a link to the documentation file on the project description page.
The program generates a different mine configuration for each game.
When the player presses
generate a grid is created with either the default options or options entered in the input boxes.
After the grid is created, a random number of tiles are set as mines.
The player can flag squares in the grid as mines, and can also change a square back to being unflagged.
Toggling the
flagging option at the bottom of the page allows a player to flag and unflag tiles
The program tells how many mines are in the grid and displays the number of mines that have been flagged at any given time.
Displays above the grid show how many mines are present and how many flags the player has placed. It does NOT show how many flags are correctly placed,
because that would allow cheating.
If a zero square is clicked, all adjacent zero squares (recursively) are also revealed. All non-zero squares adjacent to the revealed zero squares are also revealed.
When a zero tile is revealed, it recursively calls the revealing function on all adjacent tiles. This repeats until all connected zero tiles, and their numbered border tiles,
are revealed.
The player can choose the size of the puzzle and the number of mines.
Input boxes are available at the top of the grid that allow the player to customize the game. If too many mines are entered, the game attempts to place as many as it can
until it fails (attempts to place a mine on an existing mine) ten times. This means that completely filling up the grid is unlikely, as the mine placing code will fail before it
selects every tile. The mine display is accurate to the number of mines actually placed in the grid.
The program displays a message when the game is over (a mine is clicked, or all non-mine squares have been revealed and all mine squares are correctly flagged).
When an end condition is reached (either all tiles are clicked and all mines are flagged, or a mine is clicked) the grid becomes unclickable and a victory/defeat
message appears above the grid
Game grid that uses CSS and is generated by JavaScript
Grid is generated by JavaScript, all css is managed in an external file: "main.css"
User input in the form of text, select options, and/or buttons
Text and Buttons are available on the grid page
User input in the form of mouse clicks
The game is played primarily through mouse clicks
Dynamic modification of HTML using innerHTML or DOM functions
Results of game interaction are displayed by changing the game grid through functions that manage innerHTML
Use of XMLHttpRequest to load JSON or XML game data that is displayed on the grid page
I couldn't think of a valid use for this in the game (reading/writing to files is bad practice in javascript and I don't have a server to test with), so I instead reused part of
assignment 6 that loads data from the disk when the 'XMLHTTP' button is pressed
Incorporates HTML 5 audio tags, video tags, canvas, or local storage
Game saving and loading is used through HTML5 local storage
Game logic code
Game is
fully functional and playable, enjoy!
Other Comments
I did some work with getting the grid to show up properly with higher dimensions, the div now grows in width if the grid becomes too big. This means that scrollbars appear if it gets too large,
but the tiles stay the same size. I feel the need to scroll on oversized grids is an acceptable tradeoff for tile size consistency. On an unrelated note, generating the max grid size and clicking
a zero tile reveals a cave-like structure, I could probably use this in another game as a map generating function.


| Name | Description |
| lobbyLocation | Location of the main lobby where the players select their team |
| careerLocation | Location where the players select their career (fighter or bomber) |
| blueDefenders | A list of locations where there is an air defense structure that targets red players |
| redDefenders | A list of locations where there is an air defense structure that targets blue players |
| redBed | Location of the red bed, this is also the spawn point for a red player when they have selected a career |
| blueBed | Location of the blue bed, this is also the spawn point for the blue player when they have selected a career |
| spawnPoints | Protected areas which cannot be bombed. They are the locations of the signs which allow players to select team and career |
| capturePoints | List of flags which can be captured by either team |


Windproof Jacket & Gilet
£24.99
Performance Increased - Useable throughout the year as a jacket or gilet. Glint piping for high visibility. 3 deep rear pockets provide ample storage for any ride.
Comfort Increased - Windproof fabric with added elastene provides ideal fit and comfort. High neck and broad cuffs provide greater weather proofing.
Quality Increased - Tough YKK zippers on front and arms. Soft shell, windproof and shower resistant nylon/elastene fabric.
- 2 in 1 design featuring detachable zipped sleeves that can be stored in a rear pocket.
- Windproof outer membrane fabric with added elastane provides ideal fit and comfort.
- Full length YKK front zip with an inner storm flap
- 3 deep rear pockets with reflective strips
- Breathable and stretchable side panels along the body and arms
- Soft shell, windproof and shower resistant with high neck, broad cuffs and long back with scooped elasticated hem providing greater weather proofing


My name is Hugo and I'm a software developer from Sweden.
I will blog about my endevours in the Windows Embedded Compact (WINCE)
,CMake
and C++
world.
Occasionally I might write about other stuff related to software, software projects and leadership.


Besides the markup structure you see in
Forms, you need to add
the ink-fv-*
classes to your inputs, which correspond to validation
rules in this component. Available classes are:
ink-fv-required
: Required fieldink-fv-email
: Valid e-mailink-fv-url
: Valid URL addressink-fv-number
: Valid numberink-fv-phone_pt
, ink-fv-phone_cv
, ink-fv-phone_mz
, ink-fv-phone_ao
: Valid telephone number in Portugal, Cape Verde, Mozambique or Angola.ink-fv-date
: Valid dateink-fv-confirm
: Make the user type the same thing twice. Common rule for confirming passwords.ink-fv-custom
: Custom rule (see below example "Custom rule")For example:
<input class="ink-fv-required ink-fv-email">

<input class="ink-fv-number ink-fv-required">

<input class="ink-fv-url">
So you have a form and would like to validate it? This example shows how to validate a form and stop it from being submitted when invalid. To use this, add the several ink-fv-* classes to your input elements.
The validate() function will also add "invalid" classes to each of your elements so the user gets a color feedback and an error message below each element (control-group, really).
The following form has a required number field. You must input a number.
{% capture sample_code_1 %}Demo
Code
{% highlight html %} {{ sample_code_1 }} {% endhighlight %}The following code validates using a custom rule named minthree
,
which fails if the input string has less than three characters.
To do this, you must add the ink-fv-custom
and minthree
classes
to the input elements you want to validate, and pass the customFlag
option to this function, like so:
Demo
Code
{% highlight html %} {{ sample_code_2 }} {% endhighlight %}


London: Many parents already have concerns, but some may now have a new argument for limiting their children’s ‘screen time’ - addiction to video games has been recognised by World Health Organization as a mental health disorder. The WHO’s International Classification of Diseases (ICD), a reference bible of recognised and diagnosable diseases, describes addiction to digital and video gaming as ‘a pattern of persistent or recurrent gaming behaviour’ that becomes so extensive it ‘takes precedence over other life interests’. The WHO’s expert on mental health and substance abuse, Shekhar Saxena, said some of the worst cases seen in global research were of gamers playing for up to 20 hours a day, forgoing sleep, meals, work or school and other daily activities. He stressed that only a small minority of people who play digital and video games would develop a problem, but said recognition of early warning signs may help prevent it. ‘This is an occasional or transitory behaviour,’ he said, adding that only if such behaviour persists for around a year could a potential diagnosis of a disorder be made. Responding to the decision to including gaming addiction, the Video Games Coalition - an industry lobby group - said their products were ‘enjoyed safely and sensibly by more than 2 billion people worldwide’ across all kinds of genres, devices and platforms. It added that the ‘educational, therapeutic, and recreational value’ of games was well-founded and widely recognised and urged the WHO to reconsider. The ICD, which has been updated over the past 10 years, covers 55,000 injuries, diseases and causes of death. It forms a basis for the WHO and other experts to see and respond to trends in health. ‘It enables us to understand so much about what makes people get sick and die, and to take action to prevent suffering and save lives,’ WHO Director-General Tedros Adhanom Ghebreyesus said in a statement as the ICD was published. The ICD is also used by health insurers whose reimbursements depend on ICD classifications. This latest version - known as ICD-11 - is completely electronic for the first time, in an effort to make it more accessible to doctors and other health workers around the world. ICD-11 also includes changes to sexual health classifications. Previous editions had categorised sexual dysfunction and gender incongruence, for example, under mental health conditions, while in ICD-11 these move to the sexual health section. The latest edition also has a new chapter on traditional medicine. The updated ICD is scheduled to be presented to WHO member states at their annual World Health Assembly in May 2019 for adoption in January 2022, the WHO said in a statement.
Chairman & Managing Director: Alhaj Mohammad Mosaddak Ali BSEC Building (Level-4), 102 Kazi Nazrul Islam Avenue, Karwan Bazar, Dhaka-1215 Telephone: +88 02 9143381-5, Fax: +88 02 9143366-7


Preparation time
less than 30 mins
Cooking time
30 mins to 1 hour
Serves
Serves 2
Fregola, a type of pasta formed into small balls, is a speciality of Sardinia. Here it is cooked with a cornucopia of seafood in a rich sauce.
For the squid, heat a frying pan until medium hot, add the olive and garlic oils, thyme and shallots and cook gently for a couple of minutes until the shallot is soft and golden.
Add the squid and as soon as they start to give off their juices add the white wine. Once the alcohol has evaporated, add the tomato purée and simmer for approximately four minutes until squid is tender. Season to taste with the salt and remove the pan from the heat.
For the fregola, heat a sauté pan until medium hot, add half the olive oil and the garlic, shallots, chilli, thyme and cook gently for one minute.
Add the stewed squid, fregola and stock, bring to a simmer then cook for about 10 minutes, adding extra stock or water if necessary to keep the fregola covered.
Add the clams and the mussels and cook for 2-3 minutes, or until they open, then add the tomato sauce, cherry tomatoes, basil and shrimps.
Heat a separate frying pan until hot, add the remaining oil and fry the red mullet fillets on each side until golden then remove from the pan and set aside.
Return the pan to the heat and fry the scallops for one minute on each side.
To serve, stir half the herbs through the fregola then ladle it into bowls. Place the red mullet and scallops on top of the fregola then scatter over with the remaining herbs.


The cluster configuration service exports and imports configurations created using gfsh
for an entire Apache Geode cluster.
The cluster configuration service saves the cluster configuration as you create regions, disk-stores and other objects using gfsh
commands. You can export this configuration as well as any jar files that contain application files to a zip file and then import this configuration to create a new cluster.
Exporting a Cluster Configuration
Issue the gfsh
export cluster-configuration
command to save the configuration data for your
cluster in a zip file. This zip file contains subdirectories for cluster-level configurations and a
directory for each group specified in the cluster. The contents of these directories are described
in Cluster Configuration Files and Troubleshooting.
To export a cluster configuration, run the gfsh
export cluster-configuration
command while connected to a Geode cluster. For example:
export cluster-configuration --zip-file-name=/home/username/configs/myClusterConfig.zip
See export cluster-configuration.
Note:
gfsh
only saves cluster configuration values for configurations specified using gfsh
. Configurations created by the management API are not saved with the cluster configurations.
Importing a Cluster Configuration
Use the gfsh
import cluster-configuration
command to configure a new cluster based on a configuration exported from another system.
You can import a cluster configuration only into a new cluster, that is, when:
- There are no running cache servers
or
- The only running cache servers meet all of the following criteria:
- Have been recently started
- Have no regions defined in them
- Have been given no other configuration changes since they started
After you have imported the configuration, any servers you start receive this cluster configuration.
To import a cluster configuration, start one or more locators and then run the gfsh
import cluster-configuration
command. For example:
import cluster-configuration --zip-file-name=/home/username/configs/myClusterConfig.zip


--- layout: post title: Mailing List Rants date: 2008-11-24 00:05:00.000000000 +11:00 type: post published: true status: publish categories: [] tags: - foss meta: lj_itemid: '36' lj_permalink: http://jus4kix.livejournal.com/9459.html lj_picture_keyword: southpark me author: login: ajaysusarla email<EMAIL_ADDRESS>display_name: partha first_name: '' last_name: '' ---
<rant>
Each one of us who is subscribed to mailing lists, specially those related to FOSS is quite used to rants. Having ranted on a couple of occasions myself, i don't find most of the rants appalling anymore.
But mails such as this are quite upsetting. They tend to shift the focus from the more important issues at hand.
Everybody is entitled to an opinion. And i do respect everybody's right of speech/thought, after all that is the essence of 'Free'dom, Freedom of expression, in any form. But, i believe, that this 'Freedom' should lead to a constructive/positive outcome at the end of the day. Otherwise it just defeats the whole purpose of a movement rooted in 'Freedom'
The FOSS community in India is relatively a small community, and among us we have so many conflicting opinions. Its not surprising that our Government gets nothing done, since there are so many stake-holders who in trying to express their opinion deviate from the core issues. The people who lose out at the end, are the guys who actually get things done. And such people ultimately get so pissed of with the way things work (or otherwise), they just stop doing whatever good they set out to do. And the world starts to rot even more.
And you will find this happening day-in day-out all around you. Its just like in Ayn Rands' Atlas Shrugged. I wont be surprised if one fine morning if i find those, who slog their lives out for the world to keep ticking, vanish, never to return.
God save us.
</rant>


I help teams put data to use to make decisions and reorganize processes. I've used my data analytics, machine learning, and technical project management skills in a variety of international tech and e-commerce projects over the past 15 years. I like building rapport and being empathetic with my colleagues and clients, and understanding their needs.
I hold a Data Analytics Certification from George Washington University, an active public trust security clearance, and U.S. Citizenship.
Media bias analysis. Building the predictive model of mass media language using NLP (20 million articles).
Tech used: BeautifulSoup, MongoDB, Pymongo, Selenium, Pandas, Pickle, FastAI, Pytorch, Spacy, Scikit-learn.
The Washington Metropolitan Transit Authority (WMATA) provides bus and rail transit to the Washington region. Transporting over 300,000,000 passengers a year WMATA is facing many challenges concerning safety, ridership, and funding. Why Metro ridership is declining? What factors impact Metro performance and does Metro impact other transportation resources? Various regression models comparison.
Tech used: Pandas, Numpy, Seaborn, Matplotlib, Requests
The project retrieves the data from the United States Geological Survey API and visualizes the earthquakes around the world that happened in last 7 days.
Tech used: D3.js, Leaflet.js, Heroku
Universal Service Administrative Company (USAC) E-rate Program Analysis.
Tech used: Sodapy, Socrata, Pandas, Numpy, Matplotlib, Seaborn, Plotly Dash.
Computer Science & Information Technology
Apart from analyzing data I enjoy playing soccer, taking photos and cooking. And skiing, I'm a certified ski instructor