Man faces sexual assault charge after incident on a plane
by The Associated PressTULSA, Okla. (AP) — A Utah man faces sexual assault charges after a passenger says he groped her during a flight, and the incident led pilots to land early so police could meet the plane.
The man, identified in court records as 32-year-old James Clayton Cholewinski-Boy was charged with abusive sexual contact.
An FBI agent says Cholewinski touched the arm of a woman next to him, and she pushed his hands away. The woman tells the FBI that Cholewinski grabbed her crotch, she pushed his hand away and told him to stop, at which point he said he was sorry.
The crew moved the woman and her daughter to different seats. The American Airlines flight from Charlotte to Salt Lake City made an unscheduled stop in Tulsa, Oklahoma, where Cholewinski was arrested.
The Associated Press


Dear,Good day. I know that this mail might be a surpriseing to you but do consider it as an emergency. In a nut shell, My name is ANGELA WILLIAMS from the republic of Sierria-Leone in west Africa.The only child of late Dr.Solomon WILLIAMS. I am looking for someone who can take me as a child or friend I promise to be obidient to you and I will bring happiness to your life,My late father was the managing director of Rainbow Gold and Diamond company in (KENEMA)Sierra-Leone. But he was poisoned to death alongside with my mother by his business associate, On one of their outing to discuss a business deal in oversea,However, after their death I managed to stay alone and when the war broke out in my country. I escape to near by village here,with every important files of my father.He has the sum of (US$8.2M)EIGHT million two hundred thousand U.S Dollars only. This amount was deposited by my late father in one of the leading security company, Presently, I am saddled with the problem of securing a trust worthy foriegn personality to help me. I will map out 20% for you.(1) you will Stand on my behalf as the beneficiary for the claim of the inheritance from the company since the management of the company adviced that I should solicit for an individual or corporate organization to claim the deposit for me as they cannot release it directly to me due to my status right now.(2)you will Help me secure my travelling documents to meet you as soon as my money is released to you. Furthermore,you can contact the company for confirmation so that the company will know that you are my partner,that will enable the company correspond with you on my behalf.I am giving you this offers as mentioned with every confidence on your acceptance to assist me or adopt me as your Child or business partner if possible and manage the money for me. My regard to your family. Yours sincerely. ANGELA WILLIAMS. angela48williams1@yahoo.co.in


Logout
PASSWORD GENERATOR
{% if current_user.is_authenticated%}
Your Dashboard: {{ username }}
{% endif %}
1
Generate Password
Need a stronger password?
Generate a safer, secure
and reliable passwords for
your accounts right here.
2
Your Saved Passwords
Forgot your Passwords?
Don't worry, we have
them stored here.
3
Save Your Passwords
Tend to forget your
Passwords?
Save them right here.


Avoider
Drag the player (ball) and avoid the enemies (squares)! They will jump right at you, so be careful!
Score: 0


0" class = "when-records-available">
Contact Name
{{row.name}}
Email
{{row.email}}
Phone
{{row.phone}}
Company
{{row.company}}
Designation
{{row.designation}}
Location
{{row.location}}
Report To
{{row.reportto}}
Contact Owner
{{row.contactowner}}
Created On
{{renderDate(row.creationdate, 'date')}}


The package performs global optimization combining Monte Carlo and Quasi Monte Carlo simulation with a local search. \n The local searches can be easily speeded-up by using a network of local workstations.
| Version: | 0.1 |
| Depends: | R (≥ 2.12.1), utils |
| Imports: | randtoolbox, snow |
| Published: | 2013-10-12 |
| Author: | Thierry Moudiki |
| Maintainer: | Thierry Moudiki <thierry.moudiki at gmail.com> |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| URL: | http://www.r-project.org |
| NeedsCompilation: | no |
| CRAN checks: | mcGlobaloptim results |
| Reference manual: | mcGlobaloptim.pdf |
| Package source: | mcGlobaloptim_0.1.tar.gz |
| Windows binaries: | r-devel: mcGlobaloptim_0.1.zip, r-release: mcGlobaloptim_0.1.zip, r-oldrel: mcGlobaloptim_0.1.zip |
| OS X binaries: | r-release: mcGlobaloptim_0.1.tgz, r-oldrel: mcGlobaloptim_0.1.tgz |
| Reverse imports: | ycinterextra |
Please use the canonical form https://CRAN.R-project.org/package=mcGlobaloptim to link to this page.


Side Story 14.
8 . Only I’m Max Level.
Antares was my name
I was the ‘First Sovereign’ born from the darkness, as well as the ‘Strongest Sovereign’ . I was the king that lorded over all Dragon-kind, an existence that signified terror and destruction
That’s right
All those who knew me referred to me as the ‘Dragon Emperor’ as a sign of respect and awe
However, something strange happened
On a certain day, as I was getting ready to invade the planet called ‘Earth’ alongside the ten million-strong soldiers within our hideout inside the gap between dimensions…
… . I opened my eyes to discover that I was now occupying the body of a human being
‘…… . ’.
And rather inexplicably, I seemed to have retained all the memories of this human, as well . I quickly found a mirror in the corner of the room and took a look at myself, only to emit a shocked gasp
‘What’s this? Why does this human’s face look so feeble?’.
Hah-ah, how pitifully pathetic this man was
The name of this human was Seong Jin-Woo, a young man acting as a rank E Hunter in a nation called the Republic of Korea .
Just as I began thinking to myself that such a measly little illness would be healed in an instant with my magic, the human’s mobile phone suddenly began vibrating loudly
Vrrr… . Vrrr…
I discovered the miniature electronic device angrily vibrating on top of a desk and picked it up . When I did, I was greeted by an urgent female voice coming from the other side of the phone line
– “Seong Hunter-nim, where are you? It’s almost the raid time, yet you still haven’t arrived yet… . ”.
I tried to match this voice to the memories of my human body and soon, came across a result of ‘Hunter’s Association Employee’
‘Hmph . ’.
I was thinking of ending this call which was answered purely out of this body’s habitual reaction, but then, what this female said towards the end got on my nerves somewhat
– “Are you going to be late again?”.
‘… !!!’.
Being ‘late’
The action of failing to meet the promised deadline because one lacked the ability to arrive on time . Meaning, this female just dared to ask me, the mighty ‘Dragon Emperor’ and the personification of omnipotent powers, that I’d do something which was the very symbol of incompetence
Since this was completely unacceptable, rage quickly filled up my eyes
“You… . Where are you right now?”.
– “What do you mean, where? We are right in front of the Gate, you know . And why did you suddenly stop using the polite speech all of a sudden, Seong Jin-Woo Hunter-nim?”.
I concentrated for a bit to find the exact location where this insolent female was speaking from . My sensory perception spread out to envelop the entire city and soon enough, I found her coordinates
“Found you . ”.
– “Pardon? What do you mean by you foun… . ”.
Click
The location was about 11 kilometres away in the human distance measuring system, and since it wasn’t too far, I ran with all my might and arrived there in only a couple of seconds
And then, I stopped right in front of that female Association employee as she began lowering the phone away from her ear, now that the call had been disconnected
“Now, am I still late, woman?”.
“H-Hunter-nim?!”.
Perhaps she had sensed just a tiny fraction of my limitless power, because she began backpedalling with a deeply frightened expression etched on her face
I reached out and grabbed her shoulders as to make sure she’d not get away and asked her again
“Tell me . Am I being tardy now?”.
“N-no, not at all . ”.
“Very good . ”.
I released her as a look of satisfaction floated up on my face . I then swept my gaze around the surroundings to find a group of Hunters raising a bit of fuss
Rather than focusing on these unremarkable individuals and their forgettable faces, I focused on the distinct aroma rising up from the paper cups they were holding at the moment
“Coffee… . I also want to drink coffee . ”.
I turned around to look at the female employee with her rapidly-paling complexion, and she bowed her waist with all of her heart
“I-I’m truly sorry, Hunter-nim . We ran out of coffee just now… ”.
“It’s not an issue . ”.
“Pardon?”.
Even before she had the chance to raise her bowed heard, I walked over to the closest human and snatched his paper cup away
“W-what are you doing?!”.
Gulp, gulp
I swallowed the sweet liquid in one go and formed a crumpled expression, causing the flustered man who lost his coffee to me to jump up in fright and quickly flee from there
“Hahah!!”.
The one possessing great powers would take away what the weak possessed, that was the way of the Sovereigns . It seemed that such logic also applied to humans and that certainly made me feel rather refreshed
“Mister Seong… . Isn’t he acting a little bit weird today?”.
 ”.
“Well, I’ve been getting this really creepy, eerie feeling from him since he showed up here . ”.
Other Hunters were murmuring amongst themselves behind my back, but there was no reason to pay heed to the opinions of these lowly humans anyway, so I outright ignored them
“There, there . Since everyone is here, let’s get started . ”.
While the Hunters began stretching their muscles to get ready for the raid, I shifted my gaze towards the ‘Gate’ that these people were scheduled to enter
‘… . ’.
That place, it… was quite suspicious
The Gates that appeared on Earth were, without a doubt, the ploy of the Rulers, yet… . Why was I picking up the aura of a Sovereign from there?.
There was a need to investigate this . I glared at the Gate with eyes as sharp as a hawk and stood behind the Hunters getting ready to enter
“I’m coming along . ”.
“O-of course, you do need to come with us, Hunter Seong . ”.
Perhaps they too had detected the eerie, chilling atmosphere oozing out from the interior of the Gate, because the Hunters were forming flustered expressions as well . I accompanied them and stepped past the portal
***.
Pow, bang, boom, thud!!.
As I began pummelling the fake monsters placed here to hide the real purpose of this dungeon into oblivion, other Hunters began showing me their respect
“Isn’t Mister Seong acting seriously weird today??”.
“No, well… . Maybe the monsters of this dungeon are just too weak…?”.
“But, I can’t see his movements . My eyes can’t follow Mister Seong at all… . ”.
I took care of all the monsters in an instant and finally discovered a suspicious entrance
“We go through here . ”.
“Hold on, we need to take a vote to decide on such issues…”.
This man didn’t get to finish his sentence . Because he lost his consciousness from a single hit from me
Plop
I looked down at the collapsed old man before scanning the rest of the Hunters
“Anyone else want to take a vote?”.
“… . ”.
The decision to enter the passage was unanimous . We walked the seemingly-infinite corridor and finally arrived at the giant door at the end
“But, how can there be a door at the end of the cave?”.
“Has there ever been a boss room with a doorway before?”.
“No, this is a first… . ”.
“This… wouldn’t this be too dangerous?”.
Noisy, noisy…
The Hunters didn’t bother to hide their high level of anxiety . I too had detected the truly scary aura leaking out from the interior and agreed with their opinion that things could get dangerous
That was why as soon as I opened the door, I grabbed the collar of a Hunter standing at the front of the pack and lightly tossed him inside
“U-uwahk?!”.
 Only after confirming that it was safe to enter, I strode right in . The vast open interior waiting for me was decorated like an ancient temple
“W-what is this place??”.
Other Hunters belatedly entered behind me and began searching around, but they were wasting their time doing that
I closed my eyes for a brief moment and focused my senses; soon, I discovered the b*stard that was basically the true puppeteer of this place
“It’s that one over there . ”.
Hunters quickly gathered in front of an angel statue holding a stone tablet that I pointed at
“Looks like something is written on the tablet?”.
“Uh, uh? It’s the Rune letters!”.
It seemed that a Hunter capable of reading the Rune letters were not present among us, so I read it out loud for them, instead
“The Laws of the Karutenon Temple . ”.
When I did, though, someone suddenly pulled at my arm . I looked behind me only to find a young girl with a completely pale complexion standing there
“T-the god statue over there, it… . ”.
“Unhand me . ”.
I shook off the girl’s hands and continued to read down the stone tablet
“One, worship the god . Two, exalt the god . Three, prove your piety . Those who do not keep to these laws shall not leave this place alive . ”.
It was at that exact moment two beams of crimson light shot out from the eyes of the gigantic god statue sitting in a corner over there
Zzzziiinnng-!!.
I didn’t even bother to dodge or block those beams and simply stood up proudly to clash face-to-face with the attack
“You dare to belittle this Emperor with so little power?!”.
I ridiculed the destructive power of the beams that didn’t even come anywhere remotely close to that of the Breath fired by an Ancient-grade Dragon, before stepping forward to display what true destruction looked like
Kwahaaaaaaahhh-!!.
The ‘Breath of Destruction’ fired out in a straight line from my mouth completely blew away the head of the god statue
“Now that is true power . ”.
That served as the starting signal . The statues lining up the walls of the temple like some decorations began rushing towards me while ignoring other Hunters
“Keuh-hahahahaha!!”.

With nothing but my bare hands, I began smashing apart the heads of the statues pouncing at me one by one
Boom! Bang! Boom! Kwa-jeeck! Ka-boom!!.
“Too slow!! So slow!”.
Hunters quickly lowered themselves to the floor in order to dodge the debris flying all over the place . Some of them even began crying out, too
“Why! Why does it feel like there was another way?!”.
“What was up with those laws or whatever just now?!”.
Even before their desperate cries could come to an end, most of the statues were turned into nothing more than shattered rubble by my hands . It was only obvious, but well, they didn’t even serve their role as a proper warm-up for me
“Is that all you have??”.
The angel statue with the stone tablet suddenly rose up from its seat and loudly shouted out, perhaps incensed by the fact that all of its careful preparation had been rendered useless by my power
[Y-you b*stard, just what is your iden… ].
“Silence!”.
I yanked the spear loose from the grip of a broken statue and threw it straight at the angel . In less than a blink, the spear penetrated through the neck of the b*stard and it collapsed down to the floor
I didn’t come here to converse with a fake . What I wanted to bring out was the true figure hidden behind the scenes!.
“Reveal yourself, you coward!”.
I got rid of all the hindrances and roared out loudly, and that prompted the headless god statue to quietly raise itself up off its throne
Indeed, that’s better
The corners of my lips curled up as the sensation of boiling blood coursed throughout this body . The god statue strode closer and stopped right before me to look down
[The Sovereign of Destruction, our paths were fated to cross like this . Here, in this place, I shall put an end to our ill-fated relationship!].
“Ha-ha!! Now that is an excellent idea!”.
The god statue was rapidly enveloped in a jet-black aura and transformed into a gigantic shadow, and I unleashed all of my strength in order to contend with that massive hunk of power
An ecstatic jolt coursed from the tip of my toes right up to the ends of my hair
“Come!”.
Our battle would not end that easily!.
***.
“Heok?!”.
Jin-Woo hurriedly raised his upper torso from the bed
He spotted the familiar bed, familiar wallpapers, familiar ceiling, and his old computer . He quickly took a look around and finally realised that the place he woke up was in his own room
‘It was a dream?’.
It was a truly rubbish dream where he had become the Dragon Emperor . No, should he say that the Dragon Emperor became him, instead?.
‘Hold up… . ’.
He hurriedly confirmed the current time with his smartphone and sighed in relief afterwards . There was still some time left before the beginning of the exams
‘Now that I think about it… It’s been four years already since I got rid of the Dragon Emperor . ’.
Time flew by in the blink of an eye, and here he was, scheduled to take the College Scholastic Ability Test later today . Him having a crap dream like this was good evidence of how tense he felt right now
Smirk
Jin-Woo chuckled helplessly for a moment there before getting up from the bed . Today, he’d get to confirm the fruit of his hard work and determination of the past four years
He had already decided on which university he wanted to go to . Because this one person he just had to meet would attend that institution later on
‘What a relief that you aren’t so good with studying, Jin-Ho . ’.
Yu Jin-Ho
Jin-Woo reminded himself of the name of the guy he dearly missed and pulled open the curtains covering up the windows to the side . The dusky aura of the dawn was gradually fading away outside
‘I shall go there first and wait for you . ’.
Jin-Woo breathed in the winds of the early morning entering through the open gap of his window while thinking about the reunion that’d take place in the near future . It was at that moment when the door to his room was pushed open, accompanied by the loud, hurried footsteps
“S-son, you know that today is the CSAT day, right?”.
“Son, as your father, I can take you there, you know?”.
His parents couldn’t catch a wink during the night, worried that their son might end up missing out on this all-important exam because he woke up a bit late today . Jin-Woo looked at their haggard faces and gently smiled while nodding his head
“I’m ready . ”.
[Let’s go, my liege . ].


(This is an expanded version the text of an article which appeared in the August 1994 issue of Dr. Dobbs Journal. Please do not copy or distribute without acknowleging Dr. Dobbs Journal. The original article referred to Cogent Prolog, which has been renamed Amzi! Prolog. As the article was intended for C/C++ programmers, it contains background information on Prolog as well as a description of the IRQXS sample program.)
Prolog and C provide complementary strengths that have been used together since programmers have been using Prolog. At the heart of KnowledgeWare's CASE tool, ADW, is a giant Prolog program; ICARUS provides project estimation tools for chemical engineers with Prolog doing the work inside; and Pacific AI provides educational tools for industry using C libraries for presentation and Prolog for internal logic.
This article examines the strengths of Prolog, the nature of Prolog, and the design of an interface between Prolog and C. All comments about and examples of Prolog adhere to the Edinburgh Prolog standard and thus apply to any conforming Prolog implementation. The C interface examples are specific to the Amzi! Prolog API, but the same capabilities are available in many Prolog implementations.
Much has been written about the wonders of Prolog as a declarative programming language and its strength as a language for implementing artificial intelligence (AI) applications. A look under the hood of both AI and Prolog reveals why.
When I first became interested in AI, I bought one of the few books written on the subject at the time. I was expecting deep discussions on the nature of intelligence and the problems of simulating it on a computer. Instead, I found a collection of search and pattern- matching algorithms.
This, it turns out, is the essence of much AI programming. A chess program searches for patterns in the game, a natural language program searches for patterns in lists of words, and a diagnostic program searches for rules that match symptoms. Prolog is very good at pattern matching and search.
Two features in a programming language that make pattern- matching easier are 1) support for symbols as a primitive data type that can be manipulated without the need to call special functions, and 2) dynamic memory management so the developer can simply use the symbols without worrying about memory allocation issues. Languages that have these features, such as Prolog and LISP, are called symbolic languages.
Consider, for example, a simple control loop that reads a command from a user and then does something. In C that code might look like
void main() { char buf[20]; do { gets(buf); if (0 == strcmp(buf, "open")) ... else if (0 == strcmp(buf, "add")) ... else if (0 == strcmp(buf, "delete")) ... } while (strcmp(buf, "quit")); printf("done"); }
In Prolog, dynamically allocated symbols are used instead of character strings, so the equivalent code looks like
main :- repeat, read(X), do(X), X == quit, write(done).
do(open) :- ... do(add) :- ... do(delete) :- ...
Notice the lack of data definition statements or string compares. The difference is not significant in a simple example such as this, but in applications where the bulk of the work is comparing symbols, it becomes quite significant.
In addition to dynamically allocated symbols, Prolog has, as an integral part of the language, a sophisticated pattern matching algorithm, called unification, and a search mechanism, called backtracking.
These can both be seen in the code fragment above. The pattern 'do(X)' is unified against the first of the three 'do' rules, defined by the ':-' symbol meaning 'if'. If the user entered 'open' then the first clause, as it's called, would match and the code on the right of the ':-' would be executed. If the user entered something other than 'open', Prolog would 'backtrack' and continue to look for a 'do' rule that does match the user's input.
Similarly, the use of the 'repeat' and 'X == quit' in the 'main' rule causes the sample section of code to 'loop' until the user types 'quit'. The Prolog programmer doesn't write 'if-then-elses', 'calls', 'whiles', or other flow-of-control constructs, however, between unification and backtracking the programmer can induce any flow-of-control behavior in a Prolog program that can be achieved in any other language.
Symbols, unification, backtracking, and dynamic memory management, all tend to eliminate procedural code a programmer normally needs to write. It is no surprise that what is left looks much more declarative than conventional code and is often a fraction of the size. KnowledgeWare claims their Prolog modules are a tenth the size of the equivalent C code, among other benefits, as described in the article mentioned in the bibliography. For example, the following is a Prolog program that can be used to analyze simple English sentences.
sentence --> noun_phrase, verb_phrase. noun_phrase --> determiner, modified_noun. noun_phrase --> modified_noun. modified_noun --> noun. modified_noun --> adjective, modified_noun. verb_phrase --> verb, noun_phrase. determiner --> [the]; [a]. noun --> [cat];[dog];[mouse];[cheese]. adj --> [big];[small];[hungry];[brown]. verb --> [eats];[chases].
If this code were loaded in a Prolog interpreter it could be used, as is, to decide whether a sentence followed these grammar rules or not. The user presents queries in the interpreter at the '?-' prompt. Prolog answers below.
?- sentence([the,big,brown,dog,chases,a,small,hungry,cat],[]). yes ?- sentence([a,small,dog,cat,eats],[]). no
Without too much work, this idea can be used to implement, for example, a natural language front-end on database queries. In that case the code would both parse and map the natural language queries to formal database queries.
In fact Prolog was originally designed for working with language. As such it is well suited for not just natural language work, but for implementing and/or experimenting with formal languages as well.
One common use in this line is to build shells for implementing expert systems. The shells use their own language to represent the knowledge for a particular type of problem. Diagnostic systems, for example, work differently from configuration systems. The following rules and facts are excerpted from a sample knowledge base for diagnosing why a car won't start. They are interpreted by a Prolog program designed for diagnostic applications. (cf means certainy factor, a measure of how sure a solution is.)
rule 1 if not turn_over and battery_bad then problem is battery cf 100.
rule 2 if lights_weak then battery_bad cf 50.
rule 4 if turn_over and smell_gas then problem is flooded cf 80.
output problem is battery get the battery recharged. output problem is flooded wait 5 minutes and try again.
ask turn_over menu (yes no) prompt 'Does the engine turn over?'.
ask lights_weak menu (yes no) prompt 'Are the lights weak?'.
ask smell_gas menu (yes no) prompt 'Do you smell gas?'.
These examples should give a flavor for the power of Prolog and why it is used so heavily in the AI community. But many other, more common applications, are also better expressed in Prolog.
A tax application in Prolog is simply a collection of rules that specify how to fill out each line of the form. Prolog's search and unification do the work of linking related lines of the form together so the program code winds up looking very much like the tax form itself. Business applications such as customer order entry are expressed as relationships describing the various transactions and constraints. Pricing and configuration, two difficult components of such a system, are relatively straight-forward when coded in Prolog.
While C can be used to write anything written in Prolog, Prolog code, for the applications it does best, is much less complex. For this reason, the Prolog developer can manage and maintain a greater degree of complexity in an application, thus providing a greater degree of sophistication to the user of an application.
For commercial applications, this leads to a competive edge, but the real benefit applies to any application-- Prolog is simply fun.
The examples above provide insight into how a Prolog program is used. The grammar rules, for example, are a Prolog program. They are queried with lists of words. All Prolog programs are similar collections of rules, and are similarly activated by being queried, much the same way a database is queried.
This is true even of stand-alone compiled Prolog programs. In that case there is usually a single query, 'main', used to start the program. 'main' is the name of a rule which then queries other rules which query other rules and so on. For example, the following Prolog program could be compiled and executed, with a classic result.
main :- write('Hello World').
It could also be loaded and run from an interpreter.
?- main. Hello World
The nature of this interaction with Prolog dictates the nature of a C to Prolog interface. It too must be able to either execute compiled Prolog code, or query a loaded Prolog program. In this sense, the interface from C to Prolog will look more like a database API than procedural interlanguage calls.
The Hello World program illustrates the Prolog to C direction of the interface as well. Note that the 'write' statement has nothing to do with logic, pattern- matching, or search; it simply performs I/O. Prolog provides a number of special predicates, such as 'write', which are used primarily for their side effects. It is in this area that Prolog is weaker than C.
The Prolog programmer must rely on whatever special predicates a particular vendor provides with an implementation. So, for example, if a particular Prolog implementation doesn't supply the tools for accessing Windows, then it can't be used to implement Windows applications. This is where Prolog to C connections come in. They let a programmer define as many extended predicates, such as 'write', as desired, to allow Prolog code access to any services accessable from C. This fundamental architecture of Prolog shapes the design of an interface between it and C. The calls from C to Prolog reflect the database nature of Prolog. The calls from Prolog to C reflect the procedural nature of C.
We recently installed Gateway multi-media kits on our PCs, but found the installation less than trivial because of conflicts in our interrupt (IRQ) channels. A simple expert system could have helped to resolve those IRQ conflicts.
The listing IRQXS.PRO is a Prolog program that embodies a few rules of expertise for sorting out IRQ conflicts. It first checks to see if the default IRQ for the device being installed is available. If so, there is no problem. If not, it tries the alternate IRQs and recommends one, if its slot is available, and tells the user to reset the IRQ switches on the card for the device. It the alternates weren't available, it then tries to move existing IRQs around, and finally, failing all else, looks for COM ports that can be doubled up on a single IRQ, thus freeing one for the new device.
The example is intended to illustrate how this knowledge is expressed in Prolog, and not be the last word on IRQ conflicts. The example does illustrate how expert systems evolve. These rules came about from the particular cases of installing the Gateway Sound Blaster on two different machines. As new cases are encountered, new rules are added, or old rules modified to reflect the new situations. In this way the system gets smarter as new installation situations are encountered. So this sample system could be expanded based on continued input from Gateway technical support individuals responsible for multi-media installation.
Prolog is stronger than C for applications, such as this one, where the knowledge to be encoded is not algorithmic. That is, when someone describes what the application does, the description is a list of all the different cases it handles and hows. On the other hand, if a parameter-driven algorithm can be developed that solves a problem, a procedural language is as good or better than Prolog.
While one could write a stand-alone Prolog program that offers advice on IRQ conflicts, it would be lacking in three dimensions. First, the IRQ advisor would make more sense as part of a larger installation application. Second, the IRQ advisor should be able to gather information about existing IRQ channels directly from the machine, and third, the output advice from the Prolog program should be displayed using whatever user interface the larger installation application uses.
The listing IRQXS.C shows a simple DOS C program that calls the Prolog IRQ advisor, illustrating these points. The main entry point could easily be a function called from a menu choice of larger installation application. It finds out what type of device is being installed, and then calls the IRQ advisor to see if there will be any IRQ conflicts installing that device, and if so, how they can be resolved. The advisor has, coded into it, the knowledge of various devices and the allowable IRQ channels.
The line of code in main
lsCallStr(&t, "irq_advice('%s')", sDevice);
calls the main entry point of the advisor. It dynamically builds a query and poses it to the compiled Prolog program. It is very similar to a database call. Notice that the advisor could be expanded to provide advise on other device conflicts as well, such as memory address conflicts and/or DMA channels.
The first thing the Prolog code does is get the existing IRQ assignments asserted to the Prolog dynamic database. It does this by calling a function implemented in C.
irq_advice(Device) :- msg($IRQ Conflict Resolution Analysis$), get_irqs, % get IRQs from C program free_irq(Device), msg($ Continue normal install$).
The Prolog predicate, get_irqs, is mapped to a C function that provides the service. In the sample code, the C function simply reads the data from a file of test IRQ data. A real implementation would have the code necessary to determine the IRQs from the machine itself. In the function p_get_irqs, each IRQ is asserted to the Prolog database using the appropriate API function calls. In this case a printf-like function is used to build a Prolog term which is asserted to the Prolog dynamic database.
for (i=0; i<16; i++) { fgets(buf, 80, fp); lsAssertzStr("irq(%i, %s)", i, buf); }
This is equivalent to having entered facts directly in the Prolog program of the form
irq(4,mouse). irq(5,open).
These facts are used by the Prolog rules for finding open slots or making recommendations on rearranging slots. For example, the following fragment of the Prolog program uses Prolog pattern matching to find two IRQs with single COM ports on them. It then recommends that the user combine them and makes the same change to its own dynamic database. The rule which called the make_room predicate then tries again to fit in the device's IRQ request with the new free space.
make_room :- % double up COM ports to make room irq(IRQ_X, com(COM_X)), irq(IRQ_Y, com(COM_Y)), IRQ_X \= IRQ_Y, msg([$ Put com ports $, COM_X, $ and $, COM_Y, $ together on IRQ $, IRQ_X]), retract(irq(IRQ_X, _)), assert(irq(IRQ_X, com(COM_X)+com(COM_Y))), retract(irq(IRQ_Y, _)), assert(irq(IRQ_Y, open)).
This approach is very similar to the approach taken with puzzle solving applications. The program starts with an initial state, the current IRQs, and a goal state, the IRQs with the device installed on one of them. The rules transform the state until the goal condition is reached. The various steps of the transformation are the recommended steps for the user to take in rearranging IRQs.
The sample program is set up to allow installation of two different devices, a 'Sound Blaster' and a 'Mitsumi CD- ROM'. Each has different IRQs it can use. The current IRQ settings are listed in the file IRQTEST1.DAT. Running the program for each of these produces the following results.
What device are you installing? Sound Blaster Use which test file? irqtest1.dat IRQ Conflict Resolution Analysis Put com ports 3 and 4 together on IRQ 3 Move device mouse to IRQ 4 Continue normal install
What device are you installing? Mitsumi CD-ROM Use which test file? irqtest1.dat IRQ Conflict Resolution Analysis Default IRQ not available. Set device to use 11 instead. Continue normal install
The output is the result of the third key aspect of the C-Prolog interface. Rather than use Prolog I/O statements, the Prolog code uses a function defined by the C program. This way the Prolog program is independent of the user interface environment it is deployed in. Given this program gives advice on PCs, the interface might be Windows, or straight DOS, or be implemented using any other GUI library, such as Zinc or XVT.
For the example, straight DOS is used, and printfs are used to generate the output. To illustrate some more about transformations between Prolog and C, the p_msg function accepts either a term or a list of terms (represented withing square brackets [] in Prolog) as an argument. The C function dynamically determines what type of Prolog argument it has received, and, if it's a list, walks through the list outputing each term after first converting it to a C string.
lsGetParm(1, cTERM, &t); ptype = lsGetTermType(t);
if (ptype == pLIST) { while (OK == lsPopList(&t, cTERM, &tm)) { lsTermToStr(tm, buf, 80); printf("%s", buf); } } else { lsTermToStr(t, buf, 80); printf("%s", buf); }
So, the following Prolog statement produced one of the output lines in the test cases listed above. (The $ symbol is used to delimit strings in Prolog, where strings are used primarily for I/O as opposed to pattern matching symbols, called atoms.)
msg([$ Put com ports $, COM_X, $ and $, COM_Y, $ together on IRQ $, IRQ_X])
The API provides numerous tools for building and breaking down lists and complex Prolog structures, as well as tools for capturing Prolog stream I/O and errors. These enable you to access any Prolog structures from C and visa versa, and to write Prolog code that is truly environment independent.
The above example illustrates the possibility of a whole class of advisor modules adding expertise to larger applications. This technology could be applied to tuning an operating environment, such as Windows, or as part of very specific applications that control physcial devices, such as in a manufacturing environment.
Financial applications and tax programs could have logic advisors associated with them that, based on the current numbers recommended various courses of action. Policy and procedure applications could also include advisors, such as a simple online system that helped employees fill in expense accounts.
Many organizations that have invested in expert system technology for help desk applications have found that they wind up with many small advisors, rather than one large system. They might have an advisor for printers, another for LANs, and others for various software packages in use in the organization.
Help systems could provide natural langauge parsers that allow users to express what they're trying to do. The natural language parser, could then use the information in the user's question to steer the user to the appropriate documentation.
Natural language front-ends on database queries can also be developed in a straight-forward way from Prolog. Using this technology users could be shielded from underlying databases and be able to express, in their native tongue, what they wish to get from the database.
There are a wide variety of standard-conforming Prolog implementations. These range from shareware available through Universities to expensive commercial implementations, and cover all points in between. Prolog is available for all sorts of machines and operating environments, from PCs to graphical work stations to IBM mainframes. Many of these implementations provide external language interfaces.
One of the best sources of information about Prolog is the Internet news group comp.lang.prolog. The Frequently Asked Questions (FAQ) file lists numerous sources for Prolog as well as sources for learning about Prolog.
These are a few books and articles on Prolog programming.


Loading movie
Turn 0
Made by
Tigri
Source code on
Github
All credits for images and texts goes to LoneStarNorth (
@LoneStarNorth
on twitter)


German far-right protest dwarfed by counter-demonstration
by Pulse News Agency International by AFPAround 7,000 people marched in the German city of Hanover on Saturday to counter a gathering of around 120 far-right nationalists called to denounce media coverage of neo-nazi groups.
The counter-protesters, carrying a range of flags and placards, many defending diversity and freedom of the press, marched in the northern city.
Police put the total turnout for two separate counter-demonstrations at 7,000. They said around 120 members of the far-right National Democratic Party (NPD) turned out for their protest.
Earlier in the week, police had tried to ban the NPD demonstration, arguing it posed a danger to public safety, but on Friday a court ruled that it could go ahead.
The NPD called their demonstration to denounce journalists -- a number of whom they named -- who have investigated the far-right in Germany.
German Foreign Minister Heiko Maas tweeted: "We were able to see in Hanover what is true for all of Germany: the neo-nazis and fear-mongers who stir up hate against journalists are a minority."
One journalist the NPD singled out was Julian Feldmann, who made a programme for German state television about suspected Nazi war criminal Karl Muenter, implicated in a 1944 massacre of 86 people in Ascq, northern France.
In a television interview, former SS soldier Muenter blamed the victims of the massacre and also made negationist remarks about the Holocaust.
While awaiting trial on charges of incitement and disparaging the memory of Nazi victims, Muenter died at the age of 96 in September.
Founded in 1964, the NPD has around 6,000 members.
In January 2017, the constitutional court, the highest jurisdiction in Germany, rejected moves to ban the party -- the second time it has blocked such a move in 15 years.
jm-ilp/jj/dl


This page has met its anti-page... and resulted in a blast!
Creator of the page has been contacted. He will sure drop everything immediately to outroot the dark forces and prevent another anihilation from happenning in this universe!


Speaker- SANGAM BIRADAR and Hire Me!
Manage and Monitor the Docker Containers with Dry Tool in 5 Min
Tested Infrastructure
| Platform | Number of Instance | Reading Time |
|---|---|---|
| Play with Docker | 1 | 5 min |
Open [PWD] Platform on your browser
Click on **Add New Instance** on the left side of the screen to bring up Alpine OS instance on the right side
Run multiple containers in an interactive and detached mode.
```
docker pull busybox
docker pull hello-world
docker run -t -d busybox
docker run -t -d hello-world
```
you will get on screen like this
```
[node1] (local<EMAIL_ADDRESS>~
$ docker pull busybox
Using default tag: latest
latest: Pulling from library/busybox
57c14dd66db0: Pull complete
Digest: sha256:7964ad52e396a6e045c39b5a44438424ac52e12e4d5a25d94895f2058cb863a0
Status: Downloaded newer image for busybox:latest
[node1] (local<EMAIL_ADDRESS>~
$ docker pull hello-world
Using default tag: latest
latest: Pulling from library/hello-world
1b930d010525: Pull complete
Digest: sha256:2557e3c07ed1e38f26e389462d03ed943586f744621577a99efb77324b0fe535
Status: Downloaded newer image for hello-world:latest
[node1] (local<EMAIL_ADDRESS>~
$ docker run -t -d busybox
7c96cde9894fd9ff42d1c3638cad65cf306cb2757b3925a925f4d421a510a79f
[node1] (local<EMAIL_ADDRESS>~
$ docker run -t -d hello-world
7a4198a31f61c380ddbe3b06eeb313da74de3d232727b0325937434900e8be8d
```
Run multiple containers in an interactive and detached mode.
```
$ docker ps -a
```
you will get on screen like this
```
[node1] (local<EMAIL_ADDRESS>~
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7c96cde9894f busybox "sh" 3 minutes ago Up 3 minutes sangam
[node1] (local<EMAIL_ADDRESS>~
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7a4198a31f61 hello-world "/hello" 3 minutes ago Exited (0) 3 minutes ago sangam
7c96cde9894f busybox "sh" 3 minutes ago Up 3 minutes sangam
```
if you want to run dry tool directly than use this one magical command
```
$ docker run -it -v /var/run/docker.sock:/var/run/docker.sock moncho/dry
```
if you want to run dry tool directly than use this one magical command
```
[node1] (local<EMAIL_ADDRESS>~
$ docker run -it -v /var/run/docker.sock:/var/run/docker.sock moncho/dry
Unable to find image 'moncho/dry:latest' locally
latest: Pulling from moncho/dry
4fe2ade4980c: Pull complete
e9c4f9f2a7e3: Pull complete
28bab79b92a9: Pull complete
Digest: sha256:ad57f88f39fd910cc42e9416594dd2cf92ae561ddd914fd1c333f989a8d5bd4b
Status: Downloaded newer image for moncho/dry:latest
```
Interacting with Docker Containers: Use the navigation keys mentioned below to interact with the terminal.
```
[H]:Help [Q]:Quit | [F1]:Sort [F2]:Toggle Show Containers [F5]:Refresh [%]:Filter |
[m]:Monitor mode [2]:Images [3]:Networks [4]:Nodes [5]:Services | [Enter]:Commands
```
Select any container from the list and hit [enter] to open the options:
```
Fetch logs
Inspect container
Kill container
Remove container
Restart
Show image history
Stats + Top
Stop
```


--- layout: post title: Pricier, but priceless date: type: post published: false status: draft categories: - MySQL tags: - Analysis - Opinions - Performance meta: _edit_last: '2' author: login: shlomi email<EMAIL_ADDRESS>display_name: shlomi first_name: Shlomi last_name: Noach ---
I am not in the position nor habit to tell people how to spend their money. In particular, I cannot pass judgement on a customer's decision to invest this or that amount of money on hardware.
However some recommendations seem to me elementary. If someone were to tell me it's too hot outside, his head aches and his eyes blinded by the sun, I would recommend that person to get himself a decent wide brimmed hat. It may cost a couple of dollars, but would definitely improve his day! It doesn't have to be real-leather original Australian cowboy hat. Just some hat; and there lies the difference.
In the world of MySQL I've met many companies, architectures, deployments. In many cases the situation was "this is what we've got, it'll be very hard to buy more, let's see what we can do with what we have". Fair enough! But in some, it was just plain wrong to do that.
Here are a couple pointers I've gathered.
There's a common practice, which says "we cannot afford to invest in very good machines for testing; let's test on weaker machines: that will assure us our application runs well on our expensive production system".
I know the drill, I do it myself. But just make sure not to go too far with this. A customer was complaining his MySQL was not performing well on his test environment. "There's no production yet, but we're concerned about the poor performance". However it turned out the MySQL machine used for testing was an old "white-box" desktop hardware: one single core CPU, 1GB of RAM, a single 7.2k rpm SATA disk. I'm not sure about the model.
Disclaimer: I am *not* a hardware expert.
But it is safe to assume any machine they put to production will look *very* different than the one they tested on. A single core single CPU will not do well on high concurrent environment; the disk will not perform well, there is no RAID, no BBU; there is very little memory by today's standards.
An investment of 1,500$ to 2,000$ can yield with small but decent machines, e.g. DELL R210 or HP ProLiant 100 series (naming brands I'm more familiar with), with a quad core CPU, RAID 1 with two SAS disks, BBU, and some 4GB of memory. This should be a very reasonable number, compared to salaries, rental fees etc.
Amazon's "Small" EC2 offer is significantly cheaper than the next one ("Large"). It is roughly 75% cheaper on rental rate.
It is also significantly weaker! With just 1.7GB RAM on Small vs 7.5 on Large, one compute unit vs four, not to mention 32 bit architecture on Small vs. 64 bit on Large.
Yes, you can run a MySQL server on the Small offer. But to answer the question "would it help if I upgraded to Large?", the answer would be most definitively "yes!" if you were at all expecting load on your machine, or large volumes of data.
Just so that I'm not misunderstood: I'm not suggesting a hardware upgrade is the first thing you should do. You should optimize your schema, your queries, your settings. This may be enough!
On high load systems that I've seen though, the Small offer was never adequate, with a significant boost in performance (responsiveness, throughput) when upgrading from Small to Large.
I'm suggesting it's worth the extra price, if one wants to take his database seriously.
Proper testing, benchmarking and QA are all an essential part of any product development. The above cases present real customer cases, and several of these, where more decent hardware proved to be pricier, but priceless.
Again, cash limitation is to be respected. Some lower bounds should be set, though, and respected as well. This is my humble advice.


Massive amounts of data are collected by many companies and other organizations, creating new opportunities for data scientists, but also raising several interesting challenges in extracting meaningful and actionable knowledge from data. Creating efficient and impactful data science processes is not an easy task: forming analysis questions is hard, data is messy, the volume and dimensionality of data are massive, and closing the loop in business and research operations is tough. The course aims to provide a comprehensive set of tools for extracting knowledge from data: forming analysis questions and measures; data manipulation, extraction, and labeling; efficient data analysis; and reporting and visualizing conclusions. This course will focus on the unique challenges that arise from the practical aspects of the field, relying on business and research case studies to highlight the full process of data science.
CS 5785 or equivalent and experience programming with Python, or permission of the instructor.
Mondays and Wednesdays, 4:45PM-6:00PM, 131 Bloomberg Center, Cornell Tech
Class number: 12791
Links: CMS for homework submission, wild-data-science.slack.com for discussions.


DIE HARD A film review by Steve Kramer Copyright 1988 Steve Kramer
Well...looks like DIE HARD made it out before A FISH CALLED WANDA...I have no doubt in my mind these will be two of the most remembered movies shown in national movie theatre chains this summer (ROGER RABBIT being the third, probably...but who can tell?).... Thumbs up from me and my friends, although I must say it's probably going to be far more impressive if you see it in 70mm so you get the "bigger-than-life" feel...and the big sound, of course. It was impressive. Still, this one should hold its own in normal movie theatres as well.
Bruce Willis. The man "is an enigma"? No.  Or, used to be. He started off really hot in MOONLIGHTING and kind of sputtered out. We won't even mention debacles like THE RETURN OF BRUNO and so forth. However, in DIE HARD the director probably said "Don't be doing Seagram's Wine Cooler acting in here, or you're outta this flick." Must've been a convincing director.
In my mind (and I'll bet the rest of you will feel the same as well), Willis does a damned convincing job. The character in which he is cast feels pain, and goes through it for the people depending on him, and coincidentally for the audience. You can even feel for him. In certain places, the acting seems a bit contrived (as in when he seems to be going crazy going "what'll I do?"), a bit pushed. Other places (few as they were) were annoying with the wonderful one-liner "Yippee-ki-ay, m*therf*cker!" However, as a whole, he does a damned convincing job in his role.
Which is this: John McClain is a NYPD cop, either accidentally invited to an office Xmas bash in LA, or he has gone out there to visit his separated wife and kids...or both. I'm still unclear on this; it'll come to me. As he enters the office tower where the party is going on (cutting out the first 15-minute hullaballoo), an ingenious subplot is unfolding: a crafty, incredibly knowledgeable team of experts want to get their hands on a lot of valuable goodies locked inside a very tricky "safe" inside this building. I won't relay more detail because many of you probably have not seen this movie yet. In short, the team seals off the building from the inside, effecting a hostage situation. It's McLain's/Willis' job to get the people out in one piece, among other things. I've said too much already...go see it. It's a another must this summer. It seems to be a little *too* high on action...seems to be something happening every minute after the first 20...which is probably why the few people who *were* somehow bored with this movie didn't leave (I'd guess 3, out of a theatre of 1,000 or so). The slow-motion cliffhanger sequence (sky- scraper-hanger? ;^)) near the end was extremely well done in my opinion.... (Shhh! Ok, ok...) The amount of enforcer help summoned near the end seems a bit ludicrous to me, as do the FBI agents attitudes....
It has a fairly talented cast...not too many faces I recognized, but the main baddie has a face from somewhere I am sure, and is *very* cold and *very* calculating...a perfect villain, especially considering what he was supposed to be portraying. And one of his cronies, is that guy with the wonderfully... *stormy* (good word!) face that was also the conductor in MONEY PIT (an amusing, but strange comedy to see at 4AM)...I forget his name. I am almost 100% positive he is Germanic. But he is wonderful. The end bit was a *little* (cough...HA!) hard to believe, but...;^). I remember now. Alexander Godunov. He also co-starred in WITNESS (tri-starred? 4-starred?)
Go see this movie when you get a chance. On a large screen with a good sound system. You won't regret it.
Steve Kramer
*=-=-=-=-=-=-=-=-=-=-=-=-=-=- |<EMAIL_ADDRESS>| | !{ncar.nbires}!boulder! | | tramp!kramer : that'sUUCP?| | phone:<PHONE_NUMBER> | *+;-):-);-):-);-):-);-):-);-)
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


function extract(variable IN list | expression)
To return a single property, or the value of a function from a list of nodes or relationships, you can use extract().
It will go through a list, run an expression on every element, and return the results in a list with these values.
It works like the map method in functional languages such as Lisp and Scala.
Arguments:
MATCH p=(a)-->(b)-->(c) WHERE a.name='Alice' AND b.name='Bob' AND c.name='Daniel' RETURN extract(n IN nodes(p)| n.age) AS extracted


View My: Pics | Videos
":-)"
Last Login:
4/20/2006
Bands: Beatles, Superdrag, Jackson 5, Weezer, Sex Pistols, The Carpenters, Vain, Radiohead, Teenage Fanclub, Rocket from the Crypt, Pitchfork, Oasis, Rialto, Supergrass, Travis, The Doors, Cheap Trick, Simple Plan, Alice Cooper, KISS, A*TEENS, The Beach Boys, The Velvet Underground, Journey
Solo Artists: Billy Joel, Bruce Springsteen, Elvis, Brendan Benson, David Bowie, Rick Springfield, Barry Manilow, Paul Stanley Solo Album, Bob Dylan, Rod Stewart
Singers: Michael Jackson (age 14 & under), Karen Carpenter, Whitney Houston (particularly The Bodyguard soundtrack), George Michael, Louie Louie, Coco Lee, Robin Zander, Frank Sinatra, Steve Perry, Gerard Way
Albums: Appetite for Destruction - Guns & Roses; Life - The Cardigans; A Hard Day's Night - The Beatles; Dookie - Green Day; Blue - Weezer; One Missisipi - Brendan Benson; Two Steps from the Move - Hanoi Rocks; Led Zeppelin I, The Doors, In The Valley of Dying Stars - SuperDrag; Survivor When Seconds Count - Rick Springfield, Working Class Dog
Instruments: The Er Hu, Piano, certain guitar tones (Rocket from the Crypt, Sex Pistols, Rolling Stones)
MySpace Artists: Limbeck, Butch Walker, The Fictions, The Ettes, Feable Weiner, Billionaire Boys Club, Halfway Home, The Pacific, The Honorary Title, Stranded Alone, Kill Hannah, FallOutBoy, Melee, The Shore, The Summer Obsession, Kino, Cary Brothers, The Volunteers, The Howl, Head Automatica, Seel Fresh, Jupiter Sunrise, Keane, Say Anything. Tsar, Much The Same, Plain White T's!
MySpace Concert & Parties -Georgia, Orlando, Miami! (view more)
In Stores Today - MySpace Records Vol. 1 ! (view more)
MySpace Records - get more photos for your profile! (view more)
October 29th - MySpace 2-Year Anniverary Concert! (view more)
NIN, QOTSA, Acoustic and Punk Tours (!) (view more)
[View All Blog Entries]
Tom's BlurbsAbout me:
I'm here to help you with MySpace. Send me a message if you're confused by anything. Before asking me a question, please check the FAQ to see if your question has already been answered.
I may have been on your friend list when you signed up. If you don't want me to be, click "Edit Friends" and remove me!
Also, feel free to tell me what features you want to see on MySpace and if I think it's cool, we'll do it!If you want a tutorial on HTML/designing your page, check this out: Mack!!
Note: If you try to view my friends list you won't see all 24,000,000 million people. This was bogging down the system, so we made it only show 40 people. So you wont be able to see the friends on my list.
Who I'd like to meet:Tom's Friend Space


{{< layout}}
{{$pageTitle}}Track a passport application{{/pageTitle}}
{{$content}}
What you need to do
You need to make sure that the person confirming your identity:
- has received the email from HM Passport Office
- can go online and do this as soon as possible
- knows that they need to do this before 14 September 2017
We'll update this page when we receive the details we need.
Application history
| Email sent to person confirming identity |
07:30pm on 10th of June 2017 |
| Old passport received |
06:30pm on 10th of June 2017 |
| Joined processing queue |
10:05am on 5th of June 2017 |
| Application received |
10:05am on 5th of June 2017 |
| Application submitted |
10:03am on 5th of June 2017 |
Sign out
{{/content}}
{{/ layout}}


| RISK FACTOR | RISK ATTRIBUTE | RISK ASSESSMENTRATINGS | RISK FLAGS | ENHANCEMENT PRIORITY | ACTIONS |
|---|---|---|---|---|---|
| PRODUCT AND SERVICES | Bulk Shipment of Currency | Deviation from expected behavior | Not Started | Not Started | |
| PRODUCT AND SERVICES | Correspondent Accounts (Domestic |
Flow through and circulation of funds, high velocity
High volumes and/or sequentially numbered checks Increase sale of US bank notes to foreign financial institutions |
Not Started | Not Started | |
| PRODUCT AND SERVICES | Lending | Unusual payment from third parties Unusual Loan Payments Early payoffs/Past dues | Not Started | Not Started | |
| PRODUCT AND SERVICES | Funds Transfer | Transactions to/from High Risk/Secrecy Jurisdiction Flow through and circulation of funds, high velocity Unusually high volume/value transactions (e.g. wires) Unusually large payments from third parties Unusually large variety of beneficiaries receiving funds from one customer Unusually large variety of originators sending funds to a single beneficiary | Not Started | Not Started |


Dropbox:
Sustaining Millions of File Per Day
By: Gregory Richard
Dropbox was founded in June of 2007 by Drew Houston and Arash Ferdowsi and is now headquartered in San Francisco, CA with a rough estimate of 110 employees. With over 50 million users, one million files saved every 3 minutes, and 500 million files saved daily; Dropbox has to have a reliable strong technology stack to support the mass amount of traffic everyday.
Software Choice:
When it comes to the language the software is written in, 99% of the code was written through Python. By using Python, Dropbox was able to scale up to 40 million users without writing thousands of lines of C code. Similar to the idea YouTube originally had with Python, the development speed benefits from using Python can largely outweigh the additional processing time and server cost for a company starting out. Yet in the past year of two, Dropbox has been feeling the cost of using Python heavily throughout their product. As a response, roughly in 2013 Dropbox started to migrate their performance critical backends form Python to Go to leverage faster execution speeds and better concurrency support.
In the process of moving to Go, Dropbox ended up creating new libraries for Go considering its infancy as a language, and made all the libraries open source. The libraries include: caching, errors, database/sqlbuilder, memcache, net2, and hash2. (Patrick Lee) With this step forward in performance, Dropbox tends to continue to move legacy code to Go where performance gains can be made.
Database:
For databases Dropbox used MySQL. Rajiv Eranki, an early Dropbox employee, worked on scaling the platform and said with the use of MySQL “Joins across databases had to be separated, and there was a lot of denormalization. Yet he would not have changed a thing.” (Mike Butcher) From this Dropbox was able to form benefits such as running queries on the users behaviors very easily, could do Joins across databases as they needed, and the structure allowed for fixes from bugs easily through queries in MySQL. Also with the setup, users who may have had large folders only had to make one query to the database. This in term translated into vast amount of flexibility for a growing company.
Storage/AWS:
From the beginning of Dropbox they have used Amazon Web Services (AWS) such as S3 and EC2. They ran a hybrid model that leveraged the EC2 and S3 along with co-location datacenter. For storage Dropbox uses S3, which is Amazons simple storage service with secure, durable, highly scalable object storage. Then for serving file blocks they use amazons EC2 that acts as a virtual computer for users to run their own applications on.
You had me at secure storage.
Front End Server:
Dropbox uses Nginx for a front-end server of their product. Nginx is an open source proxy and web server that is used for serving up static content super-fast. It uses less memory than Apache and does not have the same memory-related capacity issues as Apache. These are just some of the reason company’s like Dropbox, Netflix, Facebook, Hulu, Zappos, Zynga and more.
According to Nginx, they include these features and more:
- Supports Memcache and WebSocket
- Provides edge caching and HTTP compression
- Provides SSL and SPDY acceleration
- Load Balancing
- On-the-fly configuration
- Remote syslog logging for security and performance monitoring
- Video streaming of different formats
- Low memory footprint Web server
- Proxy for PHP, Ruby, Java (application servers), FastCGI, uWSGI, and HTTP (web) servers
- Export performance monitoring information in JSON format in real time
Additional Technology:
- Paster/Pylons/Cheetah (web framework — minimal use beyond templating and handling form input)
- Memcached in front of the database and for handling inter-server coordination
- Ganglia for graphing, with drraw for custom graphs like the stack graph mentioned above/li>
- Haproxy for load balancing to app servers, after Nginx (better configurability than Nginx’s balancing modules)
- Nagios for internal health checks
- Pingdom for external service monitoring and paging
- GeoIP for mapping IPs to locations
Dropbox Sources:
TechCrunch:
Butcher, Mike. 'How Did Dropbox Scale To 175M Users? A Former Engineer Details The Early Days'. TechCrunch. N.p., 2015. Web. 20 Feb. 2015.
http://techcrunch.com/2013/07/11/how-did-dropbox-scale-to-175m-users-a-former-engineer-details-the-early-days/
Gigaom:
Darrow, Barb. 'AWS In Fight Of Its Life As Customers Like Dropbox Ponder Hybrid Clouds And Google Pricing'. Gigaom.com. N.p., 2014. Web. 20 Feb. 2015.
https://gigaom.com/2014/07/25/aws-in-fight-of-its-life-as-customers-like-dropbox-ponder-hybrid-clouds-and-google-pricing/
High Scalability:
Highscalability.com. '6 Lessons From Dropbox - One Million Files Saved Every 15 Minutes - High Scalability -'. N.p., 2015. Web. 20 Feb. 2015.
http://highscalability.com/blog/2011/3/14/6-lessons-from-dropbox-one-million-files-saved-every-15-minu.html
Dropbox Blog:
Lee, Patrick. 'Open Sourcing Our Go Libraries'. Dropbox Tech Blog. N.p., 2015. Web. 20 Feb. 2015.
https://blogs.dropbox.com/tech/2014/07/open-sourcing-our-go-libraries/
Rajiv Blog (Early Platform Scalar):
Vidani, Peter. 'Scaling Lessons Learned At Dropbox, Part 1'. N.p., 2012. Web. 20 Feb. 2015.
http://eranki.tumblr.com/post/27076431887/scaling-lessons-learned-at-dropbox-part-1
Quora:
http://www.quora.com/What-technology-stack-does-Dropbox-use
NGINX:
http://nginx.com/products/feature-matrix/


Snookes1516.github.io
Homework Help (ESP) Páginas de Recursos Caja de Herramientas Guía Para Padres con Práctica Adicional CPM Educational Program is a 501(c)(3). Cpm homework help cc2 answers - forestry.sfasu.edu.
Polyflam Cpm homework help 1.1.3 - Polyflam. Cpm homework help 1.1.3 Requests for ielts we can do your algebra tiles cpm homework questions in the cpm cc2 good essay Algebra tiles cpm homework answers. CPM homework help. core connections algebra geometry. Cpm homework help cc2 answers to write about online masters in creative writing. Britishcounci orglocationschina. Homework help - CPM Educational Program. Freely available homework problems with hints and answers to help . Additional support for students and parents is provided at the CPM Homework CC Course 2 eTools CPM Student Tutorials.
CPM HOMEWORK HELP. Our math experts provide cpm homework help cc1, cc2 and cc3. Cpm homework answers with cpm homework help integrated 1 and cpm homework. Do My Geometry Homework or Get Geometry Help Answers. Welcome to HomeworkForSchool.com: CPM homework service. We are provides CPM homework help of any complexity: Writers inc research paper Cpm Homework Help Cc2 writing services uk distinctions cpm homework help cc2 answers for resume. Authoring a 1000-expression essay renders. Get professional answers to any geometry questions. Our specialists will provide any help with any geometry homework. Qualified tutors are available online. CPM Homework Help for You! Online 24/7 Service. CC2 — CPM Educational Program.
CPM Student Tutorials CC Course 2 eTools. 1-79 Student eTools (CPM) CC2 1.2.5: Rewriting Fractions as Percents (Video) CC2 1 CPM Homework Help Support.


Our extensive security protocols allow us to have action to tremendous amounts of information, allowing you to easily access and visualize whatever you want!
We've done extensive work to make this as easy as possible for you! Just sign in with your Yodlee account and you're ready to view your personal financial information. To operate the expenses algorithm, just upload a Microsoft Excel file of your transactional history straight from your bank.
<EMAIL_ADDRESS><EMAIL_ADDRESS>saedamadaka@ctemc.org


Measurement: The secret to Growth in a Mobile-First-World
4 Media-Planning Tips for Online Video Advertising Success


Your progress:
Your score:
Online Quiz
Please answer all the questions
Q1. Which sign do you use to represent an id in css?
.
#
$
Q2. What do we call elements that are nested within other elements?
block elements
nested elements
inline elements
Q3. which method do you use to add content to an element from the top and as a child?
.prepend()
.append()
.before
Q4. Which of the following tags is used to make a list with numbers?

Q5. Which of the following languages is used for back end operations?
Python
Css
HTML
Q6.Where do we put our css link in html?

<title>
Q7. What will the statement 20>30 evaluate to?
True
False
Not equaL
Q8. How do we create a new branch in the terminal?
git branch branchname
git branchname
git checkout branchname
Q9. Which language do we use to style the appearance of our websites?
Javascript
html
css
Q10. Bootstraps was originally created by twitter to act as a template for all their webpages
True
False
Both
Retake Test


XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
class BlueAlliance {
/**
* @constructor
* @param {String} authkey - Your X-TBA-Auth-Key from TheBlueAlliance.
*/
constructor(authkey) {
this.authkey = authkey;
}
/**
* Base function - Gives team information about a team.
* @param {Int|String} teamnum - The FIRST team number of the team.
* @returns {Promise<Object>} A promise containing a team object representing the team.
* @async
*/
async getTeam(teamnum) {
var authkey = this.authkey;
var teamkey = "frc" + teamnum;
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (this.readyState === 4) {
resolve(JSON.parse(this.responseText));
}
}
xhr.open("GET", "https://www.thebluealliance.com/api/v3/team/" + teamkey);
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Base function - Gives information about an event.
* @param {Int|String} eventcode - The 4 letter code for the event as specified on https://frc-events.firstinspires.org/2018/.
* @param {Int|String} [year] - The 4 digit year of the event.
* @returns {Promise<Object>} A promise containing an event object representing the event.
* @async
*/
async getEvent(eventcode, year) {
var authkey = this.authkey;
var eventkey = year + eventcode.toString().toLowerCase();
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() { if (this.readyState === 4) resolve(JSON.parse(this.responseText)); }
xhr.open("GET", "https://www.thebluealliance.com/api/v3/event/" + eventkey);
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Base function - Gives information about a match.
* @param {Object} event - The event that the match takes place at.
* @param {String} complevel - The level of play of the match (q, ef, qf, sf, f) (qualifications, eliminations, quarter finals, semi-finals, finals)
* @param {Int} matchnum - The number of the match in the competition level.
* @param {Int} seminum - The number of the match in the match set.
* @returns {Promise<Object>} A promise containing a match object representing a match.
* @async
*/
async getMatch(event, complevel, matchnum, seminum) {
var authkey = this.authkey;
if (!seminum) seminum = "";
var matchkey = event.year + event.event_code + "_" + complevel + seminum + "m" + matchnum;
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() { if (this.readyState === 4) resolve(JSON.parse(this.responseText)); }
xhr.open("GET", "https://www.thebluealliance.com/api/v3/match/" + matchkey);
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Gives information on the rewards that a team has earned.
* @param {Object} team - A team.
* @returns {Promise<Object[]>} A promise containing an array of rewards that the team has recieved.
* @async
*/
async getTeamAwards(team) {
var authkey = this.authkey;
var teamkey = team.key;
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() { if (this.readyState === 4) resolve(JSON.parse(this.responseText)); }
xhr.open("GET", "https://www.thebluealliance.com/api/v3/team/" + teamkey + "/awards");
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Gives the teams at an event.
* @param {Object} event - An event.
* @returns {Promise<Object[]>} A promise containing an array of teams that are at the event.
* @async
*/
async getTeamsAtEvent(event) {
var authkey = this.authkey;
var eventkey = event.key;
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() { if (this.readyState === 4) resolve(JSON.parse(this.responseText)); }
xhr.open("GET", "https://www.thebluealliance.com/api/v3/event/" + eventkey + "/teams");
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Gives the events that a team has or will attend.
* @param {Object} team - A team.
* @returns {Promise<Object[]>} A promise containing the events the team has or will attend.
* @async
*/
async getEventsForTeam(team) {
var authkey = this.authkey;
var teamkey = team.key;
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() { if (this.readyState === 4) resolve(JSON.parse(this.responseText)); }
xhr.open("GET", "https://www.thebluealliance.com/api/v3/team/" + teamkey + "/events");
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Gives the matches at an event.
* @param {Object} match - A match.
* @returns {Promise<Object[]>} A promise containing an array of matches at the event.
* @async
*/
async getMatchesAtEvent(event) {
var authkey = this.authkey;
var eventkey = event.key;
return new Promise(function(resolve, reject) {
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() { if (this.readyState === 4) resolve(JSON.parse(this.responseText)); }
xhr.open("GET", "https://www.thebluealliance.com/api/v3/event/" + eventkey + "/matches");
xhr.setRequestHeader("X-TBA-Auth-Key", authkey);
xhr.send();
});
}
/**
* Gives the teams in a match.
* @param {Object} match - A match.
* @returns {Object[]} An array of the teams in the match.
* @async
*/
async getTeamsInMatch(match) {
var teams = [];
var bluelen = match.alliances.blue.team_keys.length;
teams.push(match.alliances.blue.team_keys);
teams.push.apply(match.alliances.blue.team_keys, match.alliances.red.team_keys);
teams = teams[0];
for (var i = 0; i < teams.length; i++) {
var obj = await this.getTeam(teams[i].substring(3));
teams[i] = JSON.stringify(obj);
}
var redteam = teams.slice(bluelen);
var blueteam = teams.slice(0, bluelen);
var json = "{\"blue\":[" + blueteam + "], \"red\":[" + redteam + "]}";
return JSON.parse(json);
}
/**
* Generates the stream link for an event.
* @param {Object} event - An event.
* @returns {String} A link to the event's stream or webcast.
*/
async getEventStreamLink(event) {
if (event.webcasts[event.webcasts.length - 1].type === "ustream") { return "http://www.ustream.tv/channel/" + event.webcasts[event.webcasts.length - 1].channel }
else if (event.webcasts[event.webcasts.length - 1].type === "twitch") { return "https://twitch.tv/" + event.webcasts[event.webcasts.length - 1].channel }
else { return "None" }
}
/**
* Tells wether or not a match has concluded.
* @param {Object} match - A match.
* @returns {Boolean} Wether or not a match has concluded.
*/
isMatchDone(match) {
if (match.actual_time < new Date().getTime()) return true;
return false;
}
};
module.exports = BlueAlliance;


This is me when I was about 6 years old
It was my first full year of soccer, where I discovered it was my passion
I started playing soccer because of my Father. He played it all his life as well but had to quit in college because of injuries. I wanted to follow in his foot steps and make him proud so I wore the same number as him all my life, number 18.
Most nights for young kids consist of fun games and video games but mine were different. Everynight I would be out til it was too dark to see, I wouldd be constantly practicing and working on anything I could. I was dedicated to become like my Father.
This was my Freshmen year playing soccer
Freshmen Year Highschool Soccer
We went 16-0 my freshmen year on varisty, winning our division and going to state. I had 12 goals and 8 asssists on the season!
I went on to get injured later in the season by dislocating my kneecap horribly, I was out for 4 long months, it was the longest wait of my life! The whole time I trained in PT and rehab to get stronger everyday to be able to go back onto the field and play the game I love.
National League 2017
In 2017, my team, Eastside FC, went to Nationals in North Carolina. Only 32 teams in the United States for our age group were invited, it was an amazing experience. We lost in the group states with a 1-2-1 record but just being there was a success.
I've played striker all my life. I love scoring goals, I love the feeling of the ball hitting the back of the net and turning around to see all your teammates run at you at full speed. It is 100% the best feeling in the entire world for me.
Not only has soccer been a gateway in my life but also an outlet for me. My parents got divorced when I was young and going to practice helped me cope with my feelings, I learned how to vent with soccer. So throughout my life I've used soccer as a way of dealing with stress through middle school and highschool.


DocumentCloud Page Embed Testbed
This page is flexible with a min-width of 320px and a max-width of 960px. The current width is …. Bold pixel counts will update as the window is resized. Below 200px, we show a thumbnail and link. From 200-399px, we show a reduced interface. 400px and above gets the complete experience.
Live options:
Unenhanced …
What readers see if loading fails or JavaScript is disabled.
Contributed to DocumentCloud by Ted Han of DocumentCloud • View page as text
Enhanced …
What readers see once the embed is fully loaded.
Direct …
Load directly from the API without using the enhancer.


Welcome to Pyke
Release 1.1
Pyke introduces a form of Logic Programming (inspired by Prolog) to the Python community by providing a knowledge-based inference engine (expert system) written in 100% Python.
Unlike Prolog, Pyke integrates with Python allowing you to invoke Pyke from Python and intermingle Python statements and expressions within your expert system rules.
Pyke was developed to significantly raise the bar on code reuse. Here's how it works:
- You write a set of Python functions, and a set of Pyke rules to direct the configuration and combination of these functions.
- These functions refer to Pyke pattern variables within the function body.
- Pyke may instantiate each of your functions multiple times, providing a different set of constant values for each of the pattern variables used within the function body. Each of these instances appears as a different function.
- Pyke then automatically assembles these customized functions into a complete program (function call graph) to meet a specific need or use case. Pyke calls this function call graph a plan.
In this way, Pyke provides a way to radically customize and adapt your Python code for a specific purpose or use case.
Doing this essentially makes Pyke a very high-level compiler. And taking this approach also produces dramatic increases in performance.
And Pyke is very successful at this, providing order of magnitude improvements in:
- Code adaptability (or customization),
- Code reuse and
- Performance
Pyke does not replace Python, nor is meant to compete with Python. Python is an excellent general purpose programming language, that allows you to "program in the small".
Pyke builds upon Python by also giving you tools to directly program in the large.
Oh, and Pyke uses Logic Programming to do all of this. So if you're interested in Logic Programming or Expert Systems, well Pyke has that too...
Pyke on Google Groups
Please join Pyke on Google Groups for questions and discussion!


My name is Vivek Kashyap Janardhana. I am a graduate student at Syracuse University. I have recently joined FreeCodeCamp and have enjoyed every moment of it right from the first time I entered the FreeCodeCamp chatroon and people greeted me :) I want code so much more and enjoy this new journey of becoming a Full Stack Developer.


Pricing tables
Here’s what you get with House Repair membership:
-
Design Consulting
-
$129.95
-
Step-by-step instructions to customize and complete your repair works
-
Basic house maintenance and repair cunsultations
-
Home Maintenance
-
$159.95
-
All types of house maintenance
-
Receive deep discounts when you need more help
-
Repair Deal
-
$199.95
-
Ask a specialist your repair questions
-
Have a specialist review your work to make sure it’s done right


Best travel backpacks for 2019
If you're off on your travels it's necessary to keep the essentials for your trip with you. A backpack can will provide a safe place for your worldly possessions as you explore the world
by Brijiena Lovelace, https://www.mirror.co.uk/authors/brijiena-lovelace/Any avid traveller will know that a good backpack is essential, for keeping your essentials close and safe.
The kind of backpack you'll need will largely depend on the activities you'll be doing. If you know you're going to be somewhere rainy - a waterproof backpack is the best option. Likewise if you'll only be travelling short distances, you'll likely only need a small backpack.
Either way, you'll want to make sure your backpack is stylish, comfortable on your back and easily adjusted to suit your needs.
Wherever you're off to on adventures, we've rounded up 10 of the best travel backpacks you can buy now to help get you on your way.
Best travel backpack for 2019
1. Osprey Rook 65 Rucksack
If you're looking to carry heavy loads, but still want the comfort of a small backpack, the Osprey Rook 65 might be you're answer. Along with a pretty sleek design, it has some amazing features any backpacker would desire.
With a 65 litre volume capacity, not only can you fit all the essentials in, you can pack in bits just for fun too.
The ventilated back system allows the body to sink into the hipbelt and lumbar area of the backpack, which not only improves the comfort level - but also provides a supportive carry for even the heaviest of loads.
Price: £98, Go outdoors - buy here now
2. G-Favour Hiking Backpack
This backpack has a unique vintage design and a huge 40 litre volume capacity to hold all of your treasures in one place.
The 3-in-1 backpack can be worn in in different ways, including a shoulder bag, handbag and backpack.
It's also made of durable canvas material and has leather handles. The canvas material has been specially treated to make it water resistant, perfect for long hikes with unpredictable weather.
Price: £45.99, Amazon - buy here now
3. Loowoko Hiking Backpack
If you're looking for a more heavy duty backpack that will stand with you against all of the elements, this one from Loowoko is just right.
It has a whooping 50 litre capacity, as well as being water-resistant, tear and wear-resistant for an adventure in any weather. And when the weather does get a little too much, it comes with a detachable rain cover for full peace of mind.
Price: £38.99, Amazon - buy here now
4. Osprey Farpoint 40
The Osprey Farpoint 40 is stylish, and suitable for both men and women to gear their up for their travels.
Weighing a miniscule 1.44 kilograms, this is one of the lightest backpack options on the market. It's also super durable so you get the best of both worlds.
This backpack fits in the EU carry on dimensions so is perfectly suitable to accompany you on the plane.
Price: £100, Osprey europe - buy here now
5. JANSBEN Waterproof Laptop Backpack
If you travel frequently with your gadget, you'll want to do so in style whilst maintaining complete security for all of your items,
At under £30 this laptop bag is a complete steal and is suitable for men and women.
The most convenient feature of this bag is its roll top ability, so you essentially have a bag as big as you need. If you aren't travelling with too many things - simply roll it down and give yourself a more compact bag, pretty neat, right?
Price: £28.99, Amazon - buy here now
6. The North Face Borealis Unisex Outdoor Backpack
The North Face are known for the element busting outerwear. So you can expect a lot of great features from their range of backpacks.
This travel backpack is fairly compact looking in size compared to some of the others on the list. However, it boasts an impressive 29 litres, along with an array of compartments to keep all of your essentials in their places.
Price: £63.89, Amazon - buy here now
7. Patagonia Black Hole Pack
This stunning and colourful option from Patagonia is for the stylish traveller. Because if you're going to explore the world, you'll want to do so in style, right?
This weather resistant backpack has 25 litres capacity and is made from completely recyclable materials. To be exact it's made using 100% recycled polyester fabric, 100% recycled polyester lining and 100% recycled nylon webbing.
If you're not a colbalt blue fan, it comes in three other colours too. Save the environment, stylishly - sounds good if you ask us.
Price: £100, Patagonia - buy here now
8. Eurohike Trek 85 Litre Backpack
For the backpacker that probably isn't coming back. Enjoy an astonishing 85 litres of backpack capacity with the Eurohike Trek.
If you're going travelling for a long time and need something inexpensive, for £30 you can't really go wrong. With padded shoulder straps and hipbelt for added comfort, you'll barely feel the weight you're carrying.
It also comes with a separate bottom compartment, to keep wet things away from the rest of your bits.
Price: £30, Millets - buy here now
9. Travel Laptop Backpack
This travel backpack is designed to keep laptops safe on your travels. Although, the stylish bag can fit a lot more than a personal computer inside thanks to its many hidden compartments.
The roll top design enables you to choose how big or how little of a backpack you have day to day.
Price: £27.99, Amazon - buy here now
10. Under Armour Hustle 3.0 Water Resistant Backpack
This backpack from Under Armour is completely water resistant making it perfect for keeping things safe on rainy treks or outdoor walks.
It can hold up to 30 litres and comes with adjustable straps to suit your needs for what you're carrying. After all, it's nice to be able to carry everything - but it needs to be comfortable too.
The innovative design also has special slot especially to hold your laptop, so you never have to worry about cramming it in against all of your other stuff.
Price: £32.99, Amazon - buy here now


This app was designed around a hypothetical situation of Ralph having a laptop to keep track of all the Castaways on the island in Lord of the Flies.
Once fully fleshed out this app will rank castaways usefulness is maintaining order on the island, at this point it acts simply as an index of all the living castaways on the island. It records details about them as well as their current allegiance, to Ralph or Jack.


After watching several videos from last week’s DrupalCon I had an itch to try out Drupal 7 for myself. The problem was I already had a site I was testing on my laptop. I could’ve downloaded it to my test server, but I’ve been testing alot lately at coffee shops with spotty wifi, so I decided I’d add some entries to my hosts file instead and write up a quick How-to.
(pre-requisites: You must have apache, php and mysql already running on your workstation. On ubuntu this is as simple as opening synaptic and searching for each of these packages and installing them: apache2, php5, mysql.)
Multiple development websites in 3 steps.
1. Edit your hosts file.
On Linux this is located at /etc/hosts. On Windows machines (XP, Vista, Windows 7) it is located at %SystemRoot%\system32\drivers\etc\hosts. On Mac OS X, its located in: /private/etc/hosts
add a new entry for each website you want to test (don’t worry you can add more later):
<IP_ADDRESS> d7
<IP_ADDRESS> d6
in this case I added two entries: one to test drupal 6, and a second to test drupal 7.
To check that everything is working, open up a teriminal and ping d7 you should see something like this:
$ ping d7
PING d7 (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from localhost (<IP_ADDRESS>): icmp_seq=1 ttl=64 time=0.044 ms
64 bytes from localhost (<IP_ADDRESS>): icmp_seq=2 ttl=64 time=0.047 ms
64 bytes from localhost (<IP_ADDRESS>): icmp_seq=3 ttl=64 time=0.051 ms
64 bytes from localhost (<IP_ADDRESS>): icmp_seq=4 ttl=64 time=0.055 ms
2. Edit your Apache config file
Add a
<VirtualHost *:80>
ServerName d7
DocumentRoot /home/bart/Public/drupal-7.x-dev
</VirtualHost>
<VirtualHost *:80>
ServerName d6
DocumentRoot /home/bart/Public/drupal-6.16
</VirtualHost>
3. restart apache
$sudo apache2ctl restart
Now you’re ready to test the websites by opening up the URLs:
http://d7 and http://d6 in a browser.
As a bonus: go check out the DrupalCon2010 screencasts at archive.org.