To aid those newcomers in the understanding of pointers I have written the following material. To get the maximum benefit from this material, I feel it is important that the user be able to run the code in the various listings contained in the article. I have attempted, therefore, to keep all code ANSI compliant so that it will work with any ANSI compliant compiler. I have also tried to carefully block the code within the text. That way, with the help of an ASCII text editor, you can copy a given block of code to a new file and compile it on your system. I recommend that readers do this as it will help in understanding the material.


Asian C’ships: Competing under neutral flag due to India’s ban, archers Atanu-Deepika bag bronze
by Scroll StaffThe Indian archers overcame all odds to ensure two medals in the recurve and compound mixed event of the Asian Archery Championships in Kolkata on Tuesday.
Competing under a neutral flag with the Indian federation being suspended, the Indian archers opened their account with a bronze medal in the recurve mixed pair event, where Atanu Das and Deepika Kumari defeated Yichai Zheng and Shaoxuan Wei of China 6-2 without breaking a sweat.
But, it was the compound mixed pair team of Abhishek Verma and Jyothi Surekha Vennam who produced a stunner, ousting Korea 159-154 in a one-sided affair to set up a gold medal clash with Chinese Taipei, slated for Wednesday.
The team eliminations are also scheduled to start on Wednesday while Indian women will also vie for Olympic quotas in the qualification round on Thursday.
Read Comments


Fullstack JavaScript Web Developer |
Click the navigation or use the search bar above to filter the stories. Link List is different because it's basically a beta project that will be spun off to its own site one day. Not starting another site yet, though. I give Bezos enough money every month.


--- layout: post status: publish published: true title: 'Quick Tip: Autofilling your Email address anywhere in iOS' author: Arthur Rosa author_login: arthurlockman author_email<EMAIL_ADDRESS>author_url: https://b.rthr.me wordpress_id: 351 wordpress_url: http://b.rthr.me/?p=351 date: '2012-07-11 20:02:48 -0400' date_gmt: '2012-07-12 00:02:48 -0400' ---
Ever wanted to have a quick way to post your email address in iOS with just a few taps? While Apple hasn't implemented a key to do this, there is a quick way to do it on iOS, provided you're running iOS 5 or higher. Here's a quick guide:
Credit for this tip goes to Chris Masterson, who tweeted it earlier today.


Mystery Porsche 911 Turbo S (992) “Ducktail” Prototype Shows More Skin
by Alex OaganaSome would say that the plot has thickened, and they would be right because we are still not completely sure what the deal is with the following “Ducktail” Porsche 911 Turbo (992) prototype.
A couple of weeks have passed since we showed you the first images of a camouflaged 911 of the 992 variety that sported a rather peculiar ducktail spoiler, and now the prototype has returned, with our spies catching the car on public roads near Porsche's technical center in Zuffenhausen.
While the first time it wasn't completely obvious that we're looking at a Turbo version since the angle of the photos was not helping, this time we can see the car in all its glory. Judging by the center lock wheels we can be pretty sure that the prototype is actually a Turbo S, with the main difference to other Turbo S (992) prototypes being that enigmatic ducktail spoiler.
Like we mentioned before, there are only two possibilities for what the car actually is. Firstly, Porsche might simply introduce yet another special edition of the 911, using the upcoming Turbo S as the base. The Germans did something similar on the 997 generation of the Neunelfer when a 911 GTS with five-leaf Fuchs wheels and a ducktail spoiler was offered to just 250 lucky customers. Paying homage to the original Carrera 2.7 and 3.0 RS, the limited edition 911 Sport Classic is now one of the most coveted 997 versions thanks to its rarity.
Secondly, Porsche might simply reintroduce the Carrera RS nameplate using the new Turbo S as the base. We are more inclined toward this option since it's a bit overkill to test a limited edition version based on a not-yet-unveiled model as early in development.
What is know for sure is that whatever its name is, it will be a very fast car. The regular Turbo S' twin-turbocharged Boxer engine is expected to develop no less than 650 horsepower and 800 Nm of torque sent to all four wheels, enough for a top speed of 340 kph (211 mph) and a 0-100 kph (62 mph) time of under 2.5 seconds. This “RS” version should have similar, if not slightly better specs. 🏁


Testing
Unit Testing
Running unit tests is easy:
make test
This compiles all of the code and tests any *_test.go
files. Test coverage
is spotty at best right now, but the compile-time checks catch the most common
problems, like typos in variable names.
Contributors: feel free to add more unit tests to improve overall coverage!
Manual Testing
Manually testing NCA can be time-consuming, as you have to find, copy, and then load issues into NCA, enter metadata, etc. If you repeat this often enough, you may find the project’s “test” directory helpful. It contains documentation and scripts which are meant to make real-world-like testing a bit easier.
The most difficult piece of this is that you will need to set up NCA as outlined in the “Advanced Users” section of the Development Guide. You can likely make things work in any environment, but the scripts and documentation assume you do it our way. This process is not beginner-friendly, and likely never will be; it’s meant for power developers who are doing a lot of testing and need the extra automation.
View the README.me file in the test directory for details.
Saving State
At any time you can save and restore the application’s state via the top-level
manage
script. This script has a variety of commands, but ./manage backup
and ./manage restore
will back up or restore all files in the fake mount
as well as all data volumes for NCA, assuming your docker install puts data in
/var/lib/docker/volumes
and you don’t change the project name from the
default of “nca”.
This can be very handy for verifying a process such as generating batches, where you may want to have the same initial state, but see what happens as you tweak settings (or code).


All our solutions are available as cloud services
Based on the optimal cloud environment and all the functions required for sales operations
we provide convininet, easy-to-use and highly safe services
You can use the service anytime and anywhere as long as you are connected to the Internet.
Since there is no need to build an asset or system management system in-house, it leads to cost reduction and management load reduction.
With security measures and data backup, you can use highly reliable cloud services.
The load on the server is distributed by a design optimized for 3 layers. It can demonstrate the response more than the client server type system. Also, rich client systems do not store data on the client PC, so there is no need to worry about information leaks.
Since the business application can be collectively managed on a server, the system updates also can be done on a server alone. It can be used safely without stopping the system.
Executive level, administrative position, store manager. What they want to see are different for each position. From analysis results to transfer instructions, to order instructions. C.P.A. is a proprietary BI tools included in the package. You can select your favourite analysis axis and call and share it at any time in the cloud, supporting speedy decision making.
There is no need to apply different system for the wholesale and retail and then linkage them. It can be centrally managed by Creative Vision.NET. You will not miss the movement of the product.
With the collaboration experience in the fashion industry cultivated since the establishment of the company, it is possible to reduce the cost and development period that are likely to increase. We can flexibly cooperate with ZOZOTOWN, various malls, EC, logistics, etc.
It can be set under a variety of conditions, such as sales order and store rank order. Distribute warehouse inventory evenly to sales standards, avoiding the formation of inaccessible stores and firmly preventing missing items. It is necessary to confirm after giving an instruction, and it is possible to distribute and to order even after confirming and correcting the instruction.


It's Kinda Like Netflix for Your Career!
Learn practical, modern web development, through expert screencasts. Most video tutorials are boring. These aren't. Ready to binge?
Title here
123Title here
123Title here
123Title here
123Title here
123Did someone say rapid?
Elegant applications delivered at warp speed.
Want us to email you occasionally with latest codego?


PART 6. BREACH, REPUDIATION AND EXCUSE
§490:2-601 Buyer's rights on improper delivery. Subject to the provisions of this article on breach in installment contracts (section 490:2-612) and unless otherwise agreed under the sections on contractual limitations of remedy (sections 490:2-718 and 490:2-719), if the goods or the tender of delivery fail in any respect to conform to the contract, the buyer may:
(a) Reject the whole; or
(b) Accept the whole; or
(c) Accept any commercial unit or units and reject the rest. [L 1965, c 208, §2-601; HRS §490:2-601]


About
It’s well known that feedback is critical when evaluating something or when gathering data for a market analysis. Nevertheless, it is an expensive and sometimes slow process that may not be as precise as we need it to be.
W. Chan Kim and Renée Mauborgne, professors at INSEAD and co-directors of the INSEAD Blue Ocean Strategy Institute published a book in 2005: Blue Ocean Strategy. In this book, they unveil this marketing theory. They represent very competitive industries as red oceans. These reference companies that struggle to innovate and target specific markets while competing against lots of other companies, doing the same thing, with the same kind of product. In the other hand, a blue ocean represents an unexplored industry, an opportunity of actual innovation, and a market nobody else has identified before.
Navy Chart is tailored to help those unidentified markets reveal themselves and for stakeholders to have them in sight. As it name suggests, the application will act as a chart that could lead any organization, developer, or institution, out of those red waters and into new navy-blue oceans of opportunities. This application will help not only big companies, but any stakeholder who has the power to target those blue ocean markets with new innovative products.
Features
Tag based classification
Blue markets are classified and divided with tags. These help users identify the industry involved in an opportunity or problem.
Blue market search
Users can search for blue markets by popularity, date, and associated tags. They can bookmark their favorites to keep track of them later.
Paint new markets
Paint an existing market to turn it into a darker blue. Darker blue markets indicate a greater market impact.
Student details
account_circle Jorge Limón Cabrera
assignment_ind A01280734
Course details
assignment Web Applications Development Aug-Dec 17
school Alfredo Salazar Vélez


--- layout: post title: Haskell bundle for TextMate post_id: 249 categories: - odds & ends date: 2005-10-31 21:15:00.000000000 -07:00 author: Jamis permalink: 2005/10/31/haskell-bundle-for-textmate.html ---
So, I’m almost completely converted to TextMate. However, I discovered that it had no syntax highlighting support for Haskell, and googling for one didn’t turn up anything. So I did what any self-respecting programmer would do—I put one together, myself.
It is currently pretty minimal (it doesn’t support any folding yet, and it only really supports as much of the syntax as I currently understand), but it’s a start. It also supports lhs
files by combining the Haskell syntax with the LaTeX bundle that comes with TextMate.
Hopefully these will be useful to someone. If you add anything to them, please send the addition back to me so I can add it to my copy.
Haskell.bundle (.tar.gz file, 1k)
Update: I’ve been given commit access to the TextMate bundles repository, and have added Haskell there.


Testbreaker
This is the pre-deployment site for Lawbreaker. It is currently offline since there are no new changes ready for public testing on Lawbreaker.
Visit
Lawbreaker
to generate a character sheet for the Knave role playing game.
Lawbreaker
by hrangan ·
Knave
by Questing Beast


Add Tasks
Add task
Sort tasks
Which task is more valuable?
Task A
Task B
Which task takes more effort?
Task A
Task B
What do you prefer?
More Value
LessEffort
Show results!
This is the order you should do the tasks:
foo


Apple’s newest iPhone 11 update fixes performance issues, premature app termination
by Michael AllisonApple’s iPhones suffered from a bug last week which caused apps to get kicked out of RAM quickly than normal. Despite the increased ram and performance, users were quickly finding that their apps wouldn’t stay in memory once they navigated away from them — no matter how briefly. Tabs in Safari would vanish like wisps in the wind, flled in messages would clear, and YouTube videos would reset back to the beginning.
The new iOS 13.2.2 update has been rolled out to address this issue, fixing this along with a few others.
Here’s the changelog:
- Fixes an issue that could cause apps to quit unexpectedly when running in the background
- Resolves an issue where iPhone may temporarily lose cellular service after a call
- Addresses an issue where cellular data may temporarily not be available
- Fixes an issue that caused replies to S/MIME encrypted email messages between Exchange accounts to be unreadable
- Addresses an issue where using Kerberos single sign-on service in Safari may present an authentication prompt
- Resolves an issue where charging may be interrupted on YubiKey Lightning-powered accessories
The update is rolling out to iPhones and iPads running iPadOS today. While not being a massively huge update, it showcases the flexibility Apple has in rolling out updates to fix user-facing problems in (checks watch) just over a week since it debuted.
Via: TechCrunch


Man (70s) dies after car crash in Co Cork
Scene of the incident remains closed for forensic examination
A man (70s) has died following a car crash in Co Cork.
The car collided with a ditch in the Taur area of Newmarket in Co Cork at about 12.18am on Tuesday morning.
The driver, the sole occupant of the car, was pronounced dead at the scene.
The body has been removed to the City Morgue at Cork University Hospital for a post mortem. The scene of the incident remains closed for a forensic examination.
Gardaí are appealing for anyone who may have information, particularly any anyone who may have travelled through the area between 12.10am and 12.30am, to contact them at Mallow Garda Station on 022 31450 or the Garda Confidential Line on 1800 666 111.


Create new dormitory and owner information
Registrate new staff account which can edit available room status and dormitory information insted of dormitory owners.
Edit dormitory information (Login by owner is requied)
Edit dormitory information (Owner ID is requied)


The Vernon was a tall ship purchased by the New South Wales Government in 1867 and converted to a Nautical School Ship. It was a reformatory and industrial school and housed more than 100 boys, training them in nautical and other trades. The Vernon was first anchored between Garden Island and the Government Domain, and from 1871 at Cockatoo Island. The Vernon was replaced by another ship, the Sobraon, in 1892.
The NSS Vernon had been a merchant vessel. In 1867 it was fitted out as an industrial school and reformatory.
NSS Vernon was the only industrial school for boys at the time.
More than 100 boys lived on board the ship, which was anchored alongside a substantial shore facility that stretched between Garden Island and the Government Domain. The shore facility included a gymnasium, a spacious recreation ground, an entertainment hall and a recreation hall.
At first boys learned nautical and industrial skills and trades, as well as receiving 'moral training'. The intention was to fit them for seafaring. In 1871 Vernon was moved to a new mooring at Cockatoo Island. From 1878, under the guidance of Superintendent Frederick William Neitenstein, boys were given proper schooling, physical drills and a system of grades and privileges. They did, however, fraternise with the girls in Biloela, next door on Cockatoo Island, causing problems until the girls were relocated to Parramatta.
Vernon was replaced by Sobraon in 1892. Vernon then was sold and scuttled in Kerosene Bay.
1867 - 1892 Nautical School Ship 'Vernon'
1892 - 1911 'Sobraon' Training Ship
Sources used to compile this entry: 'Carpentarian Reformatory for Boys (1894-1908) / Brush Farm Home for Boys (1909-1913) / Farm Home for Boys, Gosford (1914-1946) / Mount Penang Training School for Boys, Gosford (1946-1990) / Mount Penang Juvenile Justice Centre (1990- )', in Archives Investigator Agency Detail 486, Juvenile Justice Centre, State Records Authority of New South Wales, http://investigator.records.nsw.gov.au/entity.aspx?path=%5Cagency%5C486; Dunn, Mark, 'Vernon nautical training ship', in Dictionary of Sydney, 2008, http://www.dictionaryofsydney.org/entry/vernon_nautical_training_ship.
Prepared by: Naomi Parry
Created: 23 March 2012, Last modified: 30 August 2013


| DOSE: |
5.0 mg |
insufflated |
2C-T-7 |
(powder / crystals) |
After receiving my 250mg 2c-t-7 in the mail, I dissolved it in 100ml everclear, mixed it well, and then measured 2ml and evaporated it in a beaker. I used a slurpee spoon from 7-11 to scrape out the powder, it worked ok but there was still a decent amount of powder left stuck to the side of the beaker, it was just so thinly distributed and stuck to the sides of the glass that i couldn't get it out... So I would estimate my dose to be very slightly less than 5mg (I weigh about 215 lbs for reference).
The setting of this drip is in my college dorm room and the surrounding area. My basic mindset was hoping for a new kind of experience perhaps, and just general curiosity, and great anticipation of what was to come cuased by waiting oh so long to get the little packet of white powder...
 I cut it into two piles, and snort one pile at 12:07pm. Within a few minutes I can feel a subtle change in my consciousness, a kind of giddy feeling with rushes around my stomach and legs.
At 12:19 I snort the other pile, as well as all the little bits of powder on the mirror and still in the beaker.
By 12:30 I definitely feel the effects, I feel energetic and am having muscle tremors, my pupils are slightly dilated, and visually things are just barely wavering out of the corner of my eyes. I put on some sunglasses, go outside, and look at the grass... if I zone out enough, it breathes quite completely, as does any other surface. My jaw is clenching slightly. I don't really feel nauseas at all, maybe a little 'butterflies in the stomach' feeling though.
At about 1pm, I figure that this is about as strong as its going to get, and it's not very intesnse, but definitely nice... no visuals to speak of unless i concentrate on them really hard in a dimly lit area. I go to my dorm's dining hall and grab some food, it tastes good and I have a good appetite.
I go back to my room, put on some headphones. Damn, music is fantastic, listening to the song 'space oddity' by David Bowie sends me into one of the most amazing states of ecstasy i've ever experienced, cold rushes of energy flow over my whole body while subtle, colorless, but intricate geometric patterns morph behind my closed eyes. Looking at bathroom tile, carpet, or walls for a while brings colorless but very real animated shapes dancing across them. Time dilation is quite strong, at about 2:15 I feel like I have been going for at least 4 hours when it was in actuallity just under 2 hours. I listen to music and zone out in a tripping/stoned mindspace for a while, I don't feel many mental effects from 2c-t-7, unlike from say LSD, but they are there only subtle.
Overall the experience was euphoric and relatively calm, although it seemed to have a speedy edge to it that could get bad at higher doses...
I will try 2c-t-7 again, however at a much higher dosage.
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.


{% extends "base.html" %} {% block styles %} {{ super() }} {% endblock %} {% block page_content %}
Are you a kid who is interested in making cool stuff like robots and other projects, but don't know where to get started?
The MAKER Kid is a learning website where kids aged 6-14 can get together and learn about making stuff. You can even share ideas and projects with other kids.
Have a look around this website. There are simple projects to get started with, or more advanced projects which use coding and electronics.
Interested in getting involved, or don't really understand how some of the projects work? Then simply register with this website and you can post messages and comments, share code with other kids, and hopefully get an answer to your questions.
If there is something you would like to see covered, just post a message on the forum, and we will see what is possible.
Hi Kids, I'm Benjamin, creator of The MAKER Kid website. I am 10 years old and live in Dublin, Ireland. I AM NOT THE MAKER KID. The MAKER Kid is any kid that is interested in making stuff, and visits this Website... like what you are doing right now!!
Since I was a little kid, I was always trying to figure out how things work. I started off on Lego® and Meccano®, building lots of challenging models, before asking my parents for a Lego® Mindstorms Robot. Unfortunately, I didn't get the Mindstorms Robot, but I did get an Arduino and later a Raspberry Pi. As you can see from the picture from the previous tab, I am a big Minecraft fan. I come from a family of makers. My Mum loves making costumes, and my Dad loves tinkering with Electronics.
I began coding when I was 6 years old (a long time ago!), starting off with the Scratch programming language on the Raspberry Pi. I won the Best Educational Content Award at the annual Scratch competition in 2015, with my project Snapshot Of our World. I joined Coderdojo in Summer 2015 originally at the Science Gallery, before we moved to Coderdojo Dublin @ the Warehouse in Zalando beside Google Headquarters.
At Coderdojo, I learned how to code websites. and mobile devices, before moving onto Raspberry Pi and Python.
I was invited by Coderdojo to showcase my Maker Kid project at the RDS BTYSTE exhibition. You can read my blog My Day at BTYSTE here.
Besides Coding, I enjoy Swimming, Tennis, Golf, Chess and of course Minecraft.
I love making stuff and wanted to show other kids that making stuff is fun. If kids try some of my exercises they will soon realise that making stuff is great fun and there are great resources in our own country.
I wanted to use all the stuff that I learned in both CoderDojo and individually, under one big project.
I wanted to establish links with other kids who are interested in making stuff, and provide a forum where they could communicate and learn from each other.
My Mum wanted me to design a website for our Local Residents' Assocation but I decided that I should start with one for kids like me. I wanted to learn other skills like making videos and editing images.
My website is built by a kid, for Irish kids and kids all around the world, with relevant hints, ideas and guidelines on how to get started and have fun with all areas of making stuff.
This website was hand coded from scratch using the skills I learned at CoderDojo @ Warehouse, and on various websites.
I built this website using CSS/Bootstrap, HTML, JavaScript/JQuery, Python and SQLite (change to new sql database later). The Server is based on the Flask Framework which is a lightweight Python Micro framework.
The Forum/Blog is based on the “FlaskBB” forum on GitHub by sh4nks, and was integrated into the Website by me. I will be adding extra features over time.
If you are wondering what these languages are, then check out some of the links on the the Technology section of the Website.
Thanks to all the Mentors and committee at CoderDojo Dublin @ Warehouse, especially Brian, Ed, René and Anna.
Thanks to Sal and all the team at KHAN Academy for your fantastic learning website.
Thanks to Miguel Grinberg for his excellent Flask book.
Thanks to “sh4nks” for FlaskBB. (FlaskBB is the Forum)
Thanks to Ali Jafarian for his cool Jquery tutorials (which includes this page).
Thanks to Wikimedia Commons and Pixabay for some of the images.
Sorry. The pictures do not line up.
I have so many plans to make the website better. I intend to add a lot more more content on coding with added projects.


WHAT DREAMS MAY COME
** 1/2 (out of 4)
Release Date: October 2, 1998 Starring: Robin Williams, Cuba Gooding Jr., Annabella Sciorra, Max von Sydow, Jessica Brooks, Josh Paddock Directed by: Vincent Ward Distributed by: PolyGram Filmed Entertainment MPAA Rating: PG-13 (thematic elements involving death, some disturbing images, language) URL: http://www.execpc.com/~kinnopio/reviews/1998/whatdreams.htm
Almost all movies start on paper somewhere - perhaps something a production exec scribbles on paper during lunch or an idea that a writer beats around in his head awhile before scripting a rough draft. From there, if it sounds good, the thing gets pitched to a studio that might be interested; if so, the movie is greenlighted into a production phase. Considering this process for Vincent Ward's latest drama, WHAT DREAMS MAY COME, it's possible to think that everything sounded good until the movie was actually laid on plastic and sent to movie theaters nationwide. And in all fairness, it most likely was a good idea. But in this case, it's just one good idea that wasn't suited for film.
It's possible to see the shortcomings of DREAMS at the outset. Director Ward wants to work with a very metaphysical and esoteric concept for two hours, while simultaneously trying to mix solid drama and a sprinkling of Robin William's characteristic wit. It doesn't work, for there's just too much going on in his head for everything to come together onscreen. At times, the movie reaches inspiring levels of thought-provoking scripting, but these arrive at unexepected moments and it's likely that the audience will miss many of them. As a whole, the script is not very well done for such a good idea. It's a very muddled foray into an area of screenwriting that takes a very committed and experienced writer to perform well in. Writer Ronald Bass, basing it on the Richard Matheson novel, certainly has experience (RAIN MAN), but he doesn't have commitment, and the movie suffers because of it.
The cast has the goods but does not deliver. Williams is fun to watch, but he lacks the flair that he had in GOOD WILL HUNTING, and, ultimately, DEAD POETS SOCIETY. Here, he plays the lead of Chris Nielsen. Chris meets the lovely artist Annie (Annabella Sciorra) while on vacation in Europe, and the two fall in love and are married soon after. They have two kids, but not long after the movie's opening credits are the children killed off in a car accident. The couple suffers but survives until Chris is also killed in a car accident. He goes to Heaven, which, for him, is composed of his wife's paintings. It's there that he meets spiritual tour guide Al (Cuba Gooding Jr.), who gets him to know the hereafter.  When Chris learns of this, he takes Al and an ancient netherworld tracker (Max von Sydow) on a journey to Hell to find Annie.
The rest of the cast is rather drab, including Cuba Gooding Jr. Gooding had showed promise after his Academy Award-winning performance in JERRY MAGUIRE and a delightful turn in AS GOOD AS IT GETS. Here, his job seems forced, and he doesn't fully become the character. The only one to lend any substance is Annabella Sciorra, who provides a solid sense of motivation for Williams' character. This rather mediocre cast doesn't help the script any, and so the movie's truly redeeming facets are the special effects and set design. WHAT DREAMS MAY COME makes very dynamic use of extreme color and lack thereof; the movie has a very powerful vision. It's watchable for the most part, but not extremely so. And unfortunately, it's about a subject that won't fly well with everyone, so you may have trouble convincing yourself that this one's worth the bucket of popcorn.
-- Craig Roush<EMAIL_ADDRESS>-- Kinnopio's Movie Reviews http://www.execpc.com/~kinnopio
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


On this page you will find all my projects, but organized in categories and without description.
Game development
- Tidying for Godot (2021)
- Polygons of Light (2020)
- Biome (2019-2020)
- Eat or Die (2019)
- Sunny Weather (2019)
- Schmup (2019)
- Squishy Square (2019)
- Law Enforcer (2019)
Development
- Advent of Code 2018 (2018-2020)
- Advent of Code 2019 (2019-2020)
- Numap (2019)
- Numamma (2019)
Others
- Warbot (2020)
- Resource Manager (2020)


You could be there in 7 mins Your best route is 1.5 mi
Find your closese park, see a full list of amenities, calsses and more.


dojox.image.SlideShow
from dojo.data.ItemFileReadStore
This SlideShow should display five photos, and loop. It should also
open a URL when the image is clicked. The widget should also resize to
fit the image.
from dojox.data.FlickrRestStore
This SlideShow should display five photos, and not loop. It should also not
open a URL when the image is clicked. AutoLoading of images is also disabled.
The time between images in a SlideShow is 1 second. The widget should not resize to fit the image


Berkeley Builds is a social innovation designathon on UC Berkeley’s campus that invites students from all academic disciplines to implement sustainable solutions to social issues both domestically and internationally. Through collaboration with a diverse leadership of student-run organizations focused on a range of topics from social impact to technology to consulting, we encourage students to design solutions to address real problems. At the event, we aim to maintain a mutually beneficial relationship with the nonprofit organizations and corporate sponsors. The students gain hands-on experience and have the opportunity to make a significant impact while networking with potential future employees. At the same time, participating organizations and companies get the opportunity to market their organization, advocate for their cause, and meet potential recruits.
Anyone, regardless of major or prior experience, can attend Berkeley Builds 2017.
Nope! Admission is free and includes food, workshops, and swag!
Each team will have a maximum of 4 people. While we will do our very best to place individual applicants in balanced teams, we strongly encourage applicants to apply as interdisciplinary, technical, or non-technical teams in order to be successful at this event.
Berkeley Builds 2017 will be at Sutardja Hall, UC Berkeley. Your team will work in our event’s design space, which includes Blum 100 and Blum 101.
Other than a personal laptop, participants aren’t required to bring any materials to Berkeley Builds. We will offer markers, whiteboards, snacks, pens, pencils, and other tools at the event for your teams to use!
Check back soon! We are finalizing the schedule at the moment.
Feel free to message us on Facebook if you’re in any way confused or concerned about anything about the event! We’d love to help you out :)


Mapping Source
This structure represents the following mapping definition:
plannet.PlanNet-Practitioner maps to http://hl7.org/fhir/us/core/StructureDefinition/us-core-practitioner: AvailableTime maps to http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-availabletime ViaIntermediary maps to http://hl7.org/fhir/uv/vhdir/StructureDefinition/contactpoint-viaintermediary GeoLocation maps to http://hl7.org/fhir/StructureDefinition/geolocation Qualification maps to http://hl7.org/fhir/uv/vhdir/StructureDefinition/practitioner-qualification Proficiency maps to http://hl7.org/fhir/uv/vhdir/StructureDefinition/communication-proficiency Accessibility maps to http://hl7.org/fhir/uv/vhdir/StructureDefinition/accessibility constrain name to 1..1 constrain name.family to 1..1 constrain name.given to 1..* constrain photo to 0..1 constrain qualification.issuer to 1..1


Generates C header and source files from a Java class.
javah [ options ] fully-qualified-class-name ...
The command-line options. See Options.
The fully qualified location of the classes to be converted to C header and source files.
The javah
command generates C header and source files that are needed to implement native methods. The generated header and source files are used by C programs to reference an object's instance variables from native source code. The .h
file contains a struct
definition with a layout that parallels the layout of the corresponding class. The fields in the struct
correspond to instance variables in the class.
The name of the header file and the structure declared within it are derived from the name of the class. When the class passed to the javah
command is inside a package, the package name is added to the beginning of both the header file name and the structure name. Underscores (_) are used as name delimiters.
By default the javah
command creates a header file for each class listed on the command line and puts the files in the current directory. Use the -stubs
option to create source files. Use the -o
option to concatenate the results for all listed classes into a single file.
The Java Native Interface (JNI) does not require header information or stub files. The javah
command can still be used to generate native method function prototypes needed for JNI-style native methods. The javah
command produces JNI-style output by default and places the result in the .h
file.
Concatenates the resulting header or source files for all the classes listed on the command line into an output file. Only one of -o
or -d
can be used.
Sets the directory where the javah
command saves the header files or the stub files. Only one of -d
or -o
can be used.
Causes the javah
command to generate C declarations from the Java object file.
Indicates verbose output and causes the javah
command to print a message to stdout
about the status of the generated files.
Prints a help message for javah
usage.
Prints javah
command release information.
Causes the javah
command to create an output file containing JNI-style native method function prototypes. This is the default output; use of -jni
is optional.
Specifies the path the javah
command uses to look up classes. Overrides the default or the CLASSPATH
environment variable when it is set. Directories are separated by colons on Oracle Solaris and semicolons on Windows. The general format for path is:
Oracle Solaris:
.:your-path
Example: .:/home/avh/classes:/usr/local/java/classes
Windows:
.;your-path
Example: .;C:\users\dac\classes;C:\tools\java\classes
As a special convenience, a class path element that contains a base name of * is considered equivalent to specifying a list of all the files in the directory with the extension .jar
or .JAR
.
For example, if directory mydir
contains a.jar
and b.JAR
, then the class path element mydir/*
is expanded to a A
.jar:b.JAR
, except that the order of jar files is unspecified. All JAR files in the specified directory, including hidden ones, are included in the list. A class path entry that consists of * expands to a list of all the JAR files in the current directory. The CLASSPATH
environment variable, where defined, is similarly expanded. Any class path wild card expansion occurs before the Java Virtual Machine (JVM) is started. A Java program will never see unexpanded wild cards except by querying the environment. For example, by calling System.getenv("CLASSPATH")
.
Specifies the path from which to load bootstrap classes. By default, the bootstrap classes are the classes that implement the core Java platform located in jre\lib\rt.jar
and several other JAR files.
Specifies that old JDK 1.0-style header files should be generated.
Specifies that output files should always be written.
Passes option
to the Java Virtual Machine, where option
is one of the options described on the reference page for the Java application launcher. For example, -J-Xms48m
sets the startup memory to 48 MB. See java
(1).


Toggle navigation
NAT Event Logger
Date:
Source IP:
All
TCP_SYN
UDP
ICMP
TCP_ACK
TCP_ACK_PSH
PROTO41
Source IP:
Destination IP:
Search
Log records:
No data for current selection.


MSI Announce Monster Hunter World: Iceborne Game Bundle
by Mike SandersMSI is no stranger to offering some pretty amazing bundle deals when you purchase their products. For example, only earlier this week they announced that with the purchase of a monitor, you could grab yourself a free gaming chair.
The latest offer, however, certainly comes with a much wider scope than that. By purchasing any of their qualifying products (across a large range) you can grab yourself a free copy of Monster Hunter World including the latest ‘Iceborne’ DLC! Sounds pretty good to me!
MSI Announced Monster Hunter World: Iceborn Bundle!
So, what do you have to do to qualify for your free game? Well, if you purchased any of the qualifying products on (or after) December 7th, all you need to do is get in touch with them and they’ll get the Steam key back to you.
Having seen MSI run similar promotions in the past, they’re usually more than quick to get you your game and, better still, if you ask nicely we have known them to occasionally allow a little ‘wiggle room’ for those of you who just missed out on the start date.
What qualifies though? Well, check out below for all products included in the Monster Hunter World promotion:
Motherboards
Monitors
Notebook/Laptops
Chassis
What Do We Think?
This is a pretty sweet deal in our opinion. While the gaming chair was also good, that was focused on just one specific product. With this offer available across a vast number of MSI technologies, if you’re in the market for something new, then it’s definitely worth checking out!
For more information, you can visit the official promotional website, via the link here!
What do you think? Are you impressed with the offer? – Let us know in the comments!


507_PiscesDream.py
from heapq import heappush, heappop, heapify
from collections import defaultdict, deque
class Solution:
def avoidFlood(self, rains: List[int]) -> List[int]:
lake_rain_days = defaultdict(deque)
for day, lake_id in enumerate(rains):
if lake_id != 0:
lake_rain_days[lake_id].append(day+1)
heap = []
heapify(heap)
ans = []
full = set()
for day, rain_lake in enumerate(rains):
# print('='*100)
# print(heap, ans, full)
if rain_lake > 0:
ans.append(-1)
if rain_lake in full:
return []
full.add(rain_lake)
while lake_rain_days[rain_lake] and lake_rain_days[rain_lake][0] <= day+1:
lake_rain_days[rain_lake].popleft()
if lake_rain_days[rain_lake]:
heappush(heap, (lake_rain_days[rain_lake][0], rain_lake))
else:
if heap:
rain_days, lake = heappop(heap)
next_rain_day = lake_rain_days[lake].popleft()
ans.append(lake)
if lake in full:
full.remove(lake)
else:
ans.append(999)
return ans


Following is a very basic Express app which starts a server and listens on port 3000 for connection. This app responds with Hello World! for requests to the homepage. For every other path, it will respond with a 404 Not Found.
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello World');
})
var server = app.listen(8081, function () {
var host = server.address().address
var port = server.address().port
console.log("Example app listening at http://%s:%s", host, port)
})
Save the above code in a file named server.js and run it with the following command.
$ node server.js
You will see the following output:
Example app listening at http://<IP_ADDRESS>:8081
Open http://<IP_ADDRESS>:8081/ in any browser and see the below result.


ajaxUploadDrop()
Drag and drop files in this box to upload images
Max 20 files, total 8mb and only image files


--- layout: post title: TextMate v2.anything, at last. date: 2011-12-16 09:10:10.000000000 -08:00 type: post published: true status: publish categories: [] tags: [] meta: _edit_last: '1' author: login: admin email<EMAIL_ADDRESS>display_name: admin first_name: Carina C. last_name: Zon ---
After years of being vaporware, TextMate 2.x is out. Well, in alpha. But it exists.
We'll see whether it's too late. SublimeText, among others, has been attracting a lot of notice lately for features that even TM 2.0 won't. Crucially, they also are farther ahead in offering Lion support.
But as a TextMate user, any new release is very good news.


1. Introduction
Create your first project is not complicated but the process requires time and this is the reason to
develop a Template project
using Gradle
.
The advantages of the usage of the Template project are:
-
Build System configured
-
Dependencies defined
-
Tasks defined to interact with the Brick
Further information about Template project
here
2. Create your first project using the Gradle template project
2.1. Clone/Download the project in your computer
The project Template project
is hosted on Github and it possible to download the content of a Git branch or
execute the following statement to clone the project in local.
git clone https://github.com/ev3dev-lang-java/template_project_gradle.git
Now you have you have in local the project. Open the project with your favourite Java IDE.
2.2. Configure the Brick IP
In the project opened, open the file: config.gradle
: to update IP of you Brick connected to the network
where your computer is connected:
remotes {
ev3dev {
host = '<IP_ADDRESS>'
user = 'robot'
password = 'maker'
}
}
to check that the Java IDE connects with the Brick, execute the following Gradle task:
./gradlew testConnection
If the execution of the task was successfully then your computer has a direct connection with your Brick.
2.3. Deploy the default program
The template project includes a Default program named MyFirstRobot.java
.
The example was designed to move a Mobile Robot with 2 motors connected to Port A & Port B.
If you need inspiration to create your Physical robot, LEGO Education
provides some excellent
Building Instructions Guides
Follow the link to build the Base Robot.
MyFirstRobot.java
package examples;
import ev3dev.actuators.lego.motors.EV3LargeRegulatedMotor;
import ev3dev.sensors.Battery;
import lejos.hardware.port.MotorPort;
import lejos.utility.Delay;
public class MyFirstRobot {
public static void main(final String[] args){
System.out.println("Creating Motor A & B");
final EV3LargeRegulatedMotor motorLeft = new EV3LargeRegulatedMotor(MotorPort.A);
final EV3LargeRegulatedMotor motorRight = new EV3LargeRegulatedMotor(MotorPort.B);
//To Stop the motor in case of pkill java for example
Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
public void run() {
System.out.println("Emergency Stop");
motorLeft.stop();
motorRight.stop();
}
}));
System.out.println("Defining the Stop mode");
motorLeft.brake();
motorRight.brake();
System.out.println("Defining motor speed");
final int motorSpeed = 200;
motorLeft.setSpeed(motorSpeed);
motorRight.setSpeed(motorSpeed);
System.out.println("Go Forward with the motors");
motorLeft.forward();
motorRight.forward();
Delay.msDelay(2000);
System.out.println("Stop motors");
motorLeft.stop();
motorRight.stop();
System.out.println("Go Backward with the motors");
motorLeft.backward();
motorRight.backward();
Delay.msDelay(2000);
System.out.println("Stop motors");
motorLeft.stop();
motorRight.stop();
System.out.println("Checking Battery");
System.out.println("Votage: " + Battery.getInstance().getVoltage());
System.exit(0);
}
}
To deploy the example on your brick, open a terminal
and type:
./gradlew deployAndBrickRun
2.4. Add a new Java program
Once you feel comfortable with the Template project and the Gradle Tasks, you could feel the need to add your own program. In this case, add in the project the new Java file like this one:
HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
// Prints "Hello World" to the terminal window.
System.out.println("Hello World");
}
}
In order to run the new program, you will have to open the file MANIFEST.MF and update the field about Main-Class
indicating the new class, in this case HelloWorld
Manifest-Version: 1.0
Implementation-Title: EV3Dev-lang-java // Template project
Implementation-Version: 0.3.0
Implementation-Vendor: YOUR NAME
Main-Class: HelloWorld
To deploy the new example on your brick, open a terminal
and type:
./gradlew deployAndBrickRun
3. Create your first project from scratch
Another alternative is the creation of a project from Scratch using Maven/Gradle.
To start a new project with this library, add the following repository and dependency.
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
<dependency>
<groupId>com.github.ev3dev-lang-java</groupId>
<artifactId>ev3dev-lang-java</artifactId>
<version>2.4.16</version>
</dependency>
Further information about the dependency
4. Playing with more examples
The project has a repository with several examples about the usage of the different libraries.
Visit the repository about examples to download and test more examples.
5. The Next Step
Continue with the next section about: Fundamentals of Robotics


--- date: 2010-02-06T00:00:00Z published: true title: 15 Fantastic Finds on the Google Code Repository url: /2010/02/06/15-fantastic-finds-on-the-google-code-repository/ ---
Google Code Repository is a section of Google that, just like SourceForge, allows developers to upload their code for others to use under license. The repository was launched in 2006 and after searching through its archives, I found a number of interesting scripts and other goodies that would be an asset in any website owner/website builder’s arsenal.
There's a few good links here.


WELCOME TO SARAJEVO
A Film Review by James Berardinelli
RATING: ***1/2 OUT OF ****
United Kingdom/USA, 1997 U.S. Release Date: 11/26/97 (limited) Running Length: 1:40 MPAA Classification: R (Graphic violence, profanity) Theatrical Aspect Ratio: 2.35:1
Cast: Stephen Dillane, Woody Harrelson, Marisa Tomei, Emira Nusevic, Kerry Fox, Goran Visnjic, Emily Lloyd, James Nesbitt Director: Michael Winterbottom Producers: Graham Broadbent, Damian Jones Screenplay: Frank Cottrell Boyce, based on the book "Natasha's Story" by Michael Nicholson Cinematography: Daf Hobson Music: Adrian Johnston U.S. Distributor: Miramax Films In English and Bosnian with subtitles
Considering the wealth of material provided by the recent tragedy in Bosnia, it's surprising that Michael Winterbottom's WELCOME TO SARAJEVO is the first major Western motion picture to take place in the war-torn country. It's possible to argue that the reason for this is that English-speaking directors are intimidated by the sheer scope and complexity of the conflict, and they somehow feel that any attempt on their part to chronicle even an aspect of the war would be inadequate. More likely, however, it's a pragmatic realization -- films about this particular subject are anathema to the public, and, because of that, they are likely to result in an anemic performance at the box-office.
There are many possibilities why movie-goers would react negatively to a film about Bosnia, but the most likely reason has its roots in the way the media covered the conflict. During the early 1990s, we were bombarded by images from the war on a daily basis. All the networks had reporters on the front lines, and, as a result, every nightly newscast featured images of bodies, soundbytes of world leaders condemning the attempted genocide, and pictures of bombed-out cities and villages. But, to keep viewers from turning to another channel, it was all sanitized. There was no sense of true horror; this was half a world away. It didn't seem real, and the television coverage was edited in a manner designed to keep our repugnance at bay. Consequently, the public became apathetic about the Bosnian war, and, after a while, began to tune it out. Yet, on some level, everyone recognized that something genuinely terrible was transpiring; we just didn't want to understand the depth of it. So a movie that challenges us by revealing truths about this conflict threatens our comfort level in a way that SCHINDLER'S LIST (about events that happened 50 years ago) never did. We don't want to know; it's too unpleasant and disquieting.
WELCOME TO SARAJEVO isn't just the story of an outsider's perspective of the conflict; it's a compelling examination of the role the media played in reporting and shaping the average person's views of the war. And, while there's nothing revolutionary or extraordinary about the dramatic narrative, the subtext gives Winterbottom's movie its force. As a tale focused upon the horrors of war, WELCOME TO SARAJEVO doesn't cover any new ground, but as an autopsy of what the conflict meant to a worldwide television audience, this is new and disturbing material. Oddly enough, the film has as much in common with Gus Van Sant's attack on television news, TO DIE FOR, as it does with pictures like VUKOVAR and PRETTY VILLAGE, PRETTY FLAME.
Unlike those two films and numerous others that show the Bosnian war from an insider's viewpoint, WELCOME TO SARAJEVO makes its main character a British TV news reporter. The movie does not delve deeply into the reasons for the conflict, nor does it burden viewers with lengthy discourses on the centuries-old racial and religious strife. Instead, we are presented with a shocking snapshot of how things were during several months in late 1992 and early 1993. We witness the bodies, the carnage, and, most chillingly, concentration camp images that echo those seen in post-World War 2 photographs.
The British newsman at the center of WELCOME TO SARAJEVO is Michael Henderson (Stephen Dillane), whose character is based on a real-life individual (just as the movie's script was developed from the non- fictional account, "Natasha's Story"). He's a veteran war reporter stationed in Sarajevo along with his cameraman, Gregg (James Nesbitt), and his producer, Jane (Kerry Fox). Other reporters include the cynical American Jordan Flynn (Woody Harrelson) and a freelancer named Annie (Emily Lloyd), who is young and driven. For his part, Michael is growing disenchanted with his network's coverage of the news, and this leads to his involvement in an ongoing story about a front-line orphanage. What begins as a series of reports turns into a crusade, with Michael imperiling both his career and his life to get one 9-year old girl, Emira (Emira Nusevic), out of the country at a time when the official policy is "no evacuation." WELCOME TO SARAJEVO charts Michael's progress from dispassionate watcher to activist.
Throughout the film, we are given glimpses of the way the journalists on the scene report the news, and what becomes of their stories. One particularly graphic massacre is bumped from the top of the hour in favor of an item about the separation of the Duke and Duchess of York. Michael's producer, Jane, warns him that his crusade about the orphanage may be falling on deaf ears. It's all about ratings. Information is less important than entertainment, and it's difficult to make such a grotesque, twisted war, where sniper fire kills innocent bystanders, entertaining. By using a combination of real archived video, faux video filmed specifically for this movie, and normal 35 mm footage, Winterbottom creates a kaleidoscope of juxtaposed images. We're never sure what's true and what isn't -- whether a video of writhing, bloody bodies is genuine or a realistic recreation. This technique further illustrates how blurred the line has become between authentic, hard news and its controlled, entertainment-controlled counterpart.
In previous films like GO NOW and JUDE, Winterbottom has shown a keen understanding of character and an unwillingness to toy with an audience's emotions through overt manipulation, and both of these characteristics are evident in WELCOME TO SARAJEVO. The main characters of Michael, Emira, and Flynn are all well-defined and strongly portrayed. Stephen Dillane is entirely believable as the lead, and Woody Harrelson, who is slowly developing into an effective dramatic performer, fleshes out Flynn. Young Emira Nusevic is heartbreaking in her pivotal role. There are also several noteworthy supporting players, including Goran Visnjic as a citizen of Sarajevo who works as Michael's driver and Marisa Tomei as an idealistic "do-gooder."
WELCOME TO SARAJEVO debuted at 1997's Cannes Film Festival, where it received numerous plaudits but no awards. This impeccably-crafted movie is a daring and powerful piece of work, not only for its willingness to film an unpopular subject, but for the unique perspective it offers, and it stands proudly alongside Winterbottom's other films. Hopefully, neither the title nor the subject matter will deter viewers from experiencing this memorable motion picture.
Copyright 1997 James Berardinelli
- James Berardinelli e-mail<EMAIL_ADDRESS>Now with more than 1300 reviews... The ReelViews web site: http://movie-reviews.colossus.net/
"For me, the cinema is not a slice of life, but a piece of cake."
- Alfred Hitchcock
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Keeping loyal customers is less expensive than getting new ones. Research shows that it costs about five times more to attract new customers than to retain existing business. Satisfied customers become devoted buyers when a business is trustworthy and provides good customer service. We also provide customer support.
We provide free relationship management & customer care support to our Core clients.
Customer engagement is crucial part of any business. Effective handling of query and providing timely solution creates trust among customers. Nowadays, Customers don’t want to just press mobile keyword bottoms to reach to the Customer care.
We provide handy and user friendly customer care point for our core customer. Our highly trained and skilled staffs can serve your customer telephonically and can provide better user and customer care experience.
Contact Us Or Check Out FAQ-for Usual Questions


Over at Airy Persiflage, Walter O'Hara—known to his friends as Mister Nizz—gives a fine rendition of “I Had A Hammer”. I am very fond of the grain of his voice, which has the curious quality of making me believe every word of what he tells me. There is also a pleasingly ramshackle air to his podcast, as if he has simply plopped himself down in front of a microphone for a few minutes in between feeding the hens or fixing the roof. (I should make it plain here that I am wholly unacquainted with Mr O'Hara and have no idea how he spends his days.)
Links to his earlier readings from the Hooting Yard Treasury O’ Prose can be found here.


|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object EigenMeat.EigenMaze.Plane
Helper class for various triangle-based algorithms.
| Constructor Summary | |
Plane()
Default constructor. |
|
Plane(float a,
float b,
float c,
float d)
Constructor that allows setting of the plane variables (Ax+By+Cz+D=0) |
|
Plane(Vect3d normal,
float distance)
Constructor. |
|
Plane(Vect3d normal,
Vect3d point)
|
| Method Summary | |
boolean |
doesLineIntersect(Vect3d p1,
Vect3d p2)
|
float |
getA()
Get the A component. |
float |
getB()
Get the B component. |
float |
getC()
Get the C component. |
Vect3d |
getNormal()
Returns the plane's normal. |
float |
getPlaneDistance()
Returns the plane distance. |
float |
getPointDistance(Vect3d point)
|
boolean |
isPointInFront(float x,
float y,
float z)
Checks to see if a point is in front of the plane/ |
boolean |
isPointInFront(Vect3d point)
Checks to see if a point is in front of the plane. |
void |
normalize()
Normalize the plane. |
void |
set(float a,
float b,
float c,
float d)
Sets the planes variables after Plane object is created. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public Plane()
public Plane(float a, float b, float c, float d)
a
- Ab
- Bc
- Cd
- Dpublic Plane(Vect3d normal, float distance)
normal
- plane normaldistance
- plane distancepublic Plane(Vect3d normal, Vect3d point)
| Method Detail |
public void set(float a, float b, float c, float d)
a
- Ab
- Bc
- Cd
- Dpublic float getA()
public float getB()
public float getC()
public float getPlaneDistance()
public Vect3d getNormal()
public float getPointDistance(Vect3d point)
public void normalize()
public boolean isPointInFront(Vect3d point)
point
- the point
public boolean isPointInFront(float x, float y, float z)
x
- x coordinatey
- y coordinatez
- z coordinate
public boolean doesLineIntersect(Vect3d p1, Vect3d p2)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


Intro til ReactJS
for C# udviklere
Ditmer Academy 2016
(Use touchdevice or arrowkeys to navigate)
- Hvad? (Hvad er ReactJS?)
- Hvorfor? (Hvorfor bruge ReactJS?)
- Hvordan? (Hvordan kommer man igang?)
- Shaving the Yak
- Avoid shaving the Yak
- Vis mig nu bare koden!
- Licens - issue?
- What's next?
Hvad?
Et JavaScript bibliotek til at skabe UI
Det beskrives ofte som V'et i MVC
Data-first paradigm
(That's not a thing!?)
Data er state er data er state
DOM first > Data-first
Vi modificerer ikke DOM'en, vi modificerer data og DOM'en følger (magisk) med.
Data-first paradigm
JQuery:
var configDiv = "div[class=group]:last";
$(configDiv).find('div').first().html(addTab(index, sortIndex));
ReactJS:
configurations.push(defaultConfig());
this.setState({model : configurations });
Hvorfor bruge ReactJS. Top 3 grunde.
1. Fast
2. Fast
3. FAST
Andre grunde til at bruge ReactJS
Benyt den CPU power/RAM der er i klienten
Det er let at gemme vores frontend state og genskabe den.
New and exciting
Fordele / ulemper
FOR:
JavaScript / JSX / ReactJS er kun et viewlag
IMOD:
JavaScript / JSX / ReactJS er kun et viewlag
JavaScript development explained:
Editor: Atom
Udviklet af GitHub
Bygget helt i JavaScript (Electron http://electron.atom.io/)
Forstår ReactJS JSX syntax, inkl. code completion
Editor: Visual Studio Code
Udviklet af Microsoft
Free. Open source. Runs everywhere.
Forstår ReactJS JSX syntax, inkl. code completion
Hvorfor overhovedet bruge Atom eller Code?
Hvorfor have en ekstra editor ved siden af VS
Hvorfor sætte sig ind i en ny IDE
Traditionel webapp (f.eks. MVC + JQuery)
- CLASS og ID bruges i HTML for at kunne fanges med en JQuery selector
- HIDDEN fields bruges til lagre en initiel værdi og/eller sikre POST resultat
- Imperative beskrivelse af flow
$( document.body ).click(function() {
$( ".myClass" ).each(function( i ) {
if ( this.style.color !== "blue" ) {
this.style.color = "blue";
} else {
this.style.color = "";
}
});
});
- State er udtrykt i de individuelle DOM effekter (eller i HIDDEN fields)
ReactJS - Virtual DOM
Re-render alt (in-memory) hver gang data ændre sig:
- "Data-first" tankegang
- Declarative beskrivelse af UI flow
- En helt ny app renderes i memory
- Det mindste sæt af ændringer beregnes og pushes til DOM'en
Virtual DOM fordele
- Mere læsbar kode
Det er tydeligt hvad hver komponent gør
- Hurtigt
Skrivning til DOM'en håndteres af ReactJS
Hvordan?
Thinking in React
https://facebook.github.io/react/docs/thinking-in-react.html
Thinking in React
Thinking in React
Data / State
var model = {
masterdata: {
"weeks": [{ "description": "Uge 7 (ons-lør)", "key": 925 },
{ "description": "Uge 8 (ons-lør)", "key": 926 }],
"countries": [{ "name": "Denmark", "key": 1, "currency": "DKK", "rate": 7.4356 },
{ "name": "Sweden", "key": 2, "currency": "SEK", "rate": 9.5849 },
{ "name": "Norway", "key": 3, "currency": "NOK", "rate": 9.2609 }],
"selectedCountry": 1
},
"route": {
"description": "CPH-SZG (SK7881) - SZG-CPH (SK7882)",
"key": 314,
"destinations": [{ "name": "Bad Gastein", "key": 423,
"hotels": [{ "name": "Hotel Elisabethpark", "key": 962, "open": true,
"roomTypes": [{ "description": "Dobbeltværelse u. dusch/wc m. opredning", "key": 443,
"discounts": [{ "week": 925, "key": 2342, "units": 2, "price": 1000, "discount": 0 },
{ "week": 926, "key": 2343, "units": 1, "price": 1100, "discount": 0 }]
}, { "description": "Dobbeltværelse m. dusch/wc", "key": 343,
"discounts": [{ "week": 925, "key": 2344, "units": 0, "price": 1300, "discount": 0 },
{ "week": 926, "key": 2345, "units": 1, "price": 1300, "discount": 0 }]
}]
}......
JSX
- HTML lignende markup
- UI beskrives deklarativt inline i JS kode
- Relativt simpelt at forstå
- Oversættes til Vanilla-JavaScript for at det kan kører i alle browsere
JSX
Hello {user.name}, welcome to the system. Click here.
JSX
HelloWorld.jsx:
Click here.
Greeting.jsx:
Hello {this.props.name}, welcome to the system.
JSX
Actions
var actions = {
update_country: function update_country(countryKey) {
self.state.model.masterdata.selectedCountry = countryKey;
self.setState({ model: self.state.model });
}
Passing actions to your components
this.props.myactions.update_country(event.target.value);
Shaving the Yak
"Any apparently useless activity which, by allowing you to overcome intermediate difficulties, allows you to solve a larger problem."
Shaving the Yak
- npm (NodeJS Package Manager)
- Babel (The compiler for writing next generation JavaScript)
- Grunt (The JavaScript Task Runner)
- GulpJS (the streaming build system)
- + "Linting" (analyse code for potential errors)
- + "Autoprefixer" (apply CSS prefixes)
- Webpack - loaders/tasks (Module Bundler)
- Browserify (Bundling of your dependencies)
- package.json "scripts": {"webpack": "webpack"} - npm run webpack
- TeamCity: install npm, NodeJS plugin, Build step
Shaving the Yak
- Start med at installere NodeJS fra https://nodejs.org/en/
- "npm init" for at skabe "package.json"
- "npm install --save-dev babel-loader"
Avoid shaving the Yak
- Start et .NET MVC project
- NuGet: React.Web.Mvc4 (Transpiler/Taskrunner)
- (Optional) NuGet: System.Web.Optimization.React (Bundler)
https://reactjs.net/
React.Web.Mvc4
"The files will automatically be compiled to JavaScript and cached server-side. No precompilation required. Perfect for development."
HelloWorld.jsx
var HelloWorld = React.createClass({
render: function() {
return Hello world!
;
}
})
ReactDOM.render(
,
document.getElementById('helloApp')
);
https://reactjs.net/getting-started/tutorial_aspnet4.html
Hvordan kan man kalde .jsx scripts direkte?
Web.config:
Mindre tweak...
.\App_Start\ReactConfig.cs:
public static class ReactConfig
{
public static void Configure()
{
ReactSiteConfiguration.Configuration.SetReuseJavaScriptEngines(false);
}
};
System.Web.Optimization.React
// In BundleConfig.cs
bundles.Add(new JsxBundle("~/bundles/main").Include(
// Add your JSX files here
"~/Scripts/HelloWorld.jsx",
"~/Scripts/AnythingElse.jsx",
// You can include regular JavaScript files in the bundle too
"~/Scripts/ajax.js",
));
@Scripts.Render("~/bundles/main")
Bundle - for production
Ulemper ved at bruge React.NET
Ingen support for JavaScript Modules
import { Provider } from 'react-redux';
Ingen compile/transpile fejlbeskeder
SyntaxError: ./ReactYak/source/hello.jsx: Unexpected token, expected } (6:63)
4 | class Hello extends React.Component {
5 | render() {
> 6 | return Hello {this.props.name();}
| ^
7 |
8 | }
9 | }
:-(
Licens. Do you agree....
Yes yes yes - next next next
Additional Grant of Patent Rights Version 2
"Software" means the React software distributed by Facebook, Inc.
Facebook, Inc. ("Facebook") hereby grants to each recipient of the Software
("you") a perpetual, worldwide, royalty-free, non-exclusive, irrevocable
(subject to the termination provision below) license under any Necessary
Claims, to make, have made, use, sell, offer to sell, import, and otherwise
transfer the Software. For avoidance of doubt, no license is granted under
Facebook's rights in any patent claims that are infringed by (i) modifications
to the Software made by you or any third party or (ii) the Software in
combination with any software or other technology.
The license granted hereunder will terminate, automatically and without notice,
if you (or any of your subsidiaries, corporate affiliates or agents) initiate
directly or indirectly, or take a direct financial interest in, any Patent
Assertion: (i) against Facebook or any of its subsidiaries or corporate
affiliates, (ii) against any party if such Patent Assertion arises in whole or
in part from any software, technology, product or service of Facebook or any of
its subsidiaries or corporate affiliates, or (iii) against any party relating
to the Software. Notwithstanding the foregoing, if Facebook or any of its
subsidiaries or corporate affiliates files a lawsuit alleging patent
infringement against you in the first instance, and you respond by filing a
patent infringement counterclaim in that lawsuit against that party that is
unrelated to the Software, the license granted hereunder will not terminate
under section (i) of this paragraph due to such counterclaim.
A "Necessary Claim" is a claim of a patent owned by Facebook that is
necessarily infringed by the Software standing alone.
A "Patent Assertion" is any lawsuit or other action alleging direct, indirect,
or contributory infringement or inducement to infringe any patent, including a
cross-claim or counterclaim.
Kort sagt:
Facebook, Inc. hereby grants you irrevocable license - subject to the termination provision below
The license granted hereunder will terminate [if your product takes] a direct financial interest in, any Patent
Assertion: (i) against Facebook or any of its subsidiaries or corporate
affiliates
"Du må ikke, lave noget der konkurerer med facebook eller sagsøge facebook for patentbrud."
"De siger på nettet..."
This is the reason why both Google and Microsoft employees are not allowed to use React.js in their work - according to Rob Eisenberg, creator of the Aurelia framework and a former member of the Angular 2 development team. - Written by Jorgé on Saturday July 16, 2016
Er det så slemt?
Arnt Schøning
Office Delve
til Office 365 og SharePoint
Arnt Schøning - Tweet
Office Delve
What's next for ReactJS?
React Fiber
React Fiber is an ongoing reimplementation of React's core algorithm. It is the culmination of over two years of research by the React team.
The goal of React Fiber is to increase its suitability for areas like animation, layout, and gestures. Its headline feature is incremental rendering: the ability to split rendering work into chunks and spread it out over multiple frames.
Other key features include the ability to pause, abort, or reuse work as new updates come in; the ability to assign priority to different types of updates; and new concurrency primitives.
What's next for React Developers
Mere info:
- https://facebook.github.io/react
- CodeSchool - Powering Up With React
Spørgsmål?


The functionality of this application has been grouped into service classes.
This package contains all external client entry points which
require orchestration of multiple service calls. This includes
all WebService calls made from AutoCAD as well as the primary DWR
calls. Simple CRUD calls are exposed to DWR directly in the Storage service.
The WebService calls are annotated with @PayloadRoot.
All exposed DWR calls are included with the dwr:remote tag in spring configuration.


|
CMSIS-Pack
Version 1.5.0
Delivery Mechanism for Software Packs
|
The element /package/generators/generator specifies a tool or utility that is used to generate and/or configure software (source code, header files, configuration files, etc.) in the context of a project. For this purpose, a generator package description file (GPDSC) needs to be created (see <gpdsc>). The GPDSC file details the selected device, components, project files and conditions, as well as information about the generator and how it can be launched again for iterative development cycles. A GPDSC file follows the same schema as a static PACK. However, the files generated by the utility are not installed and managed centrally in the PACK folder, but locally within the project folder.
A generator can be associated with a component by it's name. Selecting the component will automatically include the files provided by the generator in the project. If the specified GPDSC file is not present, the generator command is executed by the environment to generate the files and GPDSC. In this way project specific configurations can be made, files being generated and included and maintained as part of the project.
Example Generator Package Description File (gpdsc)
Grouping element for generators. Only one such group can exist in a PACK.
| Parent | Chain | ||
|---|---|---|---|
| package | /package | ||
| Child Elements | Description | Type | Occurrence |
| generator | Description of the generator and the related files | GeneratorType | 1..* |
The following variables can be used in the elements <command>
, <workingDir>
, <argument>
, <gpdsc>
:
| Variable | Description |
|---|---|
| $P | PATH to current project |
| #P | PATH and name of the current project |
| $S | PATH to PACK folder containing the Device description used by the current project |
| $D | Name of the device configured in the current project |
The generator section is used to provide the details about the tool that has been used to create the GPDSC file. At least one generator element must exist.
| Parent | Chain | ||
|---|---|---|---|
| generators | /package/generators | ||
| Attributes | Description | Type | Use |
| id | Identifier of the generator tool. Can be used by other elements to determine the generator. | xs:string | required |
| Gvendor | Vendor name of the generator tool. | xs:string | optional |
| Gtool | Plain text name of the generator. | xs:string | optional |
| Gversion | Version of the generator tool. | xs:string | optional |
| Child Elements | Description | Type | Occurrence |
| description | Briefly describes the generator tool. | xs:string | 0..1 |
| select | Complex type specifying the configured device. A device is uniquely identified by vendor, name or variant and processor name in case of devices with multiple processors. | GeneratorSelectType | 0..1 |
| workingDir | Directory to be set as current directory before launching the <command> . This is either an absolute or relative path to PDSC or GPDSC file. If not specified, the current directory is the directory of the project configured by the environment. | xs:string | 0..1 |
| command | Deprecated; use exe, web and/or eclipse. Invocation command for the generator tool. | xs:string | 0..1 |
| arguments | Deprecated; use argument tags under exe, web and/or eclipse. | GeneratorCommandArgumentsType | 0..1 |
| gpdsc | Path and name of the GPDSC that the generator creates and updates. The path is either absolute or relative to the working directory. If no explicit gpdsc file is provided, then a gpdsc file named after the project with extension gpdsc in the working directory is assumed (<project> .gpdsc). | xs:string | 0..1 |
| exe | Section to specify a binary/executable to generate the GPDSC file. | xs:string | 0..1 |
| eclipse | Section to specify an Eclipse plug-in to generate the GPDSC file. | xs:string | 0..1 |
| web | Section to specify a web page to generate the GPDSC file. | xs:string | 0..1 |
| project_files | Grouping element for all project files generated by the tool. | group | 0..1 |
| files | Grouping element for generator tool files. | group | 0..1 |
| extensions | Generator vendor specific section ignored by other tools | N/A | 0..1 |
This element contains information about the vendor and device the GPDSC file has been generated for. Only one such element can exist in <generators>
.
Example:
| Parent | Chain | ||
|---|---|---|---|
| generator | /package/generators/generator | ||
| Attributes | Description | Type | Use |
| Dvendor | Vendor name of the targeted device. Use predefined values as listed in the table Device Vendor. | DeviceVendorEnum | required |
| Dname | Name of the targeted device. If no Dvariant is specified this tag is required | xs:string | optional |
| Dvariant | Name of the targeted device variant. If a variant is specified, the device name will be ignored and the variant rules. If no Dname is specified, this tag is required. | xs:string | optional |
| Pname | Name of the targeted processor of a device with multiple processors. For devices with multiple processors this tag is required. | xs:string | optional |
This element contains information about the generation binary/executable.
Example:
| Parent | Chain | ||
|---|---|---|---|
| generator | /package/generators/generator | ||
| Child Elements | Description | Type | Occurrence |
| command | Invocation command for the generator tool. Command line options should be passed via <arguments> . | GeneratorCommandType | 1..4 |
| argument | Arguments passed along with the <command> of the format <argument switch="-data">myFileName</argument> . Path information for files can be specified absolute or relative to the location (path) of the GPDSC file. | GeneratorCommandArgumentType | 1..* |
This element contains information about the Eclipse based generation tool.
Example:
| Parent | Chain | ||
|---|---|---|---|
| generator | /package/generators/generator | ||
| Attributes | Description | Type | Use |
| plugin | Name of the plugin. | xs:string | required |
| class | Plugin's class name. | xs:string | required |
| method | Method used to launch the plugin. | xs:string | required |
| Child Elements | Description | Type | Occurrence |
| argument | Arguments passed to the plugin. | GeneratorCommandArgumentType | 1..* |
This element contains information about the web generation application.
Example:
| Parent | Chain | ||
|---|---|---|---|
| generator | /package/generators/generator | ||
| Attributes | Description | Type | Use |
| url | Specifies the URL of the web service. | URL | required |
| Child Elements | Description | Type | Occurrence |
| argument | Arguments passed along to the web service. | GeneratorCommandArgumentType | 0..* |
This element describes a single command line for launching the generator. Arguments should be passed along with an argument.
Example
| Parent | Element Chain | ||
|---|---|---|---|
| exe | /package/generators/generator/exe | ||
| Current | Description | Type | |
| command | generator command line | xs:string | |
| Attributes | Description | Type | Use |
| host | Specifies the host operating system. Possible values are all , win , linux , mac , other . Only available with element exe. | xs:string | optional |
This element describes one or multiple arguments passed along with the parent element.
Example
| Parent | Element Chain | ||
|---|---|---|---|
| exe, eclipse, web | /package/generators/generator/exe, /package/generators/generator/eclipse, /package/generators/generator/web | ||
| Current | Description | Type | |
| argument | value of argument without command line switch | xs:string | |
| Attributes | Description | Type | Use |
| host | Specifies the host operating system. Possible values are all , win , linux , mac , other . Only available with element command. | xs:string | optional |
| switch | Specifies the command line switch separated from the argument value. Not available with element eclipse. | xs:string | optional |
The group project_files specifies all files that are required for the project setup. Only one such group can exist.
Example
| Parent | Element Chain | ||
|---|---|---|---|
| generator | /package/generators/generator | ||
| Child Elements | Description | Type | Occurrence |
| file | Frame for files created by the generator and used in a project. | group | 0..1 |
The group files specifies files that are required by the generator tool. Only one such group can exist.
Example
| Parent | Element Chain | ||
|---|---|---|---|
| generator | /package/generators/generator | ||
| Child Elements | Description | Type | Occurrence |
| file | Frame for files used by the generator. | group | 0..1 |
This element contains information about files used by a generator.
Example
| Parent | Element Chain | ||
|---|---|---|---|
| files | /package/generators/generator/files | ||
| Attributes | Description | Type | Use |
| condition | Reference using the name of the respective condition specified in the conditions section of this package (/package/conditions). If the condition resolves to false, then the element will be ignored and treated as if not present. | xs:string | optional |
| category | Describes the file type (for example: doc, header, library). You can use predefined values as listed in the table File Categories, however, this is not mandatory. | xs:string | required |
| name | Can consist of the path (relative to the PACK base directory) and the file name with extension. | xs:string | required |
| version | File-specific version information. The version format is described in Version Type. | VersionType | optional |


"Land of the Free,"A Short Film by John Jensen
(Google video) "Land of the Free" A Short Film by John Jensen Comrades, there may be a token black thrown into this 13-minute video from "Forge Films," and an Asian US resident gets rounded up first -- but all the rest are armed White men. I did not see one Jewish name among the actors, producers or crew of "land of the Free." (This video apparently was just released on September 16th.) For your own further reference, here is a fact-packed video that, unless your "horror filter"' is blocking it out, should make you realize how close we are to the last edge. Bush can declare martial law for an economic emergency. This evening the website goes up at 9 pm US East Coast time -- and an explosive radio ad. Thanks for your feedback and financial support as I and the De Nugent Team worked to put all this together -- in time, I hope, to prevent a horrible fate for us all. Will you help or will you run, a yellow coward, in the decisive hour? I am sure you will not. John de Nugent P.S. The Judeo-Finnish newspapers are already screeching that the most dangerous thing on the Net is racist "hate speech," followed by child porn![sic] |


Luga Data was written with few, simple, goals in mind. Make it super easy to fetch either JSON or XML from a REST endpoint and quickly generate HTML was at the top of the list.
For the sake of the demo we are using a static XML file here. All you need to do to get up and running is to add this JavaScript snippet to the page:
(function(){
"use strict";
const peopleDs = new luga.data.XmlDataSet({
uuid: "people",
url: "../test/fixtures/data/people.xml",
path: "//ladies/person"
});
luga.dom.ready(function(){
// Fetch data only once the DOM is ready
peopleDs.loadData();
});
}());
Another <scrip> tag containing the Handlebars template:

Finally, you add an HTML tag with some custom attributes:

Below you can see the end result:
Now that you are up and running, you may want to dig a bit deeper, understand why we passed a path to the constructor, what you can do with a region or take a look at databinding.


Automating the boring stuff : Data scraping from Outlook, IMAP & Two Factor Authentication
October 22, 2017Prerequisites:
- Python 2.x
The article is going to be a short summary of what I did for a friend to automate his data scraping needs. The task was to read IDs/keywords from an Excel sheet and populate data against those IDs by searching and scraping data from matched emails. Though I won’t be covering all the points but I will cover the challenges I faced and the solutions to those challenges.
The first thing that comes to mind for such a task is the IMAP package in Python. So, I started my tmux session, fired up VIM and started working on the script. With the help of IMAP package, I was able to access the Outlook/Office 365 mailbox. Here is a small snippet for login:
def outlook_login(username, password):
"""Signs in to a mailbox using IMAP.
:param username:
Username of the mailbox.
:param password:
Password of the mailbox.
:return:
IMAP object on successful login else exits script.
"""
try:
imap = imaplib.IMAP4_SSL(
config.imap_server,
config.imap_port
)
r, d = imap.login(username, password)
print d[0]
return imap
except Exception as e:
print e, " Aborting..."
exit()
def main():
imap =<EMAIL_ADDRESS>'password')
Challenge 1: Two factor authentication
The script that I was creating didn’t take 2FA into account. Though after a bit of searching, I found out there was a simple solution to it.
Solution: App passwords. App password allows access to the office 365 account in client applications like Outlook, word etc. In my case, I just had to replace the account password with the App password and I was good to go.
After the login, I quickly realized that the mailbox I had logged in was not the one I wanted to access. I wanted to access the shared mailboxes provided by Office 365.
Challenge 2: Sign in to a shared mailbox
Solution: The solution to this problem was also as easy as putting the shared mailbox email/alias after a \
like this<EMAIL_ADDRESS>In my case, it was something like: Gourav.chawla<EMAIL_ADDRESS>Once that was taken care of and I was able to access the correct mailbox, I had to search emails by searching for a keyword in the email’s subject. Here is a snippet for searching:
def main():
# ...Code removed for brevity.
# Selects the Inbox for further operations
print "Selected Inbox..."
imap.select("Inbox")
# Search for a keyword in all the email's subject
keyword = 'Delivery'
typ, data = imap.search(
None, 'All',
'(SUBJECT "'+keyword+'")')
The above search, if successful, returns a list of string like this: ['142 123 111']
Now, using these ids, I can fetch the email from the server and scrape the content I need. Here is the snippet for fetching the email and then parsing it:
def getEmail(imap, id):
"""Fetches email from the server.
:param imap:
IMAP class instance.
:param id:
The id of the email fulfilling the search criteria.
:return:
Email message.
"""
r, d = imap.fetch(id, "(RFC822)")
raw_email = d[0][1]
email_message = email.message_from_string(raw_email)
return email_message
def mailbody(email_message):
"""Extracts mailbody from Email message.
:param email_message:
Email message returned by getEmail function.
:return:
Email body.
"""
body = None
if email_message.is_multipart():
for part in email_message.walk():
if part.is_multipart():
for subpart in part.walk():
if subpart.get_content_type() == 'text/html':
body = subpart.get_payload(decode=True)
content_transfer_encoding = subpart.get('Content-Transfer-Encoding')
elif part.get_content_type() == 'text/html':
body = part.get_payload(decode=True)
content_transfer_encoding = part.get('Content-Transfer-Encoding')
elif email_message.get_content_type() == 'text/html':
body = email_message.get_payload(decode=True)
content_transfer_encoding = email_message.get('Content-Transfer-Encoding')
else:
body = email_message.get_payload(decode=True)
content_transfer_encoding = email_message.get('Content-Transfer-Encoding')
return body
def parse(imap, id):
"""Fetches email from server and returns required data.
:param imap:
IMAP class instance.
:param id:
Id of email matched by search criteria.
:return:
Dictionary containing required data.
"""
result = {}
email_message = getEmail(imap, id)
result['From'] = email_message['From']
result['To'] = email_message['To']
result['Date'] = parser.parse(email_message['Date'])
result['Subject'] = (decode_header(email_message['Subject'])[0][0])
result['Body'] = mailbody(email_message)
return result
def main():
# ...Code removed for brevity
# Sends empty string at 0th index of data if nothing is found
if data[0] == '':
print "Could not find the email for keyword: %s" % keyword
else:
for id in data[0].split():
result = parse(imap, id)
print "\n", result['To'], result['Subject'], "\n", result['Body']
The above code fetches the email and stores it in a dictionary called, ‘result’. Now, whatever information you need could be stored in an excel sheet by using ‘openpyxl’.
In the above code, you might have noticed that I’m extracting the HTML content of email body. This is because, there was a table in the body which I had to scrape. I used BeautifulSoup to do that.
If you have any questions, feel free to ask them in the comments.
Comments !


Home / Garden Set / Garden Chair
SKU: #3516
$59
And remember, don't do anything that affects anything, unless it turns
out
you were supposed to, in which
case, for the love of God, don't not do it!
Okay, I like a challenge.


| Overview | Module | Use | Devguide | Index |
| Services' Summary | Interfaces' Summary | Properties' Summary | Services' Details | Interfaces' Details | Properties' Details |
| service DataPilotField |
|
| Exported Interfaces - Summary | |
| ::com::sun::star::container::XNamed | provides access to the name of the data pilot field. |
| ::com::sun::star::beans::XPropertySet | provides access to the properties. |
| XDataPilotField | |
| XDataPilotFieldGrouping |
| Properties' Summary | |
| DataPilotFieldOrientation Orientation |
specifies the orientation of the field. |
| GeneralFunction Function |
specifies the function used to calculate results for this field. |
| sequence< GeneralFunction > Subtotals |
[ OPTIONAL ] specifies the functions used to calculate subtotals for this field. |
| string SelectedPage |
[ OPTIONAL ] specifies the selected page which is used to filter the data pilot. |
| boolean UseSelectedPage |
[ OPTIONAL ] specifies whether to use the selected page to filter the data pilot or show all. |
| string UsedHierarchy |
[ OPTIONAL ] specifies which hierarchy of the dimension is used. |
| boolean HasSortInfo |
[ OPTIONAL ] specifies whether this field has sorting information. |
| DataPilotFieldSortInfo SortInfo |
[ OPTIONAL ] controls how the field's items are sorted. |
| boolean HasLayoutInfo |
[ OPTIONAL ] specifies whether this field has layout information. |
| DataPilotFieldLayoutInfo LayoutInfo |
[ OPTIONAL ] controls how the field's items are laid out in the result table. |
| boolean HasAutoShowInfo |
[ OPTIONAL ] specifies whether this field has auto show information. |
| DataPilotFieldAutoShowInfo AutoShowInfo |
[ OPTIONAL ] enables the automatic inclusion of only a number of items with the highest or lowest result values. |
| boolean HasReference |
[ OPTIONAL ] specifies whether this field has a reference. |
| DataPilotFieldReference Reference |
[ OPTIONAL ] controls how the results are shown in relation to a selected reference result. |
| boolean IsGroupField |
[ OPTIONAL ] specifies whether this field is a group field. |
| DataPilotFieldGroupInfo GroupInfo |
[ OPTIONAL ] contains the grouping information of the DataPilot field. |
| boolean ShowEmpty |
[ OPTIONAL ] specifies whether to show this field also if it is empty or not. |
| Exported Interfaces - Details | |
::com::sun::star::container::XNamed
|
|
::com::sun::star::beans::XPropertySet
|
|
XDataPilotField
|
|
XDataPilotFieldGrouping
|
| Properties' Details | |
Orientation
|
|
Function
|
|
Subtotals
|
|
SelectedPage
|
|
UseSelectedPage
|
|
UsedHierarchy
|
|
HasSortInfo
|
|
SortInfo
|
|
HasLayoutInfo
|
|
LayoutInfo
|
|
HasAutoShowInfo
|
|
AutoShowInfo
|
|
HasReference
|
|
Reference
|
|
IsGroupField
|
|
GroupInfo
|
|
ShowEmpty
|
Copyright © 2013, The Apache Software Foundation, Licensed under the Apache License, Version 2.0. Apache, the Apache feather logo, Apache OpenOffice and OpenOffice.org are trademarks of The Apache Software Foundation. Other names may be trademarks of their respective owners.


doctype 5 html head title Page Title body.l-960 python comments_enabled = True .section H2.caption: a href="#" New Mako Template Preprocessor article | The new Mako template preprocessor has been released today. if comments_enabled a.comments(href="#") View comments ## Mako syntax this is x: ${x} pythagorean theorem: ${pow(x,2) + pow(y,2)} ${"this is some text" | u} % if x==5: this is some output % endif % for a in ['one', 'two', 'three', 'four', 'five']: % if a[0] == 't': its two or three % elif a[0] == 'f': four/five % else: one %endif % endfor %% some text %% some more text


CHAPTER 201E
HOUSING FINANCE AND DEVELOPMENT CORPORATION
REPEALED. L 1997, c 350, §18.
Cross References
For present provisions, see chapter 201H.


Class: Aws::ServiceDiscovery::Types::DnsConfig
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb |
Overview
A complex type that contains information about the Amazon Route 53 DNS records that you want Cloud Map to create when you register an instance.
The record types of a service can only be changed by deleting the
service and recreating it with a new Dnsconfig
.
Constant Summary
Instance Attribute Summary
-
#dns_records ⇒ Array<Types::DnsRecord>
rw
An array that contains one
DnsRecord
object for each Route 53 DNS record that you want Cloud Map to create when you register an instance. -
#namespace_id ⇒ String
rw
Use NamespaceId in [Service][1] instead..
-
#routing_policy ⇒ String
rw
The routing policy that you want to apply to all Route 53 DNS records that Cloud Map creates when you register an instance and specify this service.
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Aws::Structure#to_h. |
Instance Attribute Details
#dns_records ⇒ Array
<Types::DnsRecord> (rw)
An array that contains one DnsRecord
object for each Route 53 DNS
record that you want Cloud Map to create when you register an
instance.
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 596
class DnsConfig < Struct.new( :namespace_id, :routing_policy, :dns_records) SENSITIVE = [] include Aws::Structure end
#namespace_id ⇒ String
(rw)
Use NamespaceId in Service instead.
The ID of the namespace to use for DNS configuration.
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 596
class DnsConfig < Struct.new( :namespace_id, :routing_policy, :dns_records) SENSITIVE = [] include Aws::Structure end
#routing_policy ⇒ String
(rw)
The routing policy that you want to apply to all Route 53 DNS records that Cloud Map creates when you register an instance and specify this service.
WEIGHTED
for the routing policy.
You can specify the following values:
MULTIVALUE
: If you define a health check for the service and the health check is healthy, Route 53 returns the applicable value for up to eight instances.
For example, suppose that the service includes configurations for
one A
record and a health check. You use the service to register
10 instances. Route 53 responds to DNS queries with IP addresses
for up to eight healthy instances. If fewer than eight instances
are healthy, Route 53 responds to every DNS query with the IP
addresses for all of the healthy instances.
If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the values for up to eight instances.
For more information about the multivalue routing policy, see Multivalue Answer Routing in the Route 53 Developer Guide.
WEIGHTED
: Route 53 returns the applicable value from one randomly selected instance from among the instances that you registered using the same service. Currently, all records have the same weight, so you can't route more or less traffic to any instances.
For example, suppose that the service includes configurations for
one A
record and a health check. You use the service to register
10 instances. Route 53 responds to DNS queries with the IP address
for one randomly selected instance from among the healthy
instances. If no instances are healthy, Route 53 responds to DNS
queries as if all of the instances were healthy.
If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the applicable value for one randomly selected instance.
For more information about the weighted routing policy, see Weighted Routing in the Route 53 Developer Guide.
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 596
class DnsConfig < Struct.new( :namespace_id, :routing_policy, :dns_records) SENSITIVE = [] include Aws::Structure end


N. Korea snubs U.S. move to postpone military drill with South
Senior North Korean official Kim Yong Chol said on Tuesday his country demands that he U.S. quit the drill or stop it once and for all.
by APNorth Korea says it won consider a U.S. decision to postpone a joint military exercise with South Korea a concession in stalled nuclear diplomacy.
Defense Secretary Mark Esper said Sunday the United States and South Korea have indefinitely postponed a joint aerial drill in an act of goodwill toward North Korea.
Senior North Korean official Kim Yong Chol said on Tuesday his country demands that he U.S. quit the drill or stop it once and for all.
Mr. Kim said the U.S. should not dream of the negotiations for denuclearization before dropping its hostile policy toward North Korea.
After Mr. Esper announcement on the drill, President Donald Trump in a tweet urged North Korean leader Kim Jong Un act quickly, get the deal done,saying see you soon!