chagers
Procs, Lambdas, Blocks, and a Cooking Robot
Wait... What?
05.17.15
In today's tech blog I will be talking about what procs
, lamdas
and Blocks are, and how they are related with a little help from a cooking robot friend.
First, let's look at what each of these are:
-
Procs
(short for Procedures) are objects. -
Lambdas
are objects. - Blocks are syntax.
Wait, what? I thought everything in Ruby was an object! Nope, not this time. But... by using procs
and lambdas
we can turn code block into an object. Oh clever Ruby.
Next, let's look at what each of these are made of:
-
Procs
take in code block to define what that proc will do when it's called.- So.. Say we had a cooking robot, and all we had to do was give it a recipe and it would know how to execute the dish. Defining a proc would be like saving our favorite recipe for chicken vesuvio in the cooking robot, simply calling out "chicken vesuvio" and cooking robot would know what to start cooking! Yum.
-
Lambdas
exist in theProc
class, and also take code block to define what the lambda will do when it's called.- So.. You're probably thinking, well ok same thing.. Why the different name? We'll look more at that in the following section.
-
Blocks are made up of syntax that tells methods,
procs
,lambdas
, loops, etc. what to do.- If we're still thinking along the lines of our cooking robot example, a block would represent the recipe for chicken vesuvio.
Now, what good are they?
-
As we've already seen above,
procs
and lamdas comprised of code block make excellent shortcuts to running specific tasks - like recipes for the cooking robot. -
But what is the difference between a proc and a lambda? Well this is where it gets a bit trickier:
-
Say we wanted to give our cooking robot a recipe for cinnamon rolls. In this particular recipe, there is a sub-recipe for the rolls themselves, and another for the frosting. What would happen if we created both of these recipes as
procs
? -
Well, if both were
procs
, and we indicated that we wanted to return the results after each sub-recipe was complete to check the progress, we'd get some unintended results. Using return with a proc would mean that the cooking robot would exit the entire recipe at whatever point return was used. Which may very well mean we'd get rolls without frosting! Well, that's no good. How can we fix this? Well, by usinglambdas
, of course (I know that's what you already guessed). - If we were to write the rolls and icing recipes as lamdas, we could use return on those and the cooking robot would return the recipes at that moment in time before it continued on its merry way to finishing the entire cinnamon roll recipe. This would allow us to check in, but would not stop the robot from completing the (very important) tasks at hand.
-
Say we wanted to give our cooking robot a recipe for cinnamon rolls. In this particular recipe, there is a sub-recipe for the rolls themselves, and another for the frosting. What would happen if we created both of these recipes as
In review:
-
Procs
andlambdas
are saved snippets of code block for later use. -
Using return on
procs
means exiting from its code block as well as the method that contains the proc. (Like making cinnamon rolls without frosting.) -
Using return on
lambdas
means exiting from its code block but giving control back to the method to continue execution. (Like pausing to taste the frosting, but continuing on to create the finished product.)
So - there you have it. The classic cooking robot example to give a little bit more insight into the differences between procs
and lambdas
, and how code block relates to (and creates!) them. Now, off to cook up some more code.


> MR DUKAT KABILA 0031+615-421-228 > REQUEST FOR URGENT BUSINESS ASSISTANCE > >Your contact was availed to me by the chamber of commerce. It was given to me because of my diplomatic status as I did not disclose the actual reasons for which I sought your contact. But I was assured That you are reputable and trustworthy if you will be of assistance. I am Laurent DUKAT KABILA (Jnr) the second son of Late President LAURENT DESIRE KABILA the immediate Past president of the DEMOCRATIC REPUBLIC OF CONGO in Africa who was murdered by his opposition through his personal bodyguards in his bedroom on Tuesday 16th >January, 2001.I have the privilege of being mandated by my father colleagues to seek your immediate and urgent co-operation to receive into your bank account the sum of US$25m.(twenty-five million Dollars) and some thousands carats of Diamond. This money and treasures was lodged in a vault with a security firm in Europe and South-Africa. > >SOURCES OF DIAMONDS AND FUND >In August 2000, my father as a defence minister and president has a meeting with his cabinet and armychief about the defence budget for 2000 to 2001 which was US $700m. so he directed one of his best friend. Frederic Kibasa Maliba who was a minister of mines and a political party leader known as the Union Sacree de, I� opposition radicale et ses allies (USORAL) to buy arms with US $200m on 5th January 2001; for him to finalized the arms deal, >my father was murdered. f.K. Maliba (FKM) and I have decided to keep the money with a foreigner after which he will use it to contest for the political election. Inspite of all this we have >resolved to present your or your company for the firm to pay it into your nominated account the above sum and diamonds. This transaction should be finalized within seven (7) working days and for your co-operation and partnership, we have unanimously agreed that you will be entitled to 5.5% of the money when successfully receive it in your account. The nature of your >business is not relevant to the successful execution of this transaction what we require is your total co-operation and commitment to ensure 100% risk-free transaction at both ends and to protect the persons involved in this transaction, strict confidence and utmost secrecy is >required even after the successful conclusion of this transaction. If this proposal is acceptable to you, kindly provide me with your personal telephone and fax through my E-mail box for immediate commencement of the transaction. >All correspondence is for the attention of my counsel: > >I count on your honour to keep my secret, SECRET. >Looking forward for your urgent reply >Thanks . >Best Regards > >DUKAT KABILA(Jnr) >


Zune link: All About PrimordialCode
Born as an experiment here is my ‘egocentric’ application, anything you need to know about me: my blog posts, my tweets, my contacts and other source of information (as soon as I add them) that are part of my lifestream on the web.
Let the Mammoth run wild on your mind!
Some screenshots:
Version history
v 1.0
first public release.
interesting bits: fading effect on ListBox control


WP6: Event-centric cross-lingual analytics and cross-cultural studies.
Objectives:Facilitate analytics of multilingual event-centric information
and cross-cultural studies through leveraging crosslingual
information processing and novel user access methods
UoL
Explore online discussion of the two recent Olympics, which took place on different continents, in different time zones, and in different linguistic contexts.
<EMAIL_ADDRESS>TIB
Develop and research (deep) learning systems that are able to 1.) find the paragraphs and sentences in a text which are relevant to image content, and 2.) predict the granularity and semantic level of text-image relations.
<EMAIL_ADDRESS>JSI
Model the phenomenon of information propagation within the dynamic network of interconnected events. In other words, the objective is to model the characteristics of information spreading once a physical event happens somewhere in the world.
<EMAIL_ADDRESS>UoL
Explore information flows between national media, identify translingual concepts and topics emerging during the elections.
Daniela.major@sas.ac.uk


Hello! I'm Elin del Rosario. I fell in love with building websites back in high school. It was just simple HTML and CSS that caught my attention. Since then, I started to have a passion for web development. Today, I am a developer based from the Philippines. I am more of a backend person but now growing as a full stack one.
Aside from web development, I also have an interest in photography and video editing. I'm currently into film and digital photography. As for video editing, I like to create travel videos.
What I use at work
What I'm currently learning
Other skills


| Name | Description |
|---|---|
|
body
integer
(body)
|
Pet object that needs to be added to the store.
MODEL
APPLICATION/JSON
TEXT/XML
TEXT/HTML
OCTAL/MESSAGEPACK
|
| Code | Description | ||||||
|---|---|---|---|---|---|---|---|
| 200 |
Successful operation
MODEL
APPLICATION/JSON
TEXT/XML
TEXT/HTML
OCTAL/MESSAGEPACK
Headers:
|
||||||
| 400 |
Bad thing happened
|


qooxood mouse events
This logger prints the mouse events as they are fired by the qooxdoo event layer.
Click here (mouse)
(frame)
(innerMouse1)
(innerMouse2)
mousedown
mouseup
click
dblclick
contextmenu
mousemove
mouseover
mouseout
enable event capturing for #mouse


Convert a CSV table into a KML file, compatible with Google Earth. Main class is L{Csv2Kml}. Features are tuned for Digital Populations, but it is otherwise a generic tool. Output is split into small tiles so as to not overwhelm Google Earth.


ECHO is off.
Get current time position
00
Time-50ms
-10ms
+10ms
+50ms
Set time position to 5 seconds
1:VTS_01_0.mp4
2:VTS_01_1 00_00_00-00_07_10.mp4
3:VTS_01_1 00_07_00-00_14_10.mp4
4:VTS_01_1 00_14_00-.mp4
5:VTS_01_2 00_00_00-00_07_10.mp4
6:VTS_01_2 00_07_00-00_14_10.mp4
7:VTS_01_2 00_14_00-.mp4
8:VTS_01_3 00_00_00-00_07_10.mp4
9:VTS_01_3 00_07_00-.mp4
Your browser does not support HTML5 video.


I’m playing bass a lot these days, in venues that differ greatly in size, playing styles of music that also differ equally. Over my time at Uni, my amp setup has changed dramatically. Last year I survived with a Roland Cube 60, a competent guitar amp, but practically useless for bass in a large venue.
Then I brought down my old faithful Ashdown Electric Blue 180 from back home, and found that that too wasn’t enough. So I ditched the Ashdown head and bought an Ampeg Portaflex PF500, which is three times more powerful, smaller, lighter, has more features and is generally better all round the board (it was pricey, mind…). But then I found that the 500W (or rather, 300W at 8 ohms) Ampeg was killing my old Ashdown speaker, a 150W rated Ashdown BlueLine. It was fine at the start of a gig, but 20 minutes in, the overall volume and tone would fall away harshly - presumably because the magnet in the speaker overheated and lost its magnetism from the barrage of power it was receiving. So a new speaker was needed too, a messier operation…
I bought an Eminence Deltalite II 2515, similar to what Ampeg cabs have. I got it on the merit that it was much more powerful than the BlueLine, and also a lot lighter (due to the material the magnet is made from).
Here’s my amp before the fit. I’d already made some modifications in adding some heavy duty wheels (as having to carry the amp as well as my bass and amp head would just be too much after taking it all around Bristol!), and painting the grill white. The cavity where the old amp was had been empty for a long time. The second picture shows the BlueLine.
First it was a matter of getting the old lad out. Simple enough, you just had to unscrew the 8 fittings holding it in. But, the speaker was on a relatively short leash due to the wire connections it had soldered on to it (old school). I cut these about an inch and a half down from the solder connection to leave a small tag for later use if I wanted to use it again.
Then, time to install the new one. Pictured first below is the new speaker by itself, with the more modern connection (where you screw the wires into place instead of having to get the soldering iron out). To get to the second picture, I didn’t have a spare hand to take a photo, but it was a matter of stripping about 1cm of insulation from the old wires, twisting the ends, putting them into the holes in the screw-connectors, and tightening it up.
When screwing the new one in, I made sure to be careful with the screwdriver - slipping and putting it through the cone would not have been good for its health :)
That was it! My first speaker installation was relatively painless, and yielded great results. The new speaker has a far greater range, and can deliver bass so low I could leave my bass plugged into it on top of the washing machine during a fast cycle and get a cracking dubstep bassline out of it. Now the only thing “Ashdown” about it is the logo on the grill.
Probably just as well, since I was gigging with it that night. Having to wheel it across bumpy Bristol and using it in a pretty large art gallery was a decent road test, and it survived!


Kim Jae Hwan sings 'If I Was' in live video for 'Vagabond' OST
by germainejKim Jae Hwan is the voice behind "If I Was" for the 'Vagabond' OST.
"If I Was" is about wishing and hoping things had been different between you and a special someone. In the live video above, Kim Jae Hwan's emotional vocals express the feelings between Cha Dal Gun (played by Lee Seung Gi) and Go Hae Ri (Suzy).
Check out Kim Jae Hwan's "If I Was" live video above!


Tutorial
Please read the documentation below in order to use the app efficiently.
Getting started
If yiu don't have admin privilages you can only vote and then check your vote. You are not required to login.
Voting
In order to take part in the voting proccess you only need to know your personal user id. Click the Start Voting button, provide your user id and the candidate id you want to vote for. Note that both your user id and the candidate id is just a number, so any other character will not be accepted and you will receive an error. Finally, each user is able to vote ony once. If you try to vote twice you will also receive an error.
Vote checking
You can check your vote anytime. Just click the Check Vote button and provide your user id.
Administrators
If you are an administrator you are able to see the whole blockchain.


Sort By
Most Listens
Highest Grossing
Updated Recently
Price: Low to High
Price: High to Low
Title: A to Z
Title: Z to A
{{podcast.title}}


Mumbai, also known as Bombay, is the capital city of the Indian state of Maharashtra. It is the most populous city in India and the ninth most populous agglomeration in the world, with an estimated city population of 18.4 million.Mumbai lies on the west coast of India and has a deep natural harbour. In 2008, Mumbai was named an alpha world city. It is also the wealthiest city in India.
Water Kingdom is Asia's largest theme based water park. The Island of Fun is located on the coast of Mumbai, a scenic setting injected with thrill & entertainment.It is a family-friendly water park featuring high-speed slides, wave pools, lazy river & kiddie attractions. Water Kingdom delivers unlimited fun with various attractions for kids as well as for senior citizens. Experience the ultimate thrill with “Wetlantic” and get drenched at “Bratzone”- the rain dance zone!
Adlabs Imagica is a 300-acre theme park in Khopoli, India. It is owned by Adlabs Entertainment Ltd. The park has an estimated daily capacity of 15,000 visitors.To date, the park has hosted over 3.5 million visitors They have different rides for different age groups. Guests can bump into the in-house characters of Tubbby – The Elephant, Roberto – The Star Chef, The Lost Astronaut, Mogambo of Mr. India fame and The Gingerbread Man while hopping from one ride to another.
EsselWorld is an amusement park located in Gorai, Mumbai and established in 1989.EsselWorld is home to a variety of rides appropriate for individuals of all ages. It boasts of fourteen family rides, eleven adrenaline-pumping thrill rides and fifteen children's rides. Apart from the conventional features of a theme park such as rollercoasters and rides, EsselWorld is also host to Mumbai's first ice skating rink, spanning 3400 square feet.
Have you ever seen or felt snow? In Mumbai? Well, now you can!!! Snow World is Mumbai’s first ever snow-theme park, designed to International standards. Snow World’s temperature is maintained at -10˚C and has plenty of Snow Sport and Adventure activities that would send a chill down your spine and make your hair stand at ends-not because of the cold but because of the thrill we provide.So, why don’t you come down, get your family and friends along.
Tikuji-Ni-Wadi is an amusement park, water park, and a resort near Mumbai and at Thane. It is located at about 15 kilometres (9.3 mi) from Mumbai.The Water Park has pools and water slides. The amusement park includes go-karts, roller coasters, giant wheels and water park.[3] Additionally, there is a Shiva temple and marriage halls as a part of the resort. During Shivaratri, they make Shiva replica out of ice.The park remains open during the rainy season.
Created by Rogin Koshy


Home
Operation Education — Providing the Opportunity for a College Degree
Operation Education at the University of California, Riverside, provides assistance to United States military veterans who have sustained a severe and permanent injury while serving our nation since September 11, 2001. Recipients must meet the requirement of the University of California, Riverside for admission as a degree-seeking student.
Based on a successful program created by Dr. Karen White at the University of Idaho in 2006, Operation Education seeks to support those who have bravely served us by providing them with the means to pursue a college degree and start the next phase of their lives.
Support Operation Education
Making a donation to Operation Education is a great way for civilians to honor the service and sacrifices of U.S. military veterans and their families.
Learn how you can make a difference.
Apply for the Operation Education Scholarship
The Operation Education program is open to eligible veterans.
Learn more about eligibility requirements and how to apply.
What Does Operation Education Provide? |
||
Academic SupportServices provided to students may include:
The program also offers assistance through mentoring, internships and job placement services. |
Financial SupportOperation Education provides scholarship assistance to students. This financial assistance may include:
|
Home and Social SupportOperation Education may include additional support outside of the classroom, such as:
|


An entrepreneurial-minded executive with 15 years of forward facing industry expertise. Served on teams of numerous companies in both domestic and international marketplaces. Facilitator of world-class technology through product management. Specializing in both startups and growth-stage businesses. Proven fundraiser with solid networking skills. Demonstrated ability to build strong partnerships with a range of clients. Undeniable track record of success, having served in operational roles on the founding teams of two separate startups of which both achieved, and realized multi-billion-dollar valuations. Currently on a mission to help others in expanding their carrer potential, while remaining creative and utilizing technical expertise skills. Feel free to contact me via LinkedIn.
Creation of trade school for software engineering, offering project-based, peer-learning, applicable hands-on training.
Leadership for early-stage start-up team focused on voice-controlled guest engagement management for hotels.
Spearheaded operations from startup to launch, creating one of the world’s most popular mobile messaging platforms.
Served as the point person for international business activities outside of Eastern Europe. Directly reported to the COO, CFO and CEO for functional needs. USA based representative to Europes largest social media platform.
Business consulting, serving as lead to deliver US market feasibility. Focus on brand adoption and business growth.
Civil Engineer and Project Manager for large land development firm, servicing sections of North-East United States.
Proprietor of successful family run gastropub in the hamlet of East Aurora, NY. In operation for 30+ years.
GPA: 3.31
GPA: 95.7%
By far, the activities that take up the majority of my free time are family oriented.  I am focused and dedicated to being an actively engaged father and raising my children in a morally strong and loving home.
Our main hobby as a family is to travel. We crave the opportunity to explore the world with our children. It is our belief that intangible experiences are significantly more valuable to the development of oneself than tangible items. Therefore, we strive to instill in our children the belief that collecting experiences and memories will always be better than receiving commercial goods.


# File test/minitest/test_minitest_reporter.rb, line 13 def error_test unless defined? @et then @et = Minitest::Test.new(:woot) @et.failures << Minitest::UnexpectedError.new(begin raise "no" rescue => e e end) end @et end
# File test/minitest/test_minitest_reporter.rb, line 25 def fail_test unless defined? @ft then @ft = Minitest::Test.new(:woot) @ft.failures << begin raise Minitest::Assertion, "boo" rescue Minitest::Assertion => e e end end @ft end
# File test/minitest/test_minitest_reporter.rb, line 115 def normalize_output output output.sub!(/Finished in .*/, "Finished in 0.00") output.sub!(/Loaded suite .*/, 'Loaded suite blah') output.gsub!(/ = \d+.\d\d s = /, ' = 0.00 s = ') output.gsub!(/0x[A-Fa-f0-9]+/, '0xXXX') output.gsub!(/ +$/, '') if windows? then output.gsub!(/\[(?:[A-Za-z]:)?[^\]:]+:\d+\]/, '[FILE:LINE]') output.gsub!(/^(\s+)(?:[A-Za-z]:)?[^:]+:\d+:in/, '\1FILE:LINE:in') else output.gsub!(/\[[^\]:]+:\d+\]/, '[FILE:LINE]') output.gsub!(/^(\s+)[^:]+:\d+:in/, '\1FILE:LINE:in') end output end
# File test/minitest/test_minitest_reporter.rb, line 37 def passing_test @pt ||= Minitest::Test.new(:woot) end
# File test/minitest/test_minitest_reporter.rb, line 8 def setup self.io = StringIO.new("") self.r = Minitest::Reporter.new io end
# File test/minitest/test_minitest_reporter.rb, line 41 def skip_test unless defined? @st then @st = Minitest::Test.new(:woot) @st.failures << Minitest::Skip.new end @st end
# File test/minitest/test_minitest_reporter.rb, line 49 def test_passed_eh_empty assert r.passed? end
# File test/minitest/test_minitest_reporter.rb, line 59 def test_passed_eh_error r.results << error_test refute r.passed? end
# File test/minitest/test_minitest_reporter.rb, line 53 def test_passed_eh_failure r.results << fail_test refute r.passed? end
# File test/minitest/test_minitest_reporter.rb, line 65 def test_passed_eh_skipped r.results << skip_test assert r.passed? end
# File test/minitest/test_minitest_reporter.rb, line 97 def test_record_error r.record error_test assert_equal "E", io.string assert_equal [error_test], r.results assert_equal 1, r.count assert_equal 0, r.assertions end
# File test/minitest/test_minitest_reporter.rb, line 88 def test_record_fail r.record fail_test assert_equal "F", io.string assert_equal [fail_test], r.results assert_equal 1, r.count assert_equal 0, r.assertions end
# File test/minitest/test_minitest_reporter.rb, line 79 def test_record_pass r.record passing_test assert_equal ".", io.string assert_empty r.results assert_equal 1, r.count assert_equal 0, r.assertions end
# File test/minitest/test_minitest_reporter.rb, line 106 def test_record_skip r.record skip_test assert_equal "S", io.string assert_equal [skip_test], r.results assert_equal 1, r.count assert_equal 0, r.assertions end
# File test/minitest/test_minitest_reporter.rb, line 134 def test_report_empty r.start r.report exp = clean Run options: # Running: Finished in 0.00 0 runs, 0 assertions, 0 failures, 0 errors, 0 skips assert_equal exp, normalize_output(io.string) end
# File test/minitest/test_minitest_reporter.rb, line 200 def test_report_error r.start r.record error_test r.report exp = clean Run options: # Running: E Finished in 0.00 1) Error: Minitest::Test#woot: RuntimeError: no FILE:LINE:in `error_test' FILE:LINE:in `test_report_error' 1 runs, 0 assertions, 0 failures, 1 errors, 0 skips assert_equal exp, normalize_output(io.string) end
# File test/minitest/test_minitest_reporter.rb, line 175 def test_report_failure r.start r.record fail_test r.report exp = clean Run options: # Running: F Finished in 0.00 1) Failure: Minitest::Test#woot [FILE:LINE]: boo 1 runs, 0 assertions, 1 failures, 0 errors, 0 skips assert_equal exp, normalize_output(io.string) end
# File test/minitest/test_minitest_reporter.rb, line 154 def test_report_passing r.start r.record passing_test r.report exp = clean Run options: # Running: . Finished in 0.00 1 runs, 0 assertions, 0 failures, 0 errors, 0 skips assert_equal exp, normalize_output(io.string) end
# File test/minitest/test_minitest_reporter.rb, line 226 def test_report_skipped r.start r.record skip_test r.report exp = clean Run options: # Running: S Finished in 0.00 1 runs, 0 assertions, 0 failures, 0 errors, 1 skips assert_equal exp, normalize_output(io.string) end
Generated with the Darkfish Rdoc Generator 2.


For immediate release
|
The Federal Open Market Committee decided today to keep its target for the federal funds rate unchanged at 1 3/4 percent. The softening in the growth of aggregate demand that emerged this spring has been prolonged in large measure by weakness in financial markets and heightened uncertainty related to problems in corporate reporting and governance. The current accommodative stance of monetary policy, coupled with still-robust underlying growth in productivity, should be sufficient to foster an improving business climate over time. Nonetheless, the Committee recognizes that, for the foreseeable future, against the background of its long run goals of price stability and sustainable economic growth and of the information currently available, the risks are weighted mainly toward conditions that may generate economic weakness. Voting for the FOMC monetary policy action were Alan Greenspan, Chairman; William J. McDonough, Vice Chairman; Ben S. Bernanke, Susan S. Bies; Roger W. Ferguson, Jr.; Edward M. Gramlich; Jerry L. Jordan; Donald L. Kohn, Robert D. McTeer, Jr.; Mark W. Olson; Anthony M. Santomero, and Gary H. Stern. Home | News and events Accessibility Last update: August 13, 2002 |


Jack Clancy Consulting was founded in 2008. Our Headquaters is in Cork where we employ 40 people. For more information on our services contact<PHONE_NUMBER> or info@jconsuling.com.


Fixed a bug with autocomplete where the popup box would not be filled correctly after executing a command.
Fixed a bug where the command bar would not be relieved of the keyboard focus when opening any kind of dialog box via a command.
Fixed a possible crash when opening a dialog box.
DPI fixes and improvements.
(Windows) Changes to DPI scaling settings are now automatically applied to dred dynamically at run-time:
The "ui-scale" setting is now applied immediately without the need for a restart. This setting stacks with the system DPI setting.
... and much more!
Windows Only
Linux and GTK Only
Source Code Improvements
Improved the font scaling system. The new system removes the old acquire/unacquire system for sub-fonts and replace it with a system
where each of the relevant font and text painting APIs take a scale. The handling of font scaling is now done internally by DTK rather
than by dred. The advantage to this new system is that it greatly simplifies font management.


Kirwan Ltd is a leading professional services firm specialising in consultancy in technology and leading in research about up and coming technological advances.
Based in Waterford, Cork and Dublin, Kirwan Ltd is part of an integrated partnership.
| Address | Phone | |
|---|---|---|
| Kirwan Ltd, |<EMAIL_ADDRESS>| 021-****** |
| Fake S***** | ||
| Fake T*** | ||
| Co.W**** |


{% extends 'base.html' %} {% block content %}
{% if request.user.is_authenticated %} Welcome back, {{ request.user.first_name }}. Please enjoy your tool-sharing experience! {% else %} Toolshare is a website that allows you to create communities for the sharing of tools. Get started now by registering an account or a sharezone. {% endif %}
| Number of Sharezones: | {{sharezone_count}} |
| Number of Users: | {{user_count}} |
| Number of Tools: | {{tool_count}} |
| Number of Rentals: | {{rental_count}} |
| Most Popular ToolGroup: | {{most_popular_group}} |
| {{sharezone.0.name}} | Population: {{sharezone.1}} |
| {{group}}: | {% if group.get_average_tool_quality == None %} - {% else %} {{group.get_average_tool_quality}}/5.0 {% endif %} |


Get to know us more
1. What is the purpose of this platform?
Currently this platform serves as a means for show off or flexxing that crypto muscle.
In the crypto world, holders need a safe and fun way to show off their digital assets.
What's the point of being crypto-informed; crypto rich and can't show it off?
2. What is the profile holder?
There is only one profile holder at a time. The profile holder is the person who deposits
the most Binance Coin (BNB). The profile holder can then update the status. The status is a 300 characters maximum
paragraph. This will always be displayed on the profile holder section. The period a
person holds as the profile holder decreases the period required to join the 100 Members club.
Remember once a person joins the club, the period required is increased.
Imagine depositing 100 BNB (refundable) just to post: "Follow me on twitter @cryptoflexclub", now that's a FLEXXX!
3. The Refunds
The platform only charges a fee when you become the profile holder. All other services are free. The fee is
indicated in the Club Information Section. All deposits are refunded and can be seen in the My Account Info as
pending Refunds. If you are the current profile holder, you must step down first before withdrawing your deposit.
4. What happens when the current profile holder steps down?
The profile holder is refunded. The current Stake required to be a profile holder is reset to the minimum. The status
is updated to the default Status. The default status is set by the dev team. This provides a good opportunity for a
new profile holder. Remember, your active profile period is updated after you are dethroned or you step down.
5. Are my funds safe?
The funds are secured and protected by the smart contract. The dev team cannot access user deposits but only the
fees collected. All deposits are also refunded and can be withdrawn anytime. The deposited funds never leave the
smart contract.
6. I am not convinced
To provide more confidence to our users, we used a simple and readable smart contract language. Our smart contract is
only 450 lines of code long, well documented and written in python. Anyone with basic programming skills can audit the
smart contract and publicly air their opinions. The dev team behind the project is composed of 5 experienced python software
engineers.
7. Getting Started
Connect your wallet. MetaMask is recommended for a smooth user experience. Once you connect your MetaMask, the following sections
will now be accessible. The profile holder section, my account info section, club info section and tools sections. Your journey begins
by becoming the profile holder. Just click update status and enter your own status, the amount in ETH to deposit. Remember, the amount
plus network fees will be deducted from your account. Confirm transaction with your wallet and voila! New profile holder in town!
8. What if this website is down?
The smart contract can still be accessed via Etherscan, Remix IDE and even through your local machine, just download the webpage
from our github and host it locally. The only thing required is the contract address. The dev team is always ready to help.
9. Is the team anonymous?
Due to current contracts with some of the leading DeFi projects, we cannot reveal our identities yet. Still need that bread!
However, if there is need for the team to reveal itself, the club members will be first ones to meet us.
The team will not be liable to the content posted on the status. You know people be wilding out in this industry.
10. More about the required profile active period
Joining the 100 members exclusive club is not easy. It requires your profile to be active for a set duration. The required time is
shown in the club information section. The active profile period is cumulative, it is added every second your profile is active.
The time remaining before you can join the club is indicated in my account info section. Remember, once a member joins the club,
the required period is increased. For example, if member number 1 joins the club after 1,000 active profile seconds, the second
member might require 2,000 active profile seconds. The active profile duration is cumulative and not a one long continous duration.
11. The Tools?
The platform provides tools to access services offered by the platform. You can update your status, withdraw your pending refunds,
step down as the current holder, join the crypto flex club and check whether an account belongs to a club member or not. More tools
can be provided upon request by the crypto flex club community.
12. Connect with us
Check the contact section for ways of reaching us. We are on twitter, telegram and email. We are always excited to hear from you.


[Erowid Note: 23 grams of oral Cannabis is considered an extremely high dose, and may cause very difficult experiences and/or illness]
College was definately a time for me to experiment with a large assortment of drugs. This particular experience is one that will more than likely stick with me for the rest of my life.
It was a typical day for me living in a college residence. I awoke at 9:30am and proceeded outside to enjoy a joint of approximately 1 gram of weed; which was a daily ritual. Upon returning to my dorm, I realised that I had no more dope for the day! No problem...a phone call, a trip to the ATM, and an hour later, I was back in business with an ounce of some nice medium-high grade bud.
It was around 11am and I was in a strange mood. I was in the mood to do something really extreme. Then I got an idea. I called up my friend who lived down the hall from me, let's call him Mike (for the sake of making this story easier to follow), and the two of us went to the nearest grocery store. Once there, we headed striaght for the baking aisle and began to look around for the best candidate to assist our baking desires. The selection was limited, but we managed to find a half decent box of brownie mix that also included icing. We then picked up some eggs, milk, and butter, then headed on our way.
After we had returned to residence, we read the directions on the box carefully and discovered that you could add more flour to the mix to make a larger batch. All you had to do was add more eggs and butter in certain purportions in order to keep the right consistancy. Then, a problem occured to us; we can't cook them in residence or the whole place is going to reak of dope. So we went for another short walk across the street, this time we headed over to a friends appartment. We were just about to walk into the building when we ran into him outside. Let's call him John.
I explained to John what Mike and I were intending on doing and he was completely psyched about it. Although I had yet to tell him how much we intended on putting in the brownies. As it turns out, he was having one of the worst days of his life and this was just what he needed.
When we got into his appartment, I told him that I had an ounce to make these brownies with. He was a little surprised, but then he started thinking. He told us to wait where we were and he'd be right back. At this point Mike had to leave for class, so he bailed. Shortly after, John returned and told me that he would pitch in an ounce as well! That's 2 ounces! It was about 4pm by the time we started cooking.
To prepare them, all we did is put all the pot into a coffee grinder and grind it up until it was a very fine powder. Then mixed all of it (and the crystal that was in the grinder) into the brownie mix. Of course, we added the right amount of extra butter, eggs, and milk to the mix so that the brownies wouldn't be too dry. We ended up making 2 trays of brownies. These were completely done and ready to eat by 5:30pm. Before we started eating, we each grabbed a quarter ounce of dope to smoke while we were eating. We were reading to start eating at 6pm.
We cut each tray of brownies into approximately 30 small pieces. We each saved 5 pieces to give our friends, and then proceeded to eat once piece every five minutes. We finished eating the brownies by 8:45pm. We would take occassional brakes to smoke a few bowls from his glass bong.
At about 7:30, I was dying for a smoke, so i stood up to go outside and have a cig. Until this point, I hadn't really paid any attention to how the brownies were affecting me.
Once I stood up, I was completely floored by the feeling that overcame me. I was very light-headed and everything around me seemed very interesting. As I walked outside, I felt as if my movements were very fluid like. Once outside, I looked up at the stars and I felt as if I were falling into the sky. I lit my cigarette, and from the first puff until the last it tasted absolutely amazing. I felt extremely relaxed, but I wasn't tired or burnt out. I then went back inside and we finished off the brownies.
After all the brownies were gone and had fully kicked in we sat and chilled for a while. All sense of time was completely gone. I can try to explain the feeling I got from this, but I honestly don't think there are any words to describe it. I was extremely euphoric. The world outside seemed like an amazing place in which anything and everything was possible. Everything had a very positive vibe to it. Everything was very relaxed and fluid. It was unbelievable. It was extremely intense, but it never felt so intense that it wasn't enjoyable.
Like I said, I can't even begin to accurately describe the feeling I got from these brownies. One has to be willing to spend a couple hundred dollars or so on a single experience. But I plan on doing it again once I have the spare cash. Nothing compares to it.
Oh yeah, one last thing. I went to bed that night at around 1am. When I woke up at 9:30am, I was still VERY high. I felt fairly sketched out for the rest of the day, but i was still high for a few hours after I woke up. Anyways, long story, I know, but I wish everyone could experience what I did. I would have loved to get into more details about all the other cool things that happend that night, but this is pretty lengthy as it is!
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.


1.mp3
2.mp3
3.mp3
4.mp3
Play
Pause
Stop
No song selected
Your browser does not support HTML5
audio
tags.
Advanced Version


Prerequisites to download ERA5 data through CDS API¶
1 - Install the CDS API and xarray packages¶
In Anaconda Prompt execute the following commands:
conda config --add channels conda-forge conda install cdsapi conda install xarray dask netCDF4 bottleneck
2 - Install the CDS API key¶
Log in CDS (https://cds.climate.copernicus.eu/user/login)
Go to https://ads.atmosphere.copernicus.eu/api-how-to and create a file “.cdsapirc” using the two lines of code displayed in the webpage. The file should be located in C:/Users/username/ for example in “C:/Users/rui”.
Note
in non english systems the folder name can be displayed in a diferent way (see figure)


Copyright © 2017,2019,2020 the Contributors to the WADG0001/Jul2020 report, published by the W3 WebAPI Discovery Community Group under the W3C Community Contributor License Agreement (CLA). A human-readable summary is available.
This draft report is the work of the W3 WebAPI Discovery Community Group
This report was published by the W3 WebAPI Discovery Community Group. It is not a W3C Standard nor is it on the W3C Standards Track. Please note that under the W3C Community Contributor License Agreement (CLA) there is a limited opt-out and other conditions apply. Learn more about W3C Community and Business Groups.
This extension has been created based on real-world use of metadata in the [OpenAPI], [RAML], [API-Blueprint], [JSON-home] and [apis.json] specifications.
1. Definitions
Machine-readable API Definition a structured document defining the inputs and outputs of an API in a standardised format, primarily designed for automated processing, not human consumption.
2. Scope
This specification does not attempt to replace existing formats of describing an API, such as [OpenAPI], [RAML], [API-Blueprint], [JSON-home] and [apis.json], but rather seeks to describe metadata about an API that will be useful to those who are discovering it.
3. Proposed extension
Schema.org’s Dataset vocabulary was originally based on DCAT, which in turn used Dublin Core and FOAF terms. DCAT Version 2 is now current, and is therefore used within this draft.
The base schema.org WebAPI type, for example:
{ "@context" : "http://schema.org/" , "@type" : "WebAPI" , "name" : "Google Knowledge Graph Search API" , "description" : "The Knowledge Graph Search API lets you find entities in the Google Knowledge Graph. The API uses standard schema.org types and is compliant with the JSON-LD specification." , "documentation" : "https://developers.google.com/knowledge-graph/" , "termsOfService" : "https://developers.google.com/knowledge-graph/terms" , "provider" : { "@type" : "Organization" , "name" : "Google Inc." } }
is to be extended by several properties.
These properties are defined within the following list of modular proposals for schema.org. The modularity ensures that adoption can progress pragmatically, and not be blocked by a lack of consensus on all properties.
3.1. New property endpointUrl
3.1.1. Proposal
| Property | Domain | Range | Description |
|---|---|---|---|
endpointUrl
| schema:WebAPI
| schema:URL , schema:EntryPoint
| The root location or primary endpoint of the API. |
3.1.2. Examples
Simple usage:
"endpointUrl" :"https://kgsearch.googleapis.com/" ,
Advanced usage:
"endpointUrl" :[ { "@type" : "EntryPoint" , "name" : "Production server (uses live data)" , "url" : "https://api.example.com/v1" , "contentType" : "application/json" }, { "@type" : "EntryPoint" , "name" : "Sandbox server (uses test data)" , "url" : "https://sandbox-api.example.com:8443/v1" , "contentType" : "application/json" } ] ,
3.1.3. Notes
This proposal brings the property above directly from DCAT v2. The DCAT v2 to schema.org mapping overloads the schema:url
property for both dcat:endpointURL
and dcat:landingPage
. Given the nature of endpointUrl
being the base URL of an API (rather than a web page URL, which is likely the most useful to a web-crawler), a specific property has been defined.
To be consistent with the current inclusion of schema:CreativeWork
in the range of schema:documentation
, schema:EntryPoint
could also be included here for cases where a richer description of the endpoint is required. For example, to differentiate between different environments.
3.2. Update description for documentation
property
3.2.1. Proposal
The description of the schema:documentation
property is updated to:
Human-readable documentation of the services available via the
WebAPI
, including their operations, parameters etc.
endpointDescription
should be used for machine-readable documentation.
3.2.2. Notes
This proposal makes it clear that the schema:documentation
property describes the services available via the WebAPI
in a human-readable format, bringing it partly in line with the DCAT v2 to schema.org mapping that recommends the schema:documentation
property for both human-readable documentation and machine-readable API definitions. A proposal for a separate endpointDescription
property reserved for machine-readable API definitions can be found below.
An alternative that was considered was to use schema:documentation
for both human-readable documentation and machine-readable API definitions, bringing it fully in line with DCAT v2, and the DCAT v2 to schema.org mapping. Such an approach was discounted as it would have necessitated the use of "whitelists" of human- and machine-readable encodingFormat
s by data consumers to distinguish between them, which would have entailed unnecessary complexity and maintenance.
3.3. New property endpointDescription
3.3.1. Proposal
| Property | Domain | Range | Description |
|---|---|---|---|
endpointDescription
| schema:WebAPI
| schema:CreativeWork
|
Machine-readable API definition of the services available via the Machine-readable formats include OpenAPI (Swagger) description, an OGC GetCapabilities response WFS, ISO-19142, WMS, ISO-19128, a SPARQL Service Description, an OpenSearch or WSDL20 document, or a Hydra API description. The The |
3.3.2. Examples
"endpointDescription" :[ { "@type" : "CreativeWork" , "encodingFormat" : "application/json" , "url" : "https://kgsearch.googleapis.com/$discovery/rest?version=v1" }, { "@type" : "CreativeWork" , "encodingFormat" : "application/vnd.oai.openapi+json;version=3.0" , "url" : "https://api.apis.guru/v2/specs/googleapis.com/kgsearch/v1/openapi.json" } ] ,
3.3.3. Notes
This proposal brings the property above directly from DCAT v2, using schema:CreativeWork
to be consistent with the range of schema:documentation
.
The DCAT v2 to schema.org mapping uses the schema:documentation
property for both human- and machine-readable documentation, however in order to create an explicit separation between human-readable documentation
and machine-readable endpointDescription
, a specific property has been defined.
3.4. New property conformsTo
3.4.1. Proposal
| Property | Domain | Range | Description |
|---|---|---|---|
conformsTo
| schema:WebAPI
| schema:URL
| The URL reference of an established standard to which the described API conforms, for example https://jsonapi.org/format/1.0/ , https://grpc.io/ , or http://www.hydra-cg.com/spec/latest/core/ .
|
3.4.2. Example
"conformsTo" :[ "https://jsonapi.org/format/1.0/" ] ,
3.4.3. Notes
This proposal brings the property directly from DCAT v2.
The DCAT v2 to schema.org mapping does not include conformsTo
. The mapping gap was recognised in previous mapping attempts and not addressed within DCAT v2 discussions.
3.5. New property accessService
3.5.1. Proposal
| Property | Domain | Range | Description |
|---|---|---|---|
accessService
| schema:Dataset , schema:DataDownload
| schema:WebAPI
| An API that provides access to the dataset |
3.5.2. Example
{"@context" :"http://schema.org/" ,"@type" :"Dataset" ,... "accessService" : {"@type" :"WebAPI" ,... } }
3.5.3. Notes
The DCAT v2 to schema.org mapping proposes the use of schema:serviceOutput
within schema:WebAPI
to reference the schema:Dataset
. For the inverse, this proposal uses a term from DCAT v2 to reference schema:WebAPI
from schema:Dataset
:
The DCAT v2 term dcat:accessService
links a dcat:Distribution
(akin to schema:DataDownload
) to the dcat:DataService
, however given that a schema:WebAPI
may allow read/write access to a schema:Dataset
, it is not necessarily limited to only a single schema:DataDownload
, and may in fact cover an entire schema:Dataset
.
The DCAT v2 to schema.org mapping does not include accessService
.
3.6. Add WebAPI
to domain of version
3.6.1. Proposal
Add schema:WebAPI
to the domain of schema:version
, to describe the version of the API.
3.6.2. Example
"version" :"1.0.0" ,
3.6.3. Notes
This is the version of the API itself, and hence schema:softwareVersion
, schema:assemblyVersion
, and schemaVersion
are not appropriate.
3.7. New property apiTransport
3.7.1. Proposal
| Property | Domain | Range | Description |
|---|---|---|---|
apiTransport
| schema:WebAPI
| schema:Text
| The type of transport used for the API, such as HTTP, HTTPS, SMTP, MQTT, WS, WSS |
3.7.2. Example
"apiTransport" :[ "HTTP" , "HTTPS" ] ,
3.7.3. Notes
Given the widely recognised acronyms in use for modes of API transport, there is no need to reference an explicit controlled vocabulary.
3.8. Add WebAPI
to domain of license
3.8.1. Proposal
Add schema:WebAPI
to the domain of schema:license
, to describe the license for the design/signature of the API.
3.8.2. Example
"license" :"https://creativecommons.org/licenses/by/3.0/" ,
3.9. Add url
to the WebAPI
example
3.9.1. Proposal
Include the following in the documentation of schema:WebAPI
:
The
url
property indicates a landing page for the API, which is a Web page that can be navigated to in a Web browser to gain access to the API and/or additional information.
Add the following to the examples to the https://schema.org/WebAPI page:
"url" :"https://developers.google.com/knowledge-graph/" ,"documentation" :"https://developers.google.com/knowledge-graph/reference/rest/v1" ,
3.9.2. Notes
The DCAT v2 to schema.org mapping overloads the schema:url
property for both dcat:endpointURL
and dcat:landingPage
. Hence url
should be used for the landing page of the API (e.g. https://azure.microsoft.com/en-gb/services/cdn/) rather than the documentation (e.g. https://docs.microsoft.com/en-gb/azure/cdn/).
4. Suggested values
This section is non-normative, and these values are outside the scope of schema.org. They serve as an illustration of suggested usage.
4.1. encodingFormat
values
When encodingFormat
is used to specify the API description format used, and where an IANA-registered media type is not available, the following widely recognised non-IANA media types may be used:
| Format | Media type |
|---|---|
| OpenAPI / Swagger in YAML | application/vnd.oai.openapi
|
| OpenAPI / Swagger in JSON | application/vnd.oai.openapi+json
|
| RAML | application/raml+yaml
|
| API Blueprint in markdown | text/vnd.apiblueprint
|
| API Blueprint parsed in YAML | application/vnd.refract.parse-result+yaml
|
| API Blueprint parsed in JSON | application/vnd.refract.parse-result+json
|
Media types may include a ;version
parameter where appropriate.
Other media types such as application/ld+json, application/json, text/markdown, etc. may be used, with decreasing levels of machine-readability.
4.2. Action
name
values
A number of Action
names are suggested for use with potentialAction
of WebAPI
, though this list is not exhaustive:
| Name | Description |
|---|---|
API Authentication
| Links to a resource detailing authentication requirements. Note this is a human-readable resource, not an authentication endpoint |
API Client Registration
| Links to a resource where a client may register to use the API |
API Console
| Links to an interactive console where API calls may be tested |
API Payment
| Links to a resource detailing pricing details of the API |
API SLA
| Links to a resource detailing the Service Level Agreement relating to the API. This may be machine- or human-readable. |
API Support
| Links to a resource where a client may obtain support for the API |
5. Full example
A fuller example of a WebAPI
annotation, including the proposed properties.
{ "@context" : "http://schema.org/" , "@type" : "WebAPI" , "name" : "Google Knowledge Graph Search API" , "description" : "The Knowledge Graph Search API lets you find entities in the Google Knowledge Graph. The API uses standard schema.org types and is compliant with the JSON-LD specification." , "documentation" : "https://developers.google.com/knowledge-graph/reference/rest/v1" , "endpointDescription" : [ { "@type" : "CreativeWork" , "encodingFormat" : "application/json" , "url" : "https://kgsearch.googleapis.com/$discovery/rest?version=v1" }, { "@type" : "CreativeWork" , "encodingFormat" : "application/vnd.oai.openapi+json;version=3.0" , "url" : "https://api.apis.guru/v2/specs/googleapis.com/kgsearch/v1/openapi.json" } ], "url" : "https://developers.google.com/knowledge-graph/" , "termsOfService" : "https://developers.google.com/knowledge-graph/terms" , "logo" : "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png" , "license" : "https://creativecommons.org/licenses/by/3.0/" , "provider" : { "@type" : "Organization" , "name" : "Google Inc." , "contactPoint" : [ { "@type" : "ContactPoint" , "name" : "Google" , "url" : "https://google.com" } ], }, "version" : "1.0.0" , "endpointUrl" : [ { "@type" : "EntryPoint" , "name" : "Production (uses live data)" , "url" : "https://kgsearch.googleapis.com/" , "contentType" : "application/json" }, { "@type" : "EntryPoint" , "name" : "Sandbox (uses test data)" , "url" : "https://sandbox.kgsearch.googleapis.com/" , "contentType" : "application/json" } ], "apiTransport" : [ "HTTP" , "HTTPS" ], "conformsTo" : [ "https://jsonapi.org/format/1.0/" ], "potentialAction" : [ { "@type" : "ConsumeAction" , "name" : "API Client Registration" , "target" : "https://developers.google.com/knowledge-graph/how-tos/authorizing" } ] }


public class SimCamera extends FlyCamera
| Modifier and Type | Field and Description |
|---|---|
private static int |
CamHi |
private static int |
CamWi |
private static boolean |
NoisyFaker |
private static int |
SimTile |
TrakSim |
theSim |
| Constructor and Description |
|---|
SimCamera() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
Connect(int frameRate)
Start a new (fake) camera session with the specified frame rate.
|
void |
Finish()
Terminate the (fake) camera session.
|
boolean |
Live()
Tells if this camera is live or fake.
|
boolean |
NextFrame(byte[] pixels)
Gets one frame from the (fake) camera by fetching it from TrakSim.
|
java.lang.String |
toString() |
Dimz, ErrorNumberText, main, PixTile
private static final int SimTile
private static final int CamHi
private static final int CamWi
private static final boolean NoisyFaker
public TrakSim theSim
public boolean NextFrame(byte[] pixels)
public void Finish()
public boolean Connect(int frameRate)
public boolean Live()


| DOSE: |
2 joints/cigs |
smoked |
Cannabis |
(plant material) |
Before I begin this, I want to tell you that I'm affected very strongly by weed, I half-hallucinate almost every time I smoke weed, and I've been having auditory hallucinations more and more frequently, which I love. So, my friend and I went to a beach party, which rapidly descended into a huge sausage fest. As we were leaving, someone else, who was also leaving, asked if anyone had any drugs or alcohol, well we had weed!
We started smoking, the 3 of us, but were soon joined by 2 others. My friend and I aren't tight-assed about sharing weed, as I've grown some, and it's extremely common where I live. In fact you can get lots of high potency stuff for fairly cheap. As we smoked the weed, we started joking around having fun; we were laughing A LOT at this point, and the folks by the fire, who wouldn't touch drugs with a 40 ft pole, probably started laughing at us too.
After smoking both joints, and the roaches we joined them at the fire. I sat by the fire, and I remember being totally boggled by the concept of different temperatures; sitting by the fire, 1 side of my body was hotter then the other, and this amazed me. I started looking at my hands, because they were the most affected by the temperature change, and I became amazed that not only could I control them, but that I had not 1, but 2!
Whenever I'm high, I should tell you now, my vision becomes very affected; I see things on roughly 4 planes, which are fairly hard to explain. The best way, I imagine, is to picture a pop-up picture book. Everything is flat and 2-d, but the things are 'layered' if you will. I am the 1st plane, anything that I'm in (vehicle-wise) immediately becomes the second plane, along with anything near by me. The 3rd plane is for things farther away, trees slightly behind bushes for example, and the 4th is for things quite far away, across water for example. Water by the way, more specifically the ocean, is incredible.
 So, my friend and I started to leave. We planned to walk back to his house. As I stood up, the hallucinations started, half ones like I usually have. If I look at the leaves of a tree, instead of seeing individual leaves, I see 1 shape, which tend to be dragons, or some other cartoony monster, not evil, just amusing and fun; they can dance, speak, even interact with me; but they can't leave the spot where they're seen. But this time they were almost full-on hallucinations.
I watched as we walked up the street gnomes appear and dance around, singing songs that would later become the ambiance for life. The strange things about these gnomes is that they were never directly visible; I could only see them in my peripheral vision, which seemed to extend to almost the dead center of the back of my head. As we continued walking, I was amazed watching the trees and bushes near by as they had the same dragons etc. that always populate them; and I enjoyed getting into conversations with them in my head.
Then came the car. When I'm stoned, I'm terrified of cars. I can't stand them at all. In fact I can barely keep walking straight and keep my cool; if there's a spot to run to where I can hide, I will, and I'll stay there until the car passes. This time it was only the car of a few people from the party, and I was thankful for that. The gnomes had warned me in advance that it would be coming, and so I didn't freak out this time. However, a party had been busted a few nights ago, and there were a few cop cars cruising the area, my friend warned me.
As we walked along, the gnomes and creatures in the trees all the while keeping me company, I glanced over at my friend. All the colours on his body seemed to merge into one big puddle of colour; I can't really describe it. Everything was properly coloured, but it was also the same colours as everything else. The street, the trees, the light etc. I started to space out watching him, and then I heard the sound of a car.
This time, it was a cop car; and life immediately turned into a game. In fact, life was the most fun 'game' I've ever played. It was awesome. I was the hero, and I had to avoid the cars, while interacting with everything. It was at that point that I realized that pretty much the whole walk home, I'd been seeing myself from behind, as if I was an invisible camera, following myself.
We continued along, more cars passed, but I could generally control myself because life was like a game, and I was in control. I didn't have to suffer for my actions, so I didn't care; which in turn totally let me relax. Still moving towards my friends house, I talked to him the entire time, at least I thought. I asked him something aloud, something along the lines of 'That's true eh? (I'm Canadian) and he said 'What? What's true?'
Finally, we arrived at his house. It's awesome to go to his house, because he lives in a general store, so we did the usual routine for when we're stoned; Upstairs, grab a movie, some chips, some ice-cream, some candy, and a drink. I think the movie we grabbed was Lord of the Rings.
Downstairs, in the living section of his house, I asked him if he was burning out, and he said that he had been for about an hour. I was amazed at this, though when I'm sober I'm not, I've gotten used to being stoned way longer, and way more then most of my friends. I asked him to change the song that was playing. He asked me what I was talking about, and all of a sudden I realized that there had been a song playing over and over and over in my mind the entire walk home. More so then that, it was a single section of the song 'Don't Push' by Sublime. We watched the movie, though it was way too long with both of us burning out, so we fell asleep mid-way through it, though the parts of it I saw were incredible.
As for this trip, it wasn't particularly abnormal for me, I trip out like this all the time off of weed, it was just the most recent, and it was certainly fun. The game aspect was new, and I sure hope I can re-live that.
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.


Home
Stary
Accounts
Search
LogOut
Name
Active
Home
My Profile
About
Personality
Overview
Careers
Relationships
Lifestyles
Strengths and Weaknesses
Share
UI VIEW


Nyagetari clinches Ndakaini Half Marathon
by Capital SportNDAKAINI, Kenya, Nov 9 – Ngong based athlete George Nyagetari clinched the 16th edition of the Ndakaini Half Marathon on his debut after clocking a time of 1:10:32 in the 21-kilometer race on Saturday.
Speaking after the race, Nyagetari said he was happy with today’s victory, adding that he will now focus his attention on the remainder of the season.
“It was a tough race, but I have prepared myself for this kind of terrain. I am delighted to have the victory on my first outing here and look forward to the remainder of the year,” he said.
The women category was won by Rebecca Wanjiru from Nyadarua who clocked 1:45:28 while the first and second runner-up registered 1:56:58 and 1:59:05 respectively.
The 10-kilometer race was won by Peter Wahome and Evalyne Kamau while the 5 kilometer race was won by Johnson Mbugua and Faith Kyala.
In the subsequent 10KMs corporate race, Timaflor were winners with a combined 31 points while the Kenya Forest Service team came in second as the Citizen TV team finished third.
The annual Ndakaini Half Marathon which is now in its 16th year was started under the auspices of the Ndakaini Dam Environment Conservation Association (NDEKA) with a purpose of raising funds towards conserving Ndakaini Dam’s catchment area.
The event features the challenging 21km race, the scenic 10km course and the 5km family fun run.
(Visited 9 times, 9 visits today)


Created an iOS app inspired by Zipcar in the powerful SwiftUI and MapKit using Observer Design Pattern
Fleet Owners can manage multiple vehicles and add new vehicles to different geographical locations
Ride sharers can find and reserve different types of cars in parking lots nearby on the map; and also view their past trips and billing info
On Github
Designed an iOS app using SwiftUI that allows users to register, create new and view other users posts
Post contains an optional photo, text as well as hashtags; Users can view ratings and comments on the post
Users can search photos based on hashtags and usernames loading posts asynchronously from the web server
Developed offline capabilities for viewing cached posts by users
On Github
Created an end-to-end pipeline from data ETL to Model Training to Classification on DeepSat Kaggle Dataset
Used PySpark for distributed computing while hosting clusters on AWS Elastic MapReduce (EMR) instances and S3 buckets for storing data and logging outputs
Performed Principal Component Analysis (PCA) on Features from RGB and Infrared IR Channels
Trained Random Forests to classify 6 types of agricultural terrains and performed model evaluation
On Github
Developed speech recognition system using TensorFlow and Keras on TIMIT and TIDIGITS datasets
Devised code for dynamic mini-batch generation of spectrograms
Performed Fourier Analysis, applied Principal Component Analysis (PCA) on spectrograms for feature extraction
Trained Gaussian Mixture Models (GMM) on PCAs to classify speech from noise using Bayesian Inference
Programmed a system using LSTM (Long Short Term Memory) RNNs for Phoneme Recognition
Used N-Fold Cross Validation and Dropout Regularization for a better feed forward network architecture
Developed framework to dynamically test and compare different deep neural networks on AWS
Project Reports
A cloud-based platform which is SaaS and IaaS
Users can complex SPARQL queries on OWLs ontologies using WebPy
Support for Multi-Tenancy and Caching of frequent query results
Perform Instant Query or upload your own ontology and Queries
Automated VM Load prediction using Linear Regressive model and balancing using
Xen-API
On Github, Heroku, and
Poster


Construct Hamiltonian of nuclear quadrupole interactions.
Hnq = nquad(SpinSystem) Hnq = nquad(SpinSystem,Nuclei) Hnq = nquad(SpinSystem,Nuclei,'sparse')
nquad
calculates the Hamiltonian of
nuclear quadrupole interactions
(NQI) in the spin system SpinSystem
and returns it in Hnq
.
If only one argument is given, the NQI of all nuclei of the system are added. If the vector Nuclei
is given, only nuclei specified in the vector are included in the calculation. In Nuclei
, 1 determines the first nucleus, 2 the second and so on.
See the section about spin system structures on how to specify NQI parameters. See the section on and nuclear quadrupole interaction for more details about the Hamiltonian.
If 'sparse'
is given as third argument, the Hamiltonian matrix is returned in sparse format instead of full format.
For a system AB
with one electron and three nuclei,
nquad(AB,2)
returns the NQI Hamiltonian of the second nucleus
only, whereas nquad(AB)
gives the sum of the NQI of all three
nuclei.
eeint, hfine, nnint, sham, zeeman, zfield


See code on GitHub
With Repetitor, you can repeat a whole theater scene with nobody but a computer (and a good old browser like Chrome or Firefox!). Go practice your memory!
Instructions : choose a character to repeat. Clic Run. Press right arrow to skip the current sentence. Press space to pause


BusMall
mall Town
Home
Adopt a mall
Become a mall
hello, add the number of iterations if you want
if you didnt add any value it will iterations 25 time
show result


Please Sign Up
First name:
Last name:
Email for login name:
Password:
Verify Password:
Sign Up
Clear
Or Log in with your social media account:


Welcome
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereLife
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Card title
This card has supporting text below as a natural lead-in to additional content.
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.
Passion
Card title that wraps to a new line
This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat.
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.
Last updated 3 mins ago
Emotion
Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.
Example headline.
Cras justo odio, dapibus ac facilisis in, egestas eget quam. Donec id elit non mi porta gravida at eget metus. Nullam id dolor id nibh ultricies vehicula ut id elit.


Tips and Tricks
General Tips and Tricks
- If you have multiple machines working as zc.async dispatchers, it is
strongly suggested that you get the associated servers connected to a shared
time server. You generally don’t want your machines to disagree by more than
a few seconds.
- Avoid long transactions if possible. Really try to avoid long transactions
involving frequently written objects. One possible strategy is to divide up
your code into a job for low-conflict tasks and one or more jobs for
high-conflict tasks, perhaps created in a callback.
- Sometimes you can’t avoid long transactions. But really try to avoid long
commits. Commits hold a lock on the ZODB, and if you end up writing so much
in a single transaction that you take noticeable time to write, realize that
you are affecting–postponing–every single subsequent commit to the
database.
- Callbacks should be quick and reliable. If you want to do something that
might take a while, put another job in the queue.
- Some tasks are non-transactional. If you want to do them in a Job, you
don’t want them to be retried! Use the NeverRetry retry policy for these,
as described in the Recovering from Catastrophes section.
- zc.async works fine with both Python 2.4 and Python 2.5. Note that building
Twisted with Python 2.4 generates a SyntaxError in a test, but as of this
writing Twisted 8.1.0 is supported for Python 2.4.
- Using the transaction package’s before-commit hooks can wreak havoc if
your hook causes an exception during commit, and the job uses the zc.async
RetryCommonForever retry policy (which all callbacks use by default).
This policy has a contract that it will commit, or die trying, so it
retries all transactions that have an error on commit, and emits a critical
log message every few retries (configurable on the policy). If the error
never goes away, this will retry forever. Make sure critical log messages
actually alert someone!
Testing Tips and Tricks
- In tests, don’t check to see if poll is activated until after the first
poll. Try zc.async.testing.get_poll(zc.async.dispatcher.get(), 0), for
instance.
- In tests, be aware that DemoStorage does not support mvcc and does not
support conflict resolution, so you may experience ConflictError (write and
particularly read) problems with it that you will not experience as much,
or at all, with a storage that supports those features such as FileStorage.
Notice that all of the tests in this package use FileStorage.
- If you get a failure as a result and you didn’t expect it, don’t forget
the getTraceback and printTraceback methods on the failure. The
whole point of the failure is to help you diagnose problems.
- zc.async.dispatcher.get() will get you the dispatcher. You can then check
if it is activated and also use the other introspection and status
methods.
- The zc.async.testing module has a number of helpful functions for
testing. get_poll, given a dispatcher, will give you the next poll. This
is a good way to make sure that a job you just put in has had a chance to be
claimed by a dispatcher. It’s also a reasonable way to verify that the
dispatcher has started. Other useful testing functions are
zc.async.testing.wait_for_result, which waits for the result on a give
job and returns it; and zc.async.testing.wait_for_annotation, which waits
for a given annotation on a given job. These are demonstrated in various
doctests in this package, but should also be reasonably simple and
self-explanatory.
More Tips and Tricks
The following documents describe specific tips and tricks for specific
situations.


{% verbatim %}
Concurrent programming is important for deep learning. Few example applications are:
Most DL systems, including TensorFlow, Caffe2, and MxNet, can asynchronously execute operators in a graph. However, Fluid doesn't have the concept of a graph at all, as the design goal of Fluid is that of a programming language.
There were many concurrent programming models, implemented in various forms:
| concurrent programming model | implementation |
|---|---|
| mutex | types and functions in standard libraries |
| semaphore | types and functions in standard libraries |
| communicating sequential processes (CSP) | Go programming language |
| actor model | Erlang programming language |
| message passing | MPI |
| bulk synchronous parallel (BSP) | Pregel distributed programming framework |
Since Fluid was designed to be a programming language, we would like to implement CSP in Fluid.
A well-known implementation of Actor Model is the Erlang programming language. In Actor Model, processes could send messages to another process and receive messages from another process given the process IDs. We can find the three ingredients, process with ID, send, and recv, in MPI too. Indeed, we can rewrite Erlang programs in Python + MPI with possibly fewer lines of code. Our concern with Actor Model is that it doesn't seem reasonable to implement process management in a programming language's runtime library; instead, it should be the operating systems' responsibility to manage processes and libraries like MPI for send/recv.
Fluid has two fundamental control-flows: if-else and while. If we are to implement CSP, we need the following:
We also need Python wrappers for the above components.
The type channel is conceptually the blocking queue. In Go, its implemented is a blocking circular queue, which supports send and recv.
The select
operation has been in OS kernels long before Go language. All Unix kernels implement system calls poll and select. They monitor multiple file descriptors to see if I/O is possible on any of them. This takes O(N) time. Since Linux 2.6, a new system call, epoll, can do the same in O(1) time. In BSD systems, there is a similar system call kqueue. Go's Linux implementation uses epoll.
It might be a good idea to implement Fluid's select using epoll too. In this design doc, we start from the O(N) way so that we could focus on Python binding and the syntax.
Fluid supports many data types:
Each data type is registered in the framework.proto
as an enum value. To add a new type channel, we need to add a new type enum.
To expose a C++ type to Python, we need to edit the pybind.cc
file. Here is an example how we expose C++ class LoDTensor.
In Go, we create a channel by specifying the element type and buffer size:
ch := make(chan int) // a channel without buffer
ch1 := make(chan int, 100) // a channel that can buffer 100 ints.
In Fluid, we should be able to do the same:
ch = fluid.make_channel(dtype=INT)
ch1 = fluid.make_channel(dtype=INT, 100)
In addition to that, we want channels that can hold more complex element types, e.g., Tensors of float16:
ch = fluid.make_channel(dtype=Tensor, etype=float16)
or Tensors of Tensors of float16 etc.
The point here is that we need a consistent way to compose types, like in C++ we can have Tensor<Tensor<...<float16>...> >
.
Go's CSP implementation depends on data type channel. There are two types of channels:
There are four types of actions with a channel:
ch := make(chan int) // this is an unbuffered channel
ch := make(chan int, 100) // this is a buffered channel of 100 ints.
ch <- 111
y, ok <- ch
close(ch)
Please be aware that a closed channel is not a nil channel, which is var ch chan int
.
There are some axioms with channels:
A send to a nil channel blocks forever
A receive from a nil channel blocks forever
A send to a closed channel panics
A receive from a closed channel returns the residual values and then zeros.
In Fluid, we have buffered channels and unbuffered channels
The following program illustrates the Python syntax for accessing Fluid buffers.
import fluid
buffer_size = 10
ch = fluid.make_channel(dtype=INT, buffer_size)
# Now write three elements to the channel
with fluid.while(steps=buffer_size):
fluid.send(ch, step)
fluid.close_channel(ch)
with fluid.while(steps=buffer_size):
fluid.print(fluid.recv(ch))
The following example shows that to avoid the always-blocking behavior of unbuffered channels, we need to use Fluid's goroutines.
import fluid
ch = fluid.make_channel(dtype=INT)
with fluid.go():
fluid.send(ch)
y = fluid.recv(ch)
fluid.close_channel(ch)
In Go, the select
statement lets a goroutine wait on multiple communication operations. A select
blocks until one of its cases can run, then it executes that case. It chooses one at random if multiple are ready.
ch1 := make(chan int)
ch2 := make(chan int, 100)
x := 0
for {
select {
case ch1 <- x:
x := x + 1
case y <- ch2:
fmt.Println("Received on channel")
default:
fmt.Println("Default")
}
}
In Fluid, we should be able to do the same:
ch1 = fluid.make_chan(dtype=INT)
ch2 = fluid.make_chan(dtype=INT, 100)
sel = fluid.select()
with sel.case(ch1, 'w', X):
fluid.layers.increment(X)
with sel.case(ch2, 'r', Y):
fluid.print("Received on Channel")
with sel.default():
fluid.print("Default")
In the above code snippet, X
and Y
are variables. Now let us look at each of these statements one by one.
sel.case(ch1, 'w', X)
: This specifies that we are writing to ch1
and we want to write the integer in variable X
to the channel. The character w
is used here to make the syntax familiar to write syntax in Python I/O.
sel.case(ch2, 'r', Y)
: This specifies that we would like to read the result from ch2
into variable Y
. The character r
is used here to make the syntax familiar to read syntax in Python I/O.
sel.default()
: This is equivalent to the default in Go select
. If none of the channels are ready for read or write, then the fluid code in the default block will be executed.


You don't have permission to manage this page! Please check if you are logged in with the correct account. Redirecting you to front end page in 10 seconds:
Click the "back" button if your browser is not refreshing


BT Sport retains Champions League rights in blockbuster deal
London - BT Sport has retained exclusive UK broadcast rights to UEFA's European club competitions after agreeing a reported £1.2 billion deal on Friday.
The deal, which is said to have cost £400 million per year and commences in 2021, gives BT the rights to all 420 games from the Champions League, Europa League and the new Europa Conference League for a further three seasons.
The broadcaster has held the rights since 2015 after it agreed an £897 million deal with European football's governing body.
BT Sport, owned by Britain's biggest broadband and mobile operator BT, is a paid subscription service.
There will be an increase of 77 games from the previous deal, which includes highlights and in-match clips.
BT Sport reported a 26 percent increase in Champions League viewer hours, with last season's final between Liverpool and Tottenham made available for everyone to watch in the UK via social media.
A record 11.3 million people tuned in across all platforms to watch Liverpool win 2-0 as they lifted the European Cup for a sixth time in Madrid.
Chief executive of BT's Consumer Division Marc Allera said: "We're delighted to remain the home of UEFA Champions League in the UK."