The Joel test was written by Joel Spolsky to provide a few very simple questions for developers to ask in an interview. Here they are:
The Joel Test
- Do you use source control?
- Can you make a build in one step?
- Do you make daily builds?
- Do you have a bug database?
- Do you fix bugs before writing new code?
- Do you have an up-to-date schedule?
- Do you have a spec?
- Do programmers have quiet working conditions?
- Do you use the best tools money can buy?
- Do you have testers?
- Do new candidates write code during their interview?
- Do you do hallway usability testing?
They seem basic, and that's the point: a company with a poor score doesn't give a nice environment to its developers.
While this test is still applicable, it was written in 2000, and software development has seen a lot of changes and innovation. So, I thought of a few other questions that you can ask your current or future employer:
The Geal Test
- Do you use agile development methods?
- Do you have unit tests?
- Do you perform code reviews?
- Do you use known technologies and frameworks (open source or not)?
- Do developers train and learn on office hours, or in their spare time?
- Do developers communicate with system administrators (deployment requests and bug reports don't count)?
- Do developers communicate with the client?
- Do developers retain copyright on the work done in their spare time?
That's it, 8 more questions, 1 point by positive answer. Joel said that 11 or 12 for his test is ok. I'm nicer, so I'll say that 6 on my test is good enough.
1. Do you use agile development methods?
Agile methods have been there for a few years now, and they have proven useful for a lot of projects, especially when you have changing requirements or a very short time to market. Don't let your developers fight everyday against specifications written 5 years ago, let them adapt on the way.
2. Do you have unit tests?
This should be standard. There are a lot of libraries to write tests in every language, for specific functions, for APIs, for user interfaces, so this approach is well supported. Moreover, if you answered "yes" to Joel's question about daily builds, you can add tests to the loop, and run them right after the daily build. If you're not convinced about the usefulness of unit tests, or fear that it will take too much time: unit tests give you assurance that you won't break the code, they can validate the compliance with the specifications, and automated unit tests will save some time for development. You don't want to pay a developer to test manually over and over the same code, but you can buy a machine to do that.
3. Do you perform code reviews?
I know that this one is hard to implement in a team, but once the developers are past the "I'm too shy to show you my code" phase, this will help them spot mistakes, learn from the better developers and find new ways to improve the code.
4. Do you use known technologies and frameworks (open source or not)?
A lot of companies have custom frameworks that they develop and use for their products, that nobody else uses. Although it can be comforting to have your own technology, that you control and maintain, it has a few problems:
- it reeks of NIH syndrome
- it is a cost not directly linked to what you're selling
- you have to train developers to use it
- the expertise they build will be useless in future jobs
If you use known (and hopefully, recent) technologies, you don't have to maintain it (although you may need to pay for it), you profit from bugfixes for other clients, and you are more likely to attract and hire skilled developers.
5. Do developers train and learn on office hours, or in their spare time?
Software development moves very fast and a developer needs to catch up often. If you don't allocate time in his schedule to read, try and learn, you can still assume that he will still train himself in his spare time. But you take the risk that your Java developer becomes a Ruby expert, because he will learn what he wants, not what you need. If you want your developers to become experts, help them.
6. Do developers communicate with system administrators (deployment requests and bug reports don't count)?
Too often, the only communication between developers and tech ops is through deployment request and bug reports.  Obviously, this is not a good work environment. As a developer, I'm interested in how my code behaves in real conditions, and I would like helpful bug reports, instead of "it doesn't work, I rollback", and knowing and working with the sys admins can provide it.
7. Do developers communicate with the client?
Ok, this one will horrify some project managers and a few developers. I know that you want to control all the interactions with the client, and that developers sometimes have poor communication skills. But if you put a few layers between the developer and the client, this is what the developer will see: specifications that don't make sense, and useless bug reports. Developers are problem analysis machines, so they can understand the needs of your client, and see right away what is implied in architecture, technology and performance. Use their insight, and they will feel useful, and produce better software. Also, if you can, send a developer to watch a bit how the client works with the software. In 5 minutes, they will spot more bugs and usability problems than in 5 weeks of bug reports.
8. Do developers retain copyright on the work done in their spare time?
When you're passionate about development, you often have ideas, itches to scratch, and you may not be able to develop them at work. But a lot of contracts have non competition clauses and other clauses giving copyright of ALL your work to the employer. As an employer, it's a way to protect the company, but as a developer, it is scary: you can't use or sell the code written in your spare time. Let your developers work on what they want when they're not in the office, and you will profit from the experience they gained developing their side projects (but state clearly that they work for you on office hours).
Bonus
I also have 4 bonus questions. They're optional, but they don't hurt.
- Do the developers participate in <LANGUAGE> user groups or developer meetups?
- Will I have a technical manager? It is reassuring for a developer to know that his manager has a clue about development, knows the difference between a good and a bad developer, can understand his problems and stabd up for his team.
- Do you use a recent version control software? Joel already asked this, but it needs to be precised. Version control systems have improved a lot since his test so, if you can, avoid old stuff like CVS or (worse) SourceSafe. Subversion is fine for most setups now (even on Windows), and if you use Git or Mercurial, I will be reaaaally happy.
- Do you accept remote working? There are a lot of tools to communicate online: mail, IM, VoIP, web project managers and bug trackers, and developers often know very well how to use them. It's comforting for the employer to know that the developer is always at arm's length, but this will not mean they're more productive. If you remove distractions from the work environment (phone, colleagues), the developer can be more productive (yes, there are actually LESS distractions at home). Also, they won't waste time in transport.

How much did you get?
04 Feb 2011
•
Smalltalk
For more than a year, I have been playing with Smalltalk, and more specifically the Pharo project, and I had a lot of fun! Now, I'd like to share this experience. I saw a lot of introductions to Smalltalk, but they were all about its amazing features from a CS point of vue. I'm a software engineer, so I'll give you a more pragmatic look, with a few useful tips.
When you hear about Smalltalk, you imagine old bearded guys, clinging to their outdated language. In reality, this is what I saw: a small yet growing community full of nice and motivated people, enjoying development and innovating everyday. Even if the language is old, they're keeping it up to date with today's standards: JIT compiling, web development, iPhone port... I strongly encourage you to take a look and, maybe, participate!
First look: the interface
The first impression is the most shocking: you don't understand what you can/should do with that empty window. It is not the code editor you would expect. It is an entire world, full of living objects. The behaviour of these objects is described by code, but they're not programs with a beginning and an end. For a good impression of that, try closing the environment (don't forget to save) and starting it again: your windows are still open, exactly in the same place! Even selected text is still there! Your object's life doesn't end when you close the environment: they're serialized in the image file.
The environment is composed of a virtual machine executing the code, an image file containing the objects, and a source file, storing a part of the source code. And that's all. No files.
UPDATE: the GNU Smalltalk environment uses files to store source code.
In the previous picture, you will see the code browser, used for everyday development. It doesn't display files, but (from left to right) categories, classes, method categories, methods, and under that, the actual code for the method. The code editor is organized around the actual structure of the code, not some arbitrary folder tree. It can be confusing at first, but it's actually quite elegant. There's a drawback though: you can't use your favorite code editor to write Smalltalk code. Another nice side effect of the image: I store my environment on a USB key, and can use it to work seamlessly on Windows, Mac and Linux (using the one click pharo image).
Second look: the language
The language itself is another surprise: what are those ifTrue and whileTrue? You can't think that Smalltalk has a syntax used for control flow. In Smalltalk, everything is an object. And the primary way of interacting with an object is sending it a message. The whole syntax of Smalltalk revolves around messages:
- "1+2/3" is not equal to 5/3, but to 1, because you send to 1 the message "+" with argument 2, which gives you 3, and you send this result the message "/" with argument 3.
- ifTrue is a message sent to a boolean, with a "block" as argument (a block is a piece of code). The block will be executed if the boolean is an instance of True.
- you can't access directly the members of an object: you need to create messages to read and modify these members.
The methods are separated between the class side and the instance side. The classes are objects, so they have their own methods (think of it as static methods). They're used for a lot of things, like generating common instances (String crlf, Color blue, etc), or starting servers.
If you take a good look at a class like string, you will spot apparently redundant methods like displayOn:, displayOn:at:, displayAt:, displayOn:at:textColor:. They're not redundant: displayOn calls displayOn:at:, which calls displayOn:at:textColor:. This is actually very elegant, because it keeps methods small and readable.
Keep that in mind when you're developing in Smalltalk: readability is more important that speed, because the time you gain now will be wasted the next time you try to read your code.
Next: the tools
You saw the code browser, but there are other nice tools designed to help you every day.
Monticello is a distributed versioning system integrated in the environment. Nothing special here: it tracks your changes, create revisions, and supports local (folders) and remote (HTTP, FTP) repositories.
There is a test runner that displays all the tests loaded in your environment. You will see that there is a very good coverage, but it is not enough! Contribute a test or two if you have time.
Last but not least: the refactoring browser. It is an amazing piece of code which analyzes your classes, points out design mistakes, and in some cases, can correct them in your place.
OK, now, what can I develop?
You can do about anything in Smalltalk, like other languages: desktop applications, web applications, use databases, network protocols, REST APIs... It is particularly suited for big applications with complex object models.
For desktop applications, you will easily have cross platform code and UI, but you won't be able to use native windows (at least, not with Squeak or Pharo). For web applications, you can choose between these frameworks: Seaside, Iliad and Aida. Each one has a different philosophy, and different strengths, so try them all out!
Developing in Smalltalk has been an amazing experience: I learned a lot, and the concepts and habits I took are easily applied to other languages. now, I just need a way to work in Smalltalk for my day job :)
Yesterday was introduced the new Facebook Messages interface. Huzzah! You get an @facebook.com email address, unification of IM and email, conversation history, etc. That sounds cool! And what is that new feature called "social inbox"? That's nice, messages from your friends will be prioritized and appear directly in your inbox, and other emails will go to the "others" box. Wait, what?
This feature is meant to help you waste time connect efficiently with your network. I won't go into the analysis of how your email contacts are not always friends, even the important and regular ones, how will Google react, or how will we send emails with no subject line. I'm sure someone will talk about that at length. Instead, let's talk about these nice people always interested in becoming our friends, sell us cheap software enlarge our pe bank account: spammers.
In the old world of regular email (yes, old, we're in Web 2.0, Gmail is soooo last week), we had spam filters. A lot of methods were developed to protect us: blacklistingm whitelisting, greylisting, bayesian filters, SMTP verification, CAPTCHAs, etc. They're not all efficient, but services like Gmail are really good at catching unwanted email. Spamming is an activity with a very low conversion rate: you have to send thousands of emails just to get one gullible person to click and buy. Thankfully, emails are cheap to send. But we could improve that conversion rate. Facebook just did it.
With new Messages, your Inbox will only contain messages from your friends and their friends. All other messages will go into an Other folder where you can look at them separately.
Put you in situation. A gorgeous woman/man/dog wants to be your friend on Facebook. Will you accept her/him? Let's say she has more or less the same tastes has you (that's surprinsingly easy to get the list of a band's fans, same for book, political views, etc). Not yet? Let's say you have friends more gullible than you. The hot woman is a friend of another friend and sends you a message in these terms: "Hi! We met at <gullible friend>'s party a few months ago, I had a really good time talking to you". You just accepted the friend request, admit it. And a few days/weeks later, she will begin sending you messages about great opportunities like ponzi schemes or nigerian scams. And YOU WILL CLICK! Because it will appear directly in your inbox. Because it comes from one of your friends, someone you more or less trust.
Facebook just gave spammers a direct access to your inbox, and offered them targeted advertising, thanks to all the groups, likes, music and book fan groups. Spammers are considered dumb, because they automate a lot. But thanks to Facebook's social features, they will learn to customize the mails, just for you. They will pay cheap workers to talk to you through the fake accounts, they will get you, your friends and your family, and will be a part of your great friends network.
Thanks to Facebook.
VLC 1.1.4 is out, with a fix for the DLL preloading attack!
Read more about that issue in the release notes and the security advisory.
Update 24/08/2010: Microsoft published an advisory, there's an article from the MSRC about the preloading DLL vulnerability, and a tool that fixes the problem. And if you want to know more, there's an MSDN article.
Update 25/08/2010: if you came here from golem.de, heise.de or h-online.com, good for you! The articles on these websites are blatantly wrong, and their proposed solution doesn't work . You will find here the real solutions, and links to the relevant blog posts and advisories.
Look! A new shiny vulnerability, affecting a lot of Windows applications! OMG OMG OMG we're DOOMED!
</crazy mode off>
OK, let's get serious. This vulnerability is actually a very old one. It is there because the DLL search order includes the current directory (if someone can tell me why, I would be delighted to know that). Here is the search order (source: MSDN):
If SafeDllSearchMode is enabled, the search order is as follows:
- The directory from which the application loaded.
- The system directory. Use the GetSystemDirectory function to get the path of this directory.
- The 16-bit system directory. There is no function that obtains the path of this directory, but it is searched.
- The Windows directory. Use the GetWindowsDirectory function to get the path of this directory.
- The current directory.
- The directories that are listed in the PATH environment variable. Note that this does not include the per-application path specified by the App Paths registry key. The App Paths key is not used when computing the DLL search path.
If SafeDllSearchMode is disabled, the search order is as follows:
- The directory from which the application loaded.
- The current directory.
- The system directory. Use the GetSystemDirectory function to get the path of this directory.
- The 16-bit system directory. There is no function that obtains the path of this directory, but it is searched.
- The Windows directory. Use the GetWindowsDirectory function to get the path of this directory.

So, let's assume that your application tries to load a DLL that isn't present, either in your application directory, or in the system directories. Then, the application will try to load the DLL from the current directory. And that's it. If there's a DLL with the same name in that folder, it will be loaded in the application. That's why you can get owned by opening a file in that same directory: it sets the current directory of the application to the file's folder.
OMG OMG OMG we're DOOMED, and it's incredibly easy to exploit me!
So, now, let's take a look at the fix. This is an OS flaw.  H.D. Moore has some sysadmin fixes that you can apply to prevent the exploit from coming on your computer. But your applications will still be exploitable.
 There's a function that can remove the current directory from the DLL search path: SetDllDirectory. From MSDN:
After calling SetDllDirectory, the DLL search path is:
- The directory from which the application loaded.
- The directory specified by the lpPathName parameter.
- The system directory. Use the GetSystemDirectory function to get the path of this directory. The name of this directory is System32.
- The 16-bit system directory. There is no function that obtains the path of this directory, but it is searched. The name of this directory is System.
- The Windows directory. Use the GetWindowsDirectory function to get the path of this directory.
- The directories that are listed in the PATH environment variable.
So, if you pass a safe directory(let's say, C:\Windows\System32, or your application directory) as argument to SetDllDirectory, you effectively remove the current directory from the search path! It works, I tested it for you :)
But that's not the end: you have to wipe out the PATH to be safe. From the metasploit blog:
If the application is trying to load a DLL that is normally found within the PATH, but not the Windows system directories, and the PATH contains environment variables that have not been set, then the literal value of the environment variable will be treated as sub-directory of the working directory (the share). For example, if %unknownvariable%\bin is in the system PATH, the share will be searched for a directory called “%unknownvariable%\bin” and the target DLL will be loaded from within this sub-directory.
And if you test your application with ProcMon, you will surely see that a lot of (potentially unsafe) directories are added to the PATH, and used to look for the DLL. So, remove all the useless directories from the PATH if you can!
(And now, for the disclaimer: this blog post is not endorsed by Microsoft, and if you want to be really safe and know the best solution to employ, wait for Microsoft's patches and workarounds. But if you trust me enough (you fool... *evil laugh*), you can try that fix on your application, and maybe protect your users. )
Actually, that fix is encouraged by Microsoft, and David Leblanc wrote about it in February 2008.


Enter a Master and a Boatswain
Boatswain!
Here, master: what cheer?
Good, speak to the mariners: fall to't, yarely, or we run ourselves aground: bestir, bestir.
Exit
Enter Mariners
Heigh, my hearts! cheerly, cheerly, my hearts! yare, yare! Take in the topsail. Tend to the master's whistle. Blow, till thou burst thy wind, if room enough!
Enter ALONSO, SEBASTIAN, ANTONIO, FERDINAND, GONZALO, and others
Good boatswain, have care. Where's the master? Play the men.
I pray now, keep below.
Where is the master, boatswain?
Do you not hear him? You mar our labour: keep your cabins: you do assist the storm.
Nay, good, be patient.
When the sea is. Hence! What cares these roarers for the name of king? To cabin: silence! trouble us not.
Good, yet remember whom thou hast aboard.
None that I more love than myself. You are a counsellor; if you can command these elements to silence, and work the peace of the present, we will not hand a rope more; use your authority: if you cannot, give thanks you have lived so long, and make yourself ready in your cabin for the mischance of the hour, if it so hap. Cheerly, good hearts! Out of our way, I say.
Exit
I have great comfort from this fellow: methinks he hath no drowning mark upon him; his complexion is perfect gallows. Stand fast, good Fate, to his hanging: make the rope of his destiny our cable, for our own doth little advantage. If he be not born to be hanged, our case is miserable.
Exeunt
Re-enter Boatswain
Down with the topmast! yare! lower, lower! Bring her to try with main-course.
A cry within
A plague upon this howling! they are louder than the weather or our office.
Re-enter SEBASTIAN, ANTONIO, and GONZALO
Yet again! what do you here? Shall we give o'er and drown? Have you a mind to sink?
A pox o' your throat, you bawling, blasphemous, incharitable dog!
Work you then.
Hang, cur! hang, you whoreson, insolent noisemaker! We are less afraid to be drowned than thou art.
I'll warrant him for drowning; though the ship were no stronger than a nutshell and as leaky as an unstanched wench.
Lay her a-hold, a-hold! set her two courses off to sea again; lay her off.
Enter Mariners wet
All lost! to prayers, to prayers! all lost!
What, must our mouths be cold?
The king and prince at prayers! let's assist them, For our case is as theirs.
I'm out of patience.
We are merely cheated of our lives by drunkards:
This wide-chapp'd rascal--would thou mightst lie drowning
The washing of ten tides!
He'll be hang'd yet.
Though every drop of water swear against it.
And gape at widest to glut him.
A confused noise within: 'Mercy on us!'-- 'We split, we split!'--'Farewell, my wife and children!'-- 'Farewell, brother!'--'We split, we split, we split!'
Let's all sink with the king.
Let's take leave of him.
Exeunt ANTONIO and SEBASTIAN
Now would I give a thousand furlongs of sea for an acre of barren ground, long heath, brown furze, any thing. The wills above be done! but I would fain die a dry death.
Exeunt
Enter PROSPERO and MIRANDA
If by your art, my dearest father, you have
Put the wild waters in this roar, allay them.
The sky, it seems, would pour down stinking pitch,
But that the sea, mounting to the welkin's cheek,
Dashes the fire out. O, I have suffered
With those that I saw suffer: a brave vessel,
Who had, no doubt, some noble creature in her,
Dash'd all to pieces. O, the cry did knock
Against my very heart. Poor souls, they perish'd.
Had I been any god of power, I would
Have sunk the sea within the earth or ere
It should the good ship so have swallow'd and
The fraughting souls within her.
Be collected:
No more amazement: tell your piteous heart
There's no harm done.
O, woe the day!
No harm.

More to know
Did never meddle with my thoughts.
'Tis time
I should inform thee farther. Lend thy hand,
And pluck my magic garment from me. So:
Lays down his mantle
Lie there, my art. Wipe thou thine eyes; have comfort.
The direful spectacle of the wreck, which touch'd
The very virtue of compassion in thee,
I have with such provision in mine art
So safely ordered that there is no soul--
No, not so much perdition as an hair
Betid to any creature in the vessel
Which thou heard'st cry, which thou saw'st sink. Sit down;
For thou must now know farther.
You have often
Begun to tell me what I am, but stopp'd
And left me to a bootless inquisition,
Concluding 'Stay: not yet.'
The hour's now come;
The very minute bids thee ope thine ear;
Obey and be attentive. Canst thou remember
A time before we came unto this cell?
I do not think thou canst, for then thou wast not
Out three years old.
Certainly, sir, I can.
By what? by any other house or person?
Of any thing the image tell me that
Hath kept with thy remembrance.
 Had I not
Four or five women once that tended me?
Thou hadst, and more, Miranda. But how is it
That this lives in thy mind? What seest thou else
In the dark backward and abysm of time?
If thou remember'st aught ere thou camest here,
How thou camest here thou mayst.
But that I do not.
Twelve year since, Miranda, twelve year since,
Thy father was the Duke of Milan and
A prince of power.
Sir, are not you my father?

O the heavens!
What foul play had we, that we came from thence?
Or blessed was't we did?
Both, both, my girl:
By foul play, as thou say'st, were we heaved thence,
But blessedly holp hither.
O, my heart bleeds
To think o' the teen that I have turn'd you to,
Which is from my remembrance! Please you, farther.
My brother and thy uncle, call'd Antonio--
I pray thee, mark me--that a brother should
Be so perfidious!--he whom next thyself
Of all the world I loved and to him put
The manage of my state; as at that time
Through all the signories it was the first
And Prospero the prime duke, being so reputed
In dignity, and for the liberal arts
Without a parallel; those being all my study,
The government I cast upon my brother
And to my state grew stranger, being transported
And rapt in secret studies. Thy false uncle--
Dost thou attend me?
Sir, most heedfully.
Being once perfected how to grant suits,
How to deny them, who to advance and who
To trash for over-topping, new created
The creatures that were mine, I say, or changed 'em,
Or else new form'd 'em; having both the key
Of officer and office, set all hearts i' the state
To what tune pleased his ear; that now he was
The ivy which had hid my princely trunk,
And suck'd my verdure out on't. Thou attend'st not.
O, good sir, I do.
I pray thee, mark me.
I, thus neglecting worldly ends, all dedicated
To closeness and the bettering of my mind
With that which, but by being so retired,
O'er-prized all popular rate, in my false brother
Awaked an evil nature; and my trust,
Like a good parent, did beget of him
A falsehood in its contrary as great
As my trust was; which had indeed no limit,
A confidence sans bound. He being thus lorded,
Not only with what my revenue yielded,
But what my power might else exact, like one
Who having into truth, by telling of it,
Made such a sinner of his memory,
To credit his own lie, he did believe
He was indeed the duke; out o' the substitution
And executing the outward face of royalty,
With all prerogative: hence his ambition growing--
Dost thou hear?

To have no screen between this part he play'd
And him he play'd it for, he needs will be
Absolute Milan. Me, poor man, my library
Was dukedom large enough: of temporal royalties
He thinks me now incapable; confederates--
So dry he was for sway--wi' the King of Naples
To give him annual tribute, do him homage,
Subject his coronet to his crown and bend
The dukedom yet unbow'd--alas, poor Milan!--
To most ignoble stooping.
O the heavens!
Mark his condition and the event; then tell me
If this might be a brother.
I should sin
To think but nobly of my grandmother:
Good wombs have borne bad sons.
Now the condition.
The King of Naples, being an enemy
To me inveterate, hearkens my brother's suit;
Which was, that he, in lieu o' the premises
Of homage and I know not how much tribute,
Should presently extirpate me and mine
Out of the dukedom and confer fair Milan
With all the honours on my brother: whereon,
A treacherous army levied, one midnight
Fated to the purpose did Antonio open
The gates of Milan, and, i' the dead of darkness,
The ministers for the purpose hurried thence
Me and thy crying self.
Alack, for pity!
I, not remembering how I cried out then,
Will cry it o'er again: it is a hint
That wrings mine eyes to't.
Hear a little further
And then I'll bring thee to the present business
Which now's upon's; without the which this story
Were most impertinent.
Wherefore did they not
That hour destroy us?
Well demanded, wench:
My tale provokes that question.
In few, they hurried us aboard a bark,
Bore us some leagues to sea; where they prepared
A rotten carcass of a boat, not rigg'd,
Nor tackle, sail, nor mast; the very rats
Instinctively had quit it: there they hoist us,
To cry to the sea that roar'd to us, to sigh
To the winds whose pity, sighing back again,
Did us but loving wrong.
Alack, what trouble
Was I then to you!
O, a cherubim
Thou wast that did preserve me. Thou didst smile.
Infused with a fortitude from heaven,
When I have deck'd the sea with drops full salt,
Under my burthen groan'd; which raised in me
An undergoing stomach, to bear up
Against what should ensue.
How came we ashore?
By Providence divine.
Some food we had and some fresh water that
A noble Neapolitan, Gonzalo,
Out of his charity, being then appointed
Master of this design, did give us, with
Rich garments, linens, stuffs and necessaries,
Which since have steaded much; so, of his gentleness,
Knowing I loved my books, he furnish'd me
From mine own library with volumes that
I prize above my dukedom.
Would I might
But ever see that man!
Now I arise:
Resumes his mantle
Sit still, and hear the last of our sea-sorrow.
Here in this island we arrived; and here
Have I, thy schoolmaster, made thee more profit
Than other princesses can that have more time
For vainer hours and tutors not so careful.
Heavens thank you for't!
Know thus far forth.
By accident most strange, bountiful Fortune,
Now my dear lady, hath mine enemies
Brought to this shore; and by my prescience
I find my zenith doth depend upon
A most auspicious star, whose influence
If now I court not but omit, my fortunes
Will ever after droop. Here cease more questions:
Thou art inclined to sleep; 'tis a good dulness,
And give it way: I know thou canst not choose.
MIRANDA sleeps
Come away, servant, come. I am ready now.
Approach, my Ariel, come.
Enter ARIEL
All hail, great master! grave sir, hail! I come
To answer thy best pleasure; be't to fly,
To swim, to dive into the fire, to ride
On the curl'd clouds, to thy strong bidding task
Ariel and all his quality.
Hast thou, spirit,
Perform'd to point the tempest that I bade thee?
To every article.
I boarded the king's ship; now on the beak,
Now in the waist, the deck, in every cabin,
I flamed amazement: sometime I'ld divide,
And burn in many places; on the topmast,
The yards and bowsprit, would I flame distinctly,
Then meet and join. Jove's lightnings, the precursors
O' the dreadful thunder-claps, more momentary
And sight-outrunning were not; the fire and cracks
Of sulphurous roaring the most mighty Neptune
Seem to besiege and make his bold waves tremble,
Yea, his dread trident shake.
My brave spirit!
Who was so firm, so constant, that this coil
Would not infect his reason?
Not a soul
But felt a fever of the mad and play'd
Some tricks of desperation. All but mariners
Plunged in the foaming brine and quit the vessel,
Then all afire with me: the king's son, Ferdinand,
With hair up-staring,--then like reeds, not hair,--
Was the first man that leap'd; cried, 'Hell is empty
And all the devils are here.'
Why that's my spirit!
But was not this nigh shore?
Close by, my master.
But are they, Ariel, safe?
Not a hair perish'd;
On their sustaining garments not a blemish,
But fresher than before: and, as thou badest me,
In troops I have dispersed them 'bout the isle.
The king's son have I landed by himself;
Whom I left cooling of the air with sighs
In an odd angle of the isle and sitting,
His arms in this sad knot.
Of the king's ship
The mariners say how thou hast disposed
And all the rest o' the fleet.
Safely in harbour
Is the king's ship; in the deep nook, where once
Thou call'dst me up at midnight to fetch dew
From the still-vex'd Bermoothes, there she's hid:
The mariners all under hatches stow'd;
Who, with a charm join'd to their suffer'd labour,
I have left asleep; and for the rest o' the fleet
Which I dispersed, they all have met again
And are upon the Mediterranean flote,
Bound sadly home for Naples,
Supposing that they saw the king's ship wreck'd
And his great person perish.
Ariel, thy charge
Exactly is perform'd: but there's more work.
What is the time o' the day?
Past the mid season.
At least two glasses. The time 'twixt six and now
Must by us both be spent most preciously.
Is there more toil? Since thou dost give me pains,
Let me remember thee what thou hast promised,
Which is not yet perform'd me.
How now? moody?
What is't thou canst demand?
My liberty.
Before the time be out? no more!
I prithee,
Remember I have done thee worthy service;
Told thee no lies, made thee no mistakings, served
Without or grudge or grumblings: thou didst promise
To bate me a full year.
Dost thou forget
From what a torment I did free thee?
No.
Thou dost, and think'st it much to tread the ooze
Of the salt deep,
To run upon the sharp wind of the north,
To do me business in the veins o' the earth
When it is baked with frost.
I do not, sir.
Thou liest, malignant thing! Hast thou forgot
The foul witch Sycorax, who with age and envy
Was grown into a hoop? hast thou forgot her?
No, sir.
Thou hast. Where was she born? speak; tell me.
Sir, in Argier.
O, was she so? I must
Once in a month recount what thou hast been,
Which thou forget'st. This damn'd witch Sycorax,
For mischiefs manifold and sorceries terrible
To enter human hearing, from Argier,
Thou know'st, was banish'd: for one thing she did
They would not take her life. Is not this true?
Ay, sir.
This blue-eyed hag was hither brought with child
And here was left by the sailors. Thou, my slave,
As thou report'st thyself, wast then her servant;
And, for thou wast a spirit too delicate
To act her earthy and abhorr'd commands,
Refusing her grand hests, she did confine thee,
By help of her more potent ministers
And in her most unmitigable rage,
Into a cloven pine; within which rift
Imprison'd thou didst painfully remain
A dozen years; within which space she died
And left thee there; where thou didst vent thy groans
As fast as mill-wheels strike. Then was this island--
Save for the son that she did litter here,
A freckled whelp hag-born--not honour'd with
A human shape.
Yes, Caliban her son.
Dull thing, I say so; he, that Caliban
Whom now I keep in service. Thou best know'st
What torment I did find thee in; thy groans
Did make wolves howl and penetrate the breasts
Of ever angry bears: it was a torment
To lay upon the damn'd, which Sycorax
Could not again undo: it was mine art,
When I arrived and heard thee, that made gape
The pine and let thee out.
I thank thee, master.
If thou more murmur'st, I will rend an oak
And peg thee in his knotty entrails till
Thou hast howl'd away twelve winters.
Pardon, master;
I will be correspondent to command
And do my spiriting gently.
Do so, and after two days
I will discharge thee.
That's my noble master!
What shall I do? say what; what shall I do?
Go make thyself like a nymph o' the sea: be subject
To no sight but thine and mine, invisible
To every eyeball else. Go take this shape
And hither come in't: go, hence with diligence!
Exit ARIEL
Awake, dear heart, awake! thou hast slept well; Awake!
The strangeness of your story put
Heaviness in me.
Shake it off.
'Tis a villain, sir,
I do not love to look on.
But, as 'tis,
We cannot miss him: he does make our fire,
Fetch in our wood and serves in offices
That profit us. What, ho! slave! Caliban!
Thou earth, thou! speak.
[Within] There's wood enough within.
Come forth, I say! there's other business for thee:
Come, thou tortoise! when?
Re-enter ARIEL like a water-nymph
Fine apparition! My quaint Ariel,
Hark in thine ear.
My lord it shall be done.
Exit


Persistent reservation helper protocol¶
QEMU’s SCSI passthrough devices, scsi-block
and scsi-generic
,
can delegate implementation of persistent reservations to an external
(and typically privileged) program. Persistent Reservations allow
restricting access to block devices to specific initiators in a shared
storage setup.
For a more detailed reference please refer to the SCSI Primary Commands standard, specifically the section on Reservations and the “PERSISTENT RESERVE IN” and “PERSISTENT RESERVE OUT” commands.
This document describes the socket protocol used between QEMU’s
pr-manager-helper
object and the external program.
Connection and initialization¶
All data transmitted on the socket is big-endian.
After connecting to the helper program’s socket, the helper starts a simple
feature negotiation process by writing four bytes corresponding to
the features it exposes (supported_features
). QEMU reads it,
then writes four bytes corresponding to the desired features of the
helper program (requested_features
).
If a bit is 1 in requested_features
and 0 in supported_features
,
the corresponding feature is not supported by the helper and the connection
is closed. On the other hand, it is acceptable for a bit to be 0 in
requested_features
and 1 in supported_features
; in this case,
the helper will not enable the feature.
Right now no feature is defined, so the two parties always write four zero bytes.
Command format¶
It is invalid to send multiple commands concurrently on the same socket. It is however possible to connect multiple sockets to the helper and send multiple commands to the helper for one or more file descriptors.
A command consists of a request and a response. A request consists of a 16-byte SCSI CDB. A file descriptor must be passed to the helper together with the SCSI CDB using ancillary data.
The CDB has the following limitations:
the command (stored in the first byte) must be one of 0x5E (PERSISTENT RESERVE IN) or 0x5F (PERSISTENT RESERVE OUT).
the allocation length (stored in bytes 7-8 of the CDB for PERSISTENT RESERVE IN) or parameter list length (stored in bytes 5-8 of the CDB for PERSISTENT RESERVE OUT) is limited to 8 KiB.
For PERSISTENT RESERVE OUT, the parameter list is sent right after the CDB. The length of the parameter list is taken from the CDB itself.
The helper’s reply has the following structure:
4 bytes for the SCSI status
4 bytes for the payload size (nonzero only for PERSISTENT RESERVE IN and only if the SCSI status is 0x00, i.e. GOOD)
96 bytes for the SCSI sense data
if the size is nonzero, the payload follows
The sense data is always sent to keep the protocol simple, even though it is only valid if the SCSI status is CHECK CONDITION (0x02).
The payload size is always less than or equal to the allocation length specified in the CDB for the PERSISTENT RESERVE IN command.
If the protocol is violated, the helper closes the socket.


The COM+ Samples require a particular build environment. The elements of the build environment are
To build and run the COM+ samples you will need the following Microsoft products
The command line tools make use of the following environment variables
Your path must include the following directories:
| Description | Tool | Default Location |
| C Compiler | CL.EXE | \Program Files\Microsoft Visual Studio\VC98\Bin |
| Linker | LINK.EXE | \Program Files\Microsoft Visual Studio\VC98\Bin |
| IDL Compiler | MIDL.EXE | \Program Files\Microsoft Visual Studio\VC98\Bin |
| VB Compiler | VB6.EXE | \Program Files\Microsoft Visual Studio\VB98 |
| FIXVBPRef utility | FIXVBPREF.EXE | \Program Files\Microsoft Platform SDK\Bin |
Include indicates the directories the C compiler will search for include files. This variable is typically set by the Visual Studio setup and can also bet set by running VCVARS32.BAT
Include indicates the directories the linker will search for libraries. This variable is typically set by the Visual Studio setup and can also bet set by running VCVARS32.BAT
The MSSDK environment variable is created by the Platform SDK setup and indicates the directory where the platform SDK is installed.
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.


Registered Number 02626257
TEDDY BEARS DAY NURSERY LIMITED
Dormant Accounts
31 July 2019
| 2019 | 2018 | |
|---|---|---|
| £ | £ | |
| Called up share capital not paid |
|
|
| Current assets | ||
| Cash at bank and in hand |
|
|
| Net assets |
|
|
| Issued share capital | ||
|
|
|
|
| Total Shareholder funds |
|
|
Approved by the Board on
And signed on their behalf by:


{include file="father/header" /} {include file="father/left" /}
{$test.name}
生成测试二维码
{include file="test/viewquestion" /}
现在开始
{include file="father/footer" /}


Home
Products
Learn
Showcase
Community
Download
Blog
About
ActionManager Test
Actions Test
DrawPrimitives Test
EaseActions Test
Event Manager Test
Label Test
Layer Test
Menu Test
Node Test
ProgressActions Test
Scene Test
Scheduler Test
Sprite Test


{% extends 'admin/master.html' %} {% block body %}
Predefined and already hit uri destinations available through this instakwargs
Every hit the server has recorded.
Unique set of recorded IP address which have hit the server.
File manager that allows for uploading content to host out. You can upload and host media, static html files
Option manager for Simple-Honey
{%endif%}


The Digital Asset Management module Pro module allows users to manage site files. This Admin module is located on the Admin > Common Settings > File Management page and can be added to additional pages. A separate version of this module which allows SuperUsers to manage host level files is located on the Host > Common Settings > File Management page
Installation Note: This module is pre-installed on the site and can be added to site pages.
Digital Asset Management Module - DNN Platform
Digital Asset Management Module - Evoq Content and Evoq Content Enterprise


This was my first web app, so i started with a simple Magic 8 Ball. I am using Jquery Mobile and have provided a link to the source code below. Feel free to check it out or give me some feedback! I would love to hear any suggestions for improvements!


Gareth Southgate insists Raheem Sterling hasn't been damaged by Joe Gomez bust-up
Raheem Sterling was left out of England's Euro 2020 qualifier with Montenegro after an altercation with Liverpool defender Joe Gomez in the Three Lions cafeteria
by Irishmirror.ieEngland manager Gareth Southgate insists Raheem Sterling hasn’t been damaged by his bust-up with Joe Gomez – and backed the Three Lions star to prove he is one of the best in Europe.
Sterling will return to Southgate’s side for the final Euro qualifier against Kosovo in Pristina tonight after being left out of the squad that beat Montenegro 7-0 to clinch their place in the finals on Thursday night following a scrap with Liverpool defender Gomez.
Southgate believes Sterling will not let the issue affect him.
Southgate said: “Raheem will play against Kosovo – and he’s looking forward to it.
“What has been suggested [about the fallout of the Sterling-Gomez row] is so far removed from seeing the team socialise and train together, that it’s incredible.
“They are so tight. We’ve seen Raheem’s Twitter posts regarding Joe, and I have also had a long chat with Raheem.
“He’s looking forward to playing and, if anything, I think what has happened will only help to strengthen the bond between the players.
“Raheem is 100 per cent an important player for us. He’s one of the best players in Europe.
“I’m delighted for him that we have qualified because he now knows that he’s going to get the chance to play in a European Championship, where he can be one of the star players.”
Sterling issued a full and frank apology to Gomez for grappling with the 22-year-old Liverpool star less than 24 hours after Manchester City were beaten 3-1 at Anfield.
Sterling also took to social media to defend Gomez – who has been ruled out of today’s clash with a knee injury – from a fans’ backlash after he was booed when coming on as a substitute at Wembley.


XSD2GUI Engine
Author:
Umesh Batra
Project source:
http://sourceforge.net/projects/xsd2gui/
AJAX based tool-kit to generate HTML form from any XSD file. It can add/delete nodes per XSD. Utilizes DOM, Transforms XSD to meta XSD and meta XSD to GUI DOM and to HTML. Populates valid XML file after rendering the XSD based HTML form on browser.
XSD input
XSD data you want to render:
XML data you want to populate (optional):
UBatra
Cupertino
5
45.5
55
55.5
Start node:
View pallets
[
Open all
]
[
Close all
]


Snowpaloza 4.0 (as Amber called it) has been a fizzle so far. Hope it stays that way.
2/10/2009, 9:10:39 AM
Favs: 0
Retweets: 0
link--- layout: tweet ---
Snowpaloza 4.0 (as Amber called it) has been a fizzle so far. Hope it stays that way.
2/10/2009, 9:10:39 AM
Favs: 0
Retweets: 0
link


Epochs
data structure: epoched data¶from __future__ import print_function
import mne
import os.path as op
import numpy as np
from matplotlib import pyplot as plt
Epochs
objects are a way of representing continuous
data as a collection of time-locked trials, stored in an array of
shape(n_events, n_channels, n_times). They are useful for many statistical
methods in neuroscience, and make it easy to quickly overview what occurs
during a trial.
Epochs
objects can be created in three ways:Raw
object, along with event timesEpochs
object that has been saved as a
.fif fileEpochsArray
# Load a dataset that contains events
raw = mne.io.RawFIF(
op.join(mne.datasets.sample.data_path(), 'MEG', 'sample',
'sample_audvis_raw.fif'))
# If your raw object has a stim channel, you can construct an event array
# easily
events = mne.find_events(raw, stim_channel='STI 014')
# Show the number of events (number of rows)
print('Number of events:', len(events))
# Show all unique event codes (3rd column)
print('Unique event codes:', np.unique(events[:, 2]))
# Specify event codes of interest with descriptive labels
event_id = dict(left=1, right=2)
Script output:
Number of events: 320
Unique event codes: [ 1 2 3 4 5 32]
Now, we can create an mne.Epochs
object with the events we’ve
extracted. Note that epochs constructed in this manner will not have their
data available until explicitly read into memory, which you can do with
get_data
. Alternatively, you can use
preload=True.
Note that there are many options available when loading an
mne.Epochs
object. For more detailed information, see (LINK TO
EPOCHS LOADING TUTORIAL)
# Expose the raw data as epochs, cut from -0.1 s to 1.0 s relative to the event
# onsets
epochs = mne.Epochs(raw, events, event_id, tmin=-0.1, tmax=1,
baseline=(None, 0), preload=True)
print(epochs)
Script output:
<Epochs | n_events : 145 (all good), tmin : -0.0998976065792 (s), tmax : 1.0006410259 (s), baseline : (None, 0),
'left': 72, 'right': 73>
Epochs behave similarly to mne.io.Raw
objects. They have an
info
attribute that has all of the same
information, as well as a number of attributes unique to the events contained
within the object.
print(epochs.events[:3], epochs.event_id, sep='\n\n')
Script output:
[[27977 0 2]
[28771 0 1]
[29652 0 2]]
{'right': 2, 'left': 1}
You can select subsets of epochs by indexing the Epochs
object directly. Alternatively, if you have epoch names specified in
event_id then you may index with strings instead.
print(epochs[1:5])
print(epochs['right'])
Script output:
<Epochs | n_events : 4 (all good), tmin : -0.0998976065792 (s), tmax : 1.0006410259 (s), baseline : (None, 0),
'left': 2, 'right': 2>
<Epochs | n_events : 73 (all good), tmin : -0.0998976065792 (s), tmax : 1.0006410259 (s), baseline : (None, 0)>
It is also possible to iterate through Epochs
objects
in this way. Note that behavior is different if you iterate on Epochs
directly rather than indexing:
# These will be epochs objects
for i in range(3):
print(epochs[i])
# These will be arrays
for ep in epochs[:2]:
print(ep)
Script output:
<Epochs | n_events : 1 (all good), tmin : -0.0998976065792 (s), tmax : 1.0006410259 (s), baseline : (None, 0)>
<Epochs | n_events : 1 (all good), tmin : -0.0998976065792 (s), tmax : 1.0006410259 (s), baseline : (None, 0)>
<Epochs | n_events : 1 (all good), tmin : -0.0998976065792 (s), tmax : 1.0006410259 (s), baseline : (None, 0)>
[[ -1.56510152e-12 -6.00746037e-13 3.63609444e-13 ..., -5.42252344e-12
-3.49381248e-12 8.07845329e-12]
[ 4.71111366e-12 2.78240270e-12 -1.10663744e-13 ..., -2.03937471e-12
-1.07501922e-12 1.81804722e-12]
[ 1.27694161e-13 1.26810933e-13 8.74659808e-14 ..., 3.27176412e-14
5.59107736e-14 6.80975243e-14]
...,
[ 1.23131267e-06 7.56233126e-07 3.00980681e-07 ..., -4.92607996e-06
-5.29288884e-06 -4.96516158e-06]
[ 2.15536774e-06 2.46614632e-06 2.39846713e-06 ..., -4.64649509e-06
-4.75225661e-06 -4.52661069e-06]
[ 1.26772322e-05 1.26772322e-05 1.33309187e-05 ..., -1.41239155e-05
-1.41239155e-05 -1.15091693e-05]]
[[ -1.38645862e-11 -1.48289417e-11 -1.48289417e-11 ..., 4.45816796e-12
4.45816796e-12 8.31558988e-12]
[ -9.01119056e-12 -1.19042570e-11 -1.28686125e-11 ..., 1.59671973e-12
3.52543069e-12 3.52543069e-12]
[ -6.12059507e-13 -6.39043401e-13 -7.73632967e-13 ..., 1.21753954e-14
2.69203700e-14 7.25978380e-15]
...,
[ -1.26659305e-06 -8.24046269e-07 6.87035679e-08 ..., 2.17776256e-05
2.13639537e-05 2.18647632e-05]
[ -7.43371155e-06 -7.56501732e-06 -7.75591614e-06 ..., 1.08169901e-05
8.21941912e-06 7.93006744e-06]
[ 3.34344584e-06 7.28699735e-07 -3.19341943e-06 ..., 7.50132080e-08
-5.78673319e-07 3.34344584e-06]]
If you wish to look at the average across trial types, then you may do so, creating an Evoked object in the process.
ev_left = epochs['left'].average()
ev_right = epochs['right'].average()
f, axs = plt.subplots(3, 2, figsize=(10, 5))
_ = f.suptitle('Left / Right', fontsize=20)
_ = ev_left.plot(axes=axs[:, 0], show=False)
_ = ev_right.plot(axes=axs[:, 1], show=False)
plt.tight_layout()
Total running time of the script: (42 minutes 45.688 seconds)
Download Python source code: plot_epochs_objects.py


| File | Statements | Branches | Functions | Lines | |||||
|---|---|---|---|---|---|---|---|---|---|
| LevelDirector.js | 27.27% | 21/77 | 0% | 0/26 | 20% | 3/15 | 27.27% | 21/77 | |
| TMXGroup.js | 7.41% | 2/27 | 0% | 0/14 | 14.29% | 1/7 | 7.41% | 2/27 | |
| TMXLayer.js | 2.84% | 5/176 | 0% | 0/84 | 3.7% | 1/27 | 2.84% | 5/176 | |
| TMXObject.js | 3.13% | 2/64 | 0% | 0/32 | 16.67% | 1/6 | 3.13% | 2/64 | |
| TMXRenderer.js | 3.55% | 7/197 | 0% | 0/82 | 2.86% | 1/35 | 3.55% | 7/197 | |
| TMXTile.js | 6.67% | 3/45 | 0% | 0/27 | 20% | 1/5 | 6.67% | 3/45 | |
| TMXTiledMap.js | 5.56% | 8/144 | 0% | 0/71 | 5.88% | 1/17 | 5.56% | 8/144 | |
| TMXTileset.js | 5.15% | 5/97 | 0% | 0/52 | 7.14% | 1/14 | 5.15% | 5/97 | |
| TMXUtils.js | 8.2% | 10/122 | 0% | 0/90 | 25% | 2/8 | 8.2% | 10/122 |


Documentation: javascripture.com
Documentation: stackoverflow.com
Data URIs Documentation developer.mozilla.org
Later on use the id number for setting the id attribute of draggable elements


Home
Our Products
Shopping Cart (
3
)
Your Shopping Cart
Couch Pillow $
19.99
Qty:
remove
Description: small, square
Round Pillow $
16.99
Qty:
remove
Description: medium, round
Total: $
57.97
Proceed to Checkout


The binary semaphores are quite similar to counting semaphores, but their value is restricted to 0 and 1. In this type of semaphore, the wait operation works only if semaphore = 1, and the signal operation succeeds when semaphore= 0. It is easy to implement than counting semaphores.
Process in blocked state


Register
To get to know your taste we need some information about you. When creating an account consider to provide your Last.fm name to get even better recommendations.
If you have any questions take a look at our FAQ section.
Listen & Rate
Get lists of recommended songs and listen to them right away. To get the best MuSe experience we suggest to use Spotify in order to listen to the songs.
By rating songs you will get better recommendations the next day, as we recompute your taste each night.
Get Recommendations
After rating enough songs you will start to discover great songs and artists. Since we get to know your taste better and better you will get recommendations that are directly tailored to you.
That's it. We hope you enjoy MuSe!


Pastor Vernon's Elder Prayer
Prayer is something deeper than words. It is present in the soul before it has been formulated into words. And it abides in the soul after the last words of prayer have passed over our lips.
— O. Hallesby (1879-1961), Prayer, London: Inter-Varsity Fellowship, 1943, reprint, Augsburg Fortress Books, 1975, 1994, p. 16
Can we believe that God ever modifies His action in response to the suggestions of man? For infinite wisdom does not need telling what is best, and infinite goodness needs no urging to do it. But neither does God need any of those things that are done by finite agents, whether living or inanimate.
He could, if He chose, repair our bodies miraculously without food; or give us food without the aid of farmers, bakers, and butchers; or knowledge without the aid of learned men; or convert the heathen without missionaries.
Instead, He allows soils and weather and animals and the muscles, minds, and wills of men to cooperate in the execution of His will. "God", says Pascal, "instituted prayer in order to lend to His creatures the dignity of causality."
— C. S. Lewis (1898-1963), "The Efficacy of Prayer"
One: We pray for refugees, orphans, widows and the peoples of the world who are facing shortages of food, water, clean air, shelter, energy and medicine, that you would provide for them in their needs.
All: The earth is the Lord’s and all it contains.
One: We pray for the parts of the earth that are under severe stress - from civil war in Syria to floods in Louisiana and Texas, from continuing war in Afghanistan to teenage deaths in Ocoee.
All: The earth is the Lord’s and all it contains
One: We pray for “all in authority” (1 Timothy 2:2), that they would seek ways of peace and not of war, that they would grant and promote religious liberty, conservation of resources, and free enterprise. We pray for “spiritual statesmen,” that they be granted courage and wisdom to speak biblical truth and apply gospel principles to correct the wrongs in the world.
All: The earth is the Lord’s and all it contains
One: We pray for God-fearing, wise, just and compassionate rulers at every level, that they would honor you in their work, that they would protect earth, air, water, public health and manage resources. We pray for those seeking office - particularly the highest office in our land that they would lead with wisdom and humility.
All: The Earth is the Lord’s and all it contains
One: We pray for all living in closed and persecuted nations, that you grant protection, bring revelation of Jesus Christ as Messiah; send forth your light and gospel truth— let it break in upon them.
We pray for all living in religious systems of idolatry, that you deliver them from inherited deities and idols; instruct and help them learn to worship and walk in the ways of the Living God.
All: The Earth is the Lord’s and all it contains
One: We pray for unity in the Church in the U.S. and around the world, that the prayers of Jesus in John 17 be answered and realized in our day; help each of us and all Christians practice love in diversity.
We pray for Revival and an outpouring of the Holy Spirit, that kingdom peacemakers be called and released who humbly hold to unity in the body of Christ in their hearts, minds and ministries. We take a personal posture and pray against divisiveness, envy, pride, deceit, personal ambition, contempt, anger, slander, covetousness, and immoral and reckless folly in the body of Christ.
All: The Earth is the Lord’s and all it contains
WE PRAY FOR NORTHLAND CHURCH.
We pray for our purpose to bring people to maturity in Christ.
We pray for our vision to see people coming to Christ, and to be transformed together as we link locally and globally to worship and serve everywhere, every day.
We pray for our mission to respond to Your grace and goodness in how we worship You, read the Bible, share our stories, be in community, pray, serve others and live generously. We believe as we respond together to You we will be transformed into the image of Christ.
One: We humbly offer ourselves and pray that we might be a people set apart for your purposes—to the poor and suffering, to all who do not yet know you, to all across our land and in the entire world.
We pray that our hearts will be open to wisdom and to your ways, that you will grant us grace to partner in protecting the life and health of the unborn and of all living, in stewarding and protecting your creation, and in caring for and loving those deemed to be “the least.” (Matthew 24:40)
We pray that you will do a mighty work in our midst, that you will fashion us to be a faithful people, a collaborative community of the Redeemed, who praise you in all circumstances, and who rejoice together in the good works you have prepared in advance for us to accomplish. (Ephesians 2:10) — For the glory of God alone.
All: The Earth is the Lord’s and all it contains. Amen.
Download: picture_as_pdf


MASSACHUSETTS DEPARTMENT OF DEVELOPMENTAL SERVICES
presents
Important Transition Information Every Family Should Know
Transition Information Fact Sheets
Download the PDF
OR
GitBook
Read
PDF
ePub
Mobi


Starbucks Likely Range Bound After Inconclusive Q4 2019 Earnings
by Investing HoboSummary
- Starbucks' Q4 2019 earnings were positive enough to help its stock hold key longer trend technical support levels.
- Starbucks benefitted from easy comparisons in the past two quarters which will reverse in the next several quarters.
- Operating headwinds will likely slow 2020 earnings growth and put pressure on the stock which is trading at four times growth rates.
After more than doubling from 2018 lows, Starbucks (NASDAQ:SBUX) has undergone extended profit taking in the past three months. From its highs in late July, the stock has corrected by almost 19% following indications 2020 growth rates may slow. Had the company not reported relatively strong fourth quarter 2019 results a couple of weeks ago, investors could have faced further downside as several key technical indicators have already turned bearish. While Starbucks' Q4 earnings may stabilize the stock in the near term above a critical longer-term technical support level, tougher comparisons will require the company to execute almost flawlessly just to match already lowered expectations.
Fourth Quarter And Fiscal 2019 Earnings
In the past two quarters, Starbucks has executed extremely well in their Americas market segment. In the third and fourth quarter, the company reported Americas segment same store sales growth of 7% and 6% respectively. More importantly, transactions were up 3% in each quarter reversing a negative traffic trend during the past three years.
(Data compiled from SBUX's quarterly results.)
In addition, the company's second key market China also witnessed strong comparables. China posted comparable same store sales of 6% and 5% in Q3 and Q4, respectively. Again traffic rebounded by 2% in each of the past two quarters after declining in three out of the past four quarters. Increasing delivery trends helped boost results in China while new drinks helped sales in the company's key Americas market.
(Data compiled from SBUX's quarterly results.)
In isolation, comparable same store sales have been strong in the past two quarters. However, as the above charts show, comparable sales were only strong relative to weak results in the corresponding quarters a year ago. 3% traffic growth in the company's Americas region during the past two quarters is very impressive, but it was after an average of -1.5% traffic declines in the same two quarters last year. In fact, even after two strong quarters of 3% traffic growth, traffic volume has only recovered to levels seen three years ago before multiple quarters of declines were recorded. The traffic situation was similar in China as two quarters of decent 2% traffic gains were on the backs of an average of -1.5% traffic declines for similar quarters in 2018.
On a consolidated level, comparable sales grew by 5%. Considering the Americas and China segments represent 87% of the company's store revenues, the lower consolidated average implied that other markets were much weaker. After factoring out China's 5% comparable gains from the international segment's 3% figure, it appears the rest of the world posted flat results at best in the fourth quarter. Perhaps this was part of the reason Starbucks decided to reorganize its operating segments just prior to its fourth quarter earnings release. Even though China segment revenues grew by 4.7% sequentially, the company's international segment combined revenues actually posted a marginal sequential decline during the quarter.
Normally, strong same-store sales, especially those on higher traffic, translate to higher operating margins. Non-GAAP operating margins declined from 18.1% to 17.2% on an annual basis during the quarter based on the company's own non-GAAP definition. While management did explain a couple of factors that accounted for the decline in their Q4 2019 earnings conference call, the CFO had to admit margins were weak relative to comparable sales when asked for clarification.
...admittedly a 20 basis point margin improvement seems very modest in the context of a 5% global sales comp for the quarter.
On an annual basis, non-GAAP operating earnings as defined by the company grew at 2.3% in fiscal 2019. This metric had already hit a wall since fiscal 2017 after extremely robust growth in the years prior. In the past three years, non-GAAP operating earnings have only grown by an average of 2.5%, which is far below the company's 8-10% target highlighted during the company's last annual shareholder meeting. The company's 2020 guidance for operating income did interestingly remove the 'non-GAAP' description, so it will be interesting to see how Starbucks manages to expand margins in 2020.
| Non-GAAP Operating Income | Non-GAAP Operating Income Growth | Non-GAAP Pre-tax Net Income | Non-GAAP Pre-tax Net Income Growth | |
| FY 2013 | $2,458.70 | 23.10% | $2,498.20 | 23.06% |
| FY 2014 | $3,063.30 | 24.59% | $3,044.90 | 21.88% |
| FY 2015 | $3,655.60 | 19.34% | $3,653.10 | 19.97% |
| FY 2016 | $4,232.10 | 15.77% | $4,218.80 | 15.49% |
| FY 2017 | $4,412.50 | 4.26% | $4,426.30 | 4.92% |
| FY 2018 | $4,457.40 | 1.02% | $4,414.50 | -0.27% |
| FY 2019 | $4,560.00 | 2.30% | $4,325.50 | -2.02% |
(Data compiled from SBUX's quarterly results. All dollar figures in millions of USD.)
As the above table shows, Starbucks' pretax net income fared worse than its reported non-GAAP operating income in the past two years. As I noted in my previous SBUX article, the company has funded large share buybacks through debt. Increasing net interest expenses have caused pretax net income to fall below non-GAAP operating income in the past two years. Lower share counts through buybacks did counteract stagnant income levels and resulted in earnings growth on a per share basis.
Outside of the positive comparable sales in the quarter, most of the company's operating metrics were uninspiring. Coupled with fourth quarter earnings that only matched expectations on less than 1% revenue beat, it was not surprising the stock quickly gave up its post earnings pop to close flat relatively by the end of the day.
2020 Earnings Estimate
For 2020, Starbucks expects revenues to grow 6-8% with moderate margin expansion. Other key earnings factors include an even larger interest expense of $415-425 million which would represent about a 27% annual increase. In addition, the effective tax rate is also expected to rise to 22-24% from the 19.5% reported in 2019. These higher non-operating costs will result in slower earnings per share growth of approximately 7% at the midpoint of the company's $3.00-3.05 annual non-GAAP EPS guidance.
Based on the company's current operating metrics and annual guidance using midpoint ranges, the following is a general earnings profile for Starbucks' fiscal 2020.
- Revenues: $28,364.20
- Non-GAAP Operating Margin: 17.20%
- Non-GAAP Operating Income: $4,878.64
- Other Income: $100.00
- Interest Expense: $420.00
- Non-GAAP Pretax Net Income: $4,558.64
- Tax (23%): $1,048.49
- Non-GAAP Net Income: $3,510.15
- Diluted Share Count: 1200
- Non-GAAP EPS: $2.93
(All dollar figures and share count in millions.)
To reach the company's midpoint $3.025 in annual non-GAAP EPS, Starbucks would need to expand non-GAAP operating margin by slightly over 50 basis points. Based on reported results in the past couple of years, I am not sure how this will be managed unless comparable sales remain extremely strong similar to levels reported in the past couple of quarters. As I noted in my previous SBUX article, the previous estimates appeared aggressive and have ultimately been lowered in the past couple of months. I still believe the current already lowered estimates are still aggressive in light of the company's Q4 earnings release. Either Starbucks would need to hit the debt market again to buy back even more shares, or everything would need to go just about perfectly for current EPS targets to be achieved.
Part of the difficulty in regaining higher margins reported in past years is due to increasing depreciation and amortization expenses. Starbucks has been on an extremely aggressive expansion schedule in the past couple of years. As a result, depreciation and amortization expenses as a percentage of total revenues have increased by almost a full percentage in just the past two fiscal years.
The only way to counter this expense is to grow gross profits at a faster pace. While results in the company's Americas segment have been very strong, other markets, excluding China, have been contracting even despite physical growth in stores. Even in China, revenues have not grown to the same degree as the company's aggressive expansion.
The following table shows China segment results which became available at the start of fiscal 2019. In the past three quarters, annual revenue growth in China has not kept up with store count additions. Starbucks also started delivery services in China since the start of the fiscal year and reported 6% and 7% of total China segment revenues from delivery sales in Q3 and Q4 2019, respectively. Excluding delivery contributions, revenues only grew at a fraction of store growth.
| China Revenues | China Y/Y Revenue Growth | China Store Count | China Y/Y Store Count Growth | Delivery Ratio | Revenue Ex. Delivery | |
| Q2 2019 | $702.80 | 9.00% | 3789 | 17.00% | 5.00% (EST.) | $667.66 |
| Q3 2019 | $728.80 | 10.00% | 3922 | 16.00% | 6.00% | $685.07 |
| Q4 2019 | $763.00 | 14.00% | 4125 | 17.00% | 7.00% | $709.59 |
(Data compiled from SBUX's quarterly results. All dollar figures in millions of USD.)
While there should still be delivery upside in China, the magnitude left may not be very high. Starbucks' main Chinese competitor Luckin Coffee (LK) posted 12.8% delivery sales during the same quarter, but its delivery sales have been on the decline by design to reduce delivery subsidies that lower store operating margins. Starbucks already noted that while delivery adds to revenues, the profit profile is lower. As a result, incremental delivery sales may not be as accretive to earnings as the increases in revenues suggest. It is due to lower returns on investment capital in markets outside the Americas segment that will make it difficult for Starbucks to fully compensate higher levels of depreciation recorded in the past two years.
Final Thoughts
Technically speaking, the stock has broken two key long-term trendlines (represented by the blue and purple lines in the weekly chart below) that date back to 2018 lows.
(SBUX weekly chart with MACD indicator.)
The daily chart shown below more clearly defines these trendlines as well as key 50 and 200-day exponential moving averages. It should be clear SBUX has been in a downtrend since breaking its 50-day EMA with successive lower highs and lower lows. The 200-day EMA remained a critical support level which held and was helped by the company's recent positive Q4 earnings report. With company specific news unlikely to come out for the rest of this year, SBUX may be range-bound between its 200-day EMA and its 50-day EMA or purple uptrend line.
(SBUX daily chart with MACD indicator.)
Beyond the remainder of 2019, the outlook for the stock should be increasingly more difficult. The US and global economies have been showing signs of slowing down. With the current global economic expansion past the decade mark, macro-economic risks only increase with time. As a consumer discretionary company, Starbucks could face greater pressure in an economic downturn after being so aggressive with expansion and share repurchases which helped contribute to the higher debt levels.
Even without a recession, higher debt in a slowing economy may make it more difficult for the company to continue with the high magnitude of share repurchases that led to double digit EPS growth of recent years. If Starbucks can hit its midpoint non-GAAP EPS growth target of 7% in 2020, the stock is currently trading at almost 28x forward earnings. By historical valuation metrics, SBUX is trading at a high premium to growth and as I have argued discount a lot of risk linked to the company's exposure in China.
In my opinion, Starbucks already made a mistake by increasing exposure in China a couple years ago when some US peers had divested exposure ahead of President Trump's escalation of trade tensions with China. Instead of scaling back, the company doubled down by accelerating its physical presence even as a serious Chinese domestic competitor emerged. This all in attitude could prove disastrous if the current trade war escalates to full scale decoupling, but the Chinese consumer's perception of the US would likely hold Starbucks' fate more so than even a worse case political outcome.
Disclosure: I am/we are short SBUX. I wrote this article myself, and it expresses my own opinions. I am not receiving compensation for it (other than from Seeking Alpha). I have no business relationship with any company whose stock is mentioned in this article.
Additional disclosure: I am also long LK.


 Jowl corned beef brisket ground round, beef venison cupim. Pork shankle tenderloin t-bone bresaola, kielbasa fatback kevin tri-tip.  Pork loin venison tail turkey, shankle tongue ball tip chuck leberkas beef ribs short loin alcatra beef jerky. Turducken kevin leberkas t-bone burgdoggen tail. Ham meatloaf tenderloin, alcatra hamburger shankle tail fatback.
Jowl pork belly sausage rump meatball chuck filet mignon. Tail ball tip spare ribs pork belly hamburger pastrami. Porchetta beef boudin hamburger landjaeger pancetta bresaola sausage leberkas. Spare ribs beef ribs shankle corned beef prosciutto.


Mapped Hex Grid Javascript
Your browser does not support the HTML5 canvas tag.
<-- Open source libraries -->


A servo is a device whose rotational position is controlled by
PWM signal from the robot. The servos included in the kit of
parts are usually low power and have 170 degrees of rotation.
Properties
Output Port (PWM)
The PWM port on the roboRIO or MXP that the output is
plugged into.


India is the largest producer of red chillies. As the name suggests it is red in color and can be consumed as it is or can be broken down and made into a powder. It is really spicy and the intense heat is concentrated in the seeds. Fresh red chillies are milder.
No Artificial Color, Adulterant free, Free from contamination, No Added preservatives, Antioxidant, Natural taste.
Makhanas, also called fox nuts, or lotus seeds, come from a plant called Euryale Fox which grows in the stagnant water of wetlands or ponds in Eastern Asia.
It is widely grown in the Eastern and Southern Asian region. Often used in various Indian delicacies to add flavor and sometimes to increase the consistency of different curries.
Lotus nut is rich in potassium, protein, phosphorus, magnesium, and iron. Phool Makhanas effectively ease out the bowel movements and can help to reduce constipation and indigestion.
As a spice, the lemony and floral flavor of coriander finds its way into the many Asian, Latin, and Indian dishes, as well as European cuisine. This spice is found in the Indian spice mixture garam masala, which is used in many savory dishes.
Coriander is a spice produced from the round, tan-colored seeds of the coriander plant. The whole seeds are sometimes used in pickling and brining.
Turmeric is a spice that comes from the turmeric plant. Turmeric has been used in Asia for thousands of years and is a major part of Ayurveda, Siddha medicine, traditional Chinese medicine.
From India, it spread to Southeast Asia along with Hinduism and Buddhism, as the yellow dye is used to color the robes of monks and priests.
It has a warm, bitter taste and is frequently used to flavor or color curry powders, mustards, butters, and cheeses.
Dry mango powder is made from unripe dry mangoes. It has sour flavor and is used in dishes where acidity is required. It is popularly known as amchur. Slices of the mango's flesh are dried and then ground into a powder.
It has sour flavor and is used in dishes where acidity is required. Amchur adds a pleasant acidity to dish the same way as tamarind, vinegar or lemon juice adds .
Amchur also appears in pickles, chutneys and curries, adding a fruity and sharply sour flavour to cooking. It can be used to make a unique sweet and sour curry or chutney.
Federation of Indian Export Organisations is the Apex export promotion organisation of India.
The Spices Board is the Indian government regulatory and export promotion agency for Indian spices.
Oldest and most reputed association of spice market.
Our foundation was laid 90 years ago by the visionary and social activist late Lala Mannilaljj Newatiya. We are a prominent and trusted wholesale trader in the spice city of Kanpur. One of the oldest and most reputed firms, we are actively associated with The Kirana Merchant Association and several other societies of Kirana bazar (spice market) in the city.
Centrally located with offices in the heart of spice market – Nayaganj, Kanpur, we have made a name for ourselves as top suppliers of Red Chillies (Lal Mirch), Turmeric (Haldi), Coriander (Dhaniya), Dry Mango (Khatai), Foxnuts (Makhana), Other spices etc.
We trade in both Whole and Powder form of spices.
Download Resume


Testing Flex Layout
Full width
Text field label
Description for the above text field should be one line.
Primary Action
Secondary Action
Tertiary Action
Primary Action
Secondary Action


This is a ferry terminal for services to several islands off the south coast. It lies just west of the island of Geoje.
Usual clearance possible here.
A resort marina (Chung Mu resort). The marina desk in is the foyer of the resort (limited English).
Last updated March 2011.


{% extends 'home.html' %} {%block body%} {% load static %} {%block header%} {% comment %} {% endcomment %} {%endblock header%}
{%for message in messages %} {% endfor %}We're open for any suggestion or just to have a chat , we are active most of the time in our social media please feel free to contact.
Address: Dehradun, Uttarkhand ,India
Phone 1: +91<PHONE_NUMBER>
Phone 2: +91<PHONE_NUMBER>
Email 1<EMAIL_ADDRESS>Email 2: surajyadav8658@gmail.com


The TelerikEditorProvider for the RTE is an alternative Editor that can be installed for DNN.
Important. The TelerikEditorProvider must be installed and enabled by a SuperUser. See "About the HTML Editor Manager" for details on changing the RTE provider.


Before Change
elif ext == "bz2":
f = bz2.BZ2File(filepath, mode=mode_)
elif ext == "xz":
if compat.PY2 is True:
raise IOError("Python2"s stdlib doesn"t include lzma compression")
f = lzma.LZMAFile(filepath, mode=mode_)
elif ext == "zip":
f = zipfile.ZipFile(filepath, mode=mode_,
compression=zipfile.ZIP_DEFLATED)
After Change
// and get file handle accordingly
_, ext = os.path.splitext(filepath)
ext = ext.lower()
if ext in (".gz", ".bz2", ".xz"):
// strip bytes/text from mode; "b" is default, and we"ll handle "t" below
mode_ = mode.replace("b", "").replace("t", "")
if ext == ".gz":


| DOSE: T+ 0:00 |
1 bowl |
smoked |
Cannabis |
(plant material) |
| T+ 2:30 |
50 mg |
insufflated |
Pharms - Topiramate |
(ground / crushed) |
| T+ 7:00 |
1 bowl |
smoked |
Cannabis |
(plant material) |
I used psychedelics alot when I was younger, with my friends. I didn't have any goals in my life, I didn't have any plans. We were all under 18, and most were still in high school. When I was still in high school, I probably shouldn't have used psychedelics (including marijuana) so much. If I could take it all back now, I still wouldn't though. I feel I've done the fine tuning enough today, and finally sorted through the garbage.
It started when my closest friends and I all started to smoke weed around the same time. We thought we knew it all, and looking back we knew just a tiny little bit. I've done Ketamine, LSD, Mushrooms, MDMA, Opiates, Amphetamines, Cocaine, DXM, LSA, Benzos, Alcohol, Marijuana, many legal drugs, many prescribed recreational and psychiatric drugs, and many poor substitutes. Ketamine, LSD, Mushrooms, MDMA, Opiates, Amphetamines, and Cocaine I have done less than a dozen times each. I havenít felt the need for any drug at any time, except when I was smoking marijuana daily.  I would take psychedelics with my friends whenever we thought of it, and more and more benzodiazipines with alcohol. The last 3 years I have done DXM and LSA more times than I can count, and I believe at one point they may have helped to cloud my goals and my thinking.
I was put on anti-psychotics and antidepressants in July after getting paranoid while smoking weed with my two good friends. Late August I moved away from my old friends, and my old way of using drugs. My whole situation has changed, slowly, to the way it is now. I got in trouble with the law eventually, for something I did when I was high. It was then I was introduced to Narcotics Anonymous, nearly a year ago. I quit using street drugs for various amounts of time. Never getting quite 2 months off street drugs, honestly looking back at it. Still, I've used psychedelics only a handful of times in the last year (LSA & DXM).
I believe I was more pressured into it than anything else, because my mother is a recovering schizophrenic alcoholic. She is also a born again Christian. She found Alcoholics Anonymous is the only thing that helps her to not drink. She has never done any street drugs. I never even considered her an alcoholic, but one of the few good things about AA/NA is no one can decide that but yourself.
At this time, I was getting switched from SSRIs, anti-anxiety, and anti-psychotic medications by a psychiatrist. Nothing was helping me enough. I had not been going to college, or ever really completed a full semester, and had really not made any friends my age since I moved. I had no motivation to do anything. Nothing seemed worthwhile, and nothing had been since I was about 16 or so. Now, I had no drugs and no friends to do drugs with.
So I declined more and more over the months. My old friends I talked to online were noticing changes in me, and didn't know what to think. I did less street drugs, and never in consecutive days. I made a final choice about my using back in June, when I stayed 30 days in an inpatient recovery facility. It was there that I saw things in ways I never thought of before. I thought long about whether the prescription medications were holding me back. When I got out of my stay, I went to mental health again. I stayed there in the hospital for 3 days on a 5150 (health code in California, for an involuntary hold of a patient who seems a threat or harm to themselves or others), and was put on a new set of medications.
When I got back to my mom's house, I quit taking any medications and I sat in my bed all day watching TV and sleeping. I didn't talk to anyone anymore. Around mid-August, I got around to setting my computer back up after just shrugging off that it was broken. I was not going to NA meetings at all anymore, I have gone to maybe a dozen meetings since July. I believe I felt generally stupider and slower, and my memory was shot. I got back online, and spent the nights how I used to: on drug forums.
It was near the end of August, I decided I was going to try DXM again. The last time I had done it was in May. About a week after I first did DXM, I met one of my only friends I've met in over a year. It was also from this that I decided to get back into mental health and tell the psychiatrist I had stopped taking the antidepressants and antipsychotics back in July. He gave me 5 new prescriptions. One of the new drugs the psychiatrist prescribed me was Topomax. The others are wellbutrin, trileptal, serequol, and risperdal.
The last two days before this night, I had just gotten my bottle of Topomax and bought weed. I took 4 Topomax and smoked a bowl, then 2 more a few hours later. The next day I took a total of 5 throughout the day with a little more weed.
I believe it had all been building up, since I first did psychedelics again, at the end of August.
---------------
So last night, about 15 minutes after last smoking a bowl of low grade with tobacco, I make it to my front door. It is around 8pm, I smoked the last of my weed today at noon, then I insuffulated 2 Topomax 25mg sometime from 2:00pm to 3:00pm. I was already feeling good at around 7pm, when I met up with my friend and smoked weed. I started to get real high real fast after the first few hits. I'm glad my friend understands how out of it I get on pills. Most people donít.
I'm coming inside. I say hi to Brad, he's sitting on the couch, I think. It seems I'm going real fast, everything is in a blur when I look back on it. I go straight to my room and close the door, a million thoughts in my head at once. I take my computer off standby, but I'm too out of it to get a chance to set up music. It was too hot, so I open up the blinds above my bed and turn the fan on. I then sit down and begin to fool around at the computer.
I'm hearing mega music in my head, it reminds me of Queens Of The Stone Age or Monster Magnet. It's awesome. It's about that song I've been writing. I open up notepad, and start listening to the 1 minute tracks I had recorded myself a week or two ago, not as good as what I can play now on guitar. But I still like it. I realized its all basically the same song, just different parts. I eventually stopped Winamp, sat on my bed and hooked the guitar up. I started practicing for a little bit what I had been playing for the past two weeks since I first learned.
Eventually I sat back down on the computer, it had been roughly 25 minutes since I got home. I decided to go online, but I first thought of putting my weed away. I looked through my pockets and searched for my prescription bottle which had my weed in it. I'm doing all this while trying to load music on Winamp, trying to look for the right song for that moment. I still have notepad open, and I start to write lyrics again. I seem to be getting more and more detached. I go to my closet to put my weed where I always put it, and when I reach into my pocket I hear some voice which sounded like it was through a megaphone outside my bedroom door say something to the effect of 'Drop it, buddy' and then I heard right after 'If he doesn't make another move that will be the only smart move he's made all night'.
 I just thought I had flipped again. I hadn't even smoked too much weed that night. But this slowly started me into what built up to a massive panic. I ignored that voice, and put the weed up in the top shelf in the closet, when I heard a different voice this time, still sounding through a megaphone 'What are we going to do with this guy?' and one of the first ones 'He just doesn't learn, does he?' Now, I couldn't believe I had just heard 3 distinct voices, all seeming to react to my actions. I have never experienced this one before.
So, starting to get a little more paranoid, I go towards my bed to close my blinds. I peer outside for a second or two, and I'm thinking real hard now, 'Is someone REALLY watching me?' I heard those same voices again chuckle while saying 'Oh, look, I think he gets the picture now' and another one say something like 'Oh gee, am I going to go to jail?' I then heard lots of laughter. I had a marijuana pipe, one bowl of marijuana, and prescription drugs in my room. On my computer, I had IRC and IM logs of my friends and I planning road trips to meet. When I heard that last voice say, 'the picture', my mind went off. I started thinking a million thoughts at once. Most were typical panic and paranoia thoughts.
I thought it was over for me.
I thought I was going to jail that night.
I thought my mom's new boyfriend had been setting me up from day 1.
 For all I knew right then, everyone online I had talked to were FBI agents or cops.
I thought I was heading to Federal Pound-Me-In-The-Ass Prison or the home for the criminally insane.
My mind was racing. I started to visualize my new reality. I had visions of me in court, with my doctor testifying. Him saying how I had been delusional, how I hadn't not been delusional and schizophrenic since he first met me. I thought I was going to be locked up and fed psychiatric drugs for the rest of my life. And now, when I was high, it was all going to go down. I thought about killing myself for a few seconds there.
It kept building. They were reading my thoughts, the voices kept going. They were telling me what not to do.  'Just get down on the floor, and it will all be over soon.' The other ones would then agree. I stayed in those thoughts for the longest 3-5 minutes ever, just standing right next to my door, hearing the voices talk. I thought of going online, but I was frozen in terror. I had convinced myself my mom was in on it, that she had called the cops on me. I was completely incapacitated. I knew what I should have done, I should have put on music and tried to lay down to let it pass, or call someone up. But I couldn't put on music, I couldn't lay down and let it pass. The only thing I could do at the time was listen to what I was hearing.
Time was nonexistent. So in what had felt like an eternity, my thoughts eventually came to 'Why haven't I been busted yet?' So, I decided to see what was really going on. I opened up the door, and I canít remember hearing anything but distorted noise. I walk out into the living room, and my mom and her boyfriend are just sitting there looking straight ahead on the couch. I am severely confused and disoriented. I attempt to say something to them, but they canít seem to hear me. At this point, my thoughts of what was actually happening had changed. I thought for a quick second they knew I was on drugs, and they wanted me to tell them. I should of just kept walking through the house, but I then thought it might of been a setup.
In less than another half second, I realized what was then the truth. They were listening to a AA speaker tape. In a matter of a few seconds, the tape was shut off and I hugged them both. I told them I loved them, and I wanted more freedom in my life. They said they loved me and they understood.  I told my mom that night I had been depressed the last month or two, and I thought she didn't care. I said I just didn't want to tell them, because I thought they didn't want to know. I ended up saying that I was trying to find something that worked for me.
When I got back into my room, roughly 5 minutes later, I felt changed. Things were different. At this point, my thoughts may have still been racing, but itís typical for topomax and weed. I get alot accomlished when I am like this. I played more guitar and I felt a nice mellow high.  I love music when I am high. I was just as high until I went to sleep about 6 hours later.
*************************************************************************************************************************************
What I have felt while high on Topomax in combination with marijuana words will never do justice. Every time I have been on this, I seem to want to describe it, but I can't seem to make it sound right and it never makes sense. I eventually just stopped trying. It takes a long time to get sentences out, and when they come out it is usually jumbled and incoherent to others. At times it has zoned me out, so I don't know what I am even thinking about. At other times, it feels like I am even heading into being manic, or a psychosis. On the verge of 'losing it'. The great thing is, it varies so much with me. It's different every 15 minutes, and after every hit of marijuana I smoke.
I think I may still prefer benzodiazipines more. It has a simliar memory impairment like ambien does, and some of the sedating effects of muscle relaxers for me. I realized the night prior, I had gotten to a point where, I don't know what I had been saying or doing anymore. And this, for me, now is a GREAT thing in my life. I just was myself, and that may not sound like much, but that is real hard for me. It has always been hard for me to be myself on drugs, or not on drugs. Topomax really works good for that. So my whole weekend on Topomax would consist of me doing what I feel I want to do, without thinking it through and not really having a memory of it, or not having a memory of it would not seem to matter. No regrets. Just flowing, and not caring. I've heard it described as making one 'generally stupid'. The last few days I've done basically everything on impulse and with lower inhibitions.
Drugs have really helped me work through what I have been going through lately. I would never have said that to my mom when I was high before. About the suicide thing, and my life being over. How I thought, maybe that was the only way out. I think that was a major test for me. I've dealt with suicide in the past, but I don't believe itís the way out or ever will be again. My arms will always be filled with burn marks and scars from abuse. I really didn't want to kill myself. I just didn't want that to be the truth.
I have thought about alot of important things to me in the last month. For now, I am going to continue doing what I feel I need to do. I enjoy what I do with my time now, like I never have in the last year, or any time I can remember in my life.
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.


How do you schedule your time?
I was using gcalcli for couple years, however, it is become very difficult to use in mainland China, due to the GFW policy; on the other hand, I prefer to using my own server other than using the server from others, in this case google calendar.
So I start to find a better solution. Fortunately, I managed it by using remind, wyrd, conky and rem2html.
Screenshot
remind
Plain text is the most portable, munge-able, searchable, dependable, and software-agnostic file format there is. We’ve covered how to track your tasks and projects in a todo.txt file; today we’re going to extend our plain text personal information manager to include a full-on calendar, using an old school UNIX program called Remind.
Remind is really a powerful tool to schedule your time. I am not going to the detail for the usage of Remind, you might go to the shell, and type:
$man remind
For example, you can shedule a date with your GF/BF like this:
REM 2014/12/24 MSG Dating this evening with honey.
Or you can check your salary on the first day of each month:
REM 1 MSG Checking salary.
Or have a meething:
REM 2014/11/25 AT 9:00 MSG Meeting now
wyrd
Remind is very powerful but not handy enough, as you have to remeber lots of commands. If you use it in a very simple way, just like me, wyrd is a good choice.
Speaking of regularly using - wyrd will be used just as much as Remind. In addition to the easy to navigate display of events it also has a fully-configurable set of hotkeys that, for the little that I’ve used them, seem to work a lot like Vim. There happen to be two things that I like best about wyrd right from the start. The first is the fact that it’s written in OCaml. The second is that the developer took the time to make a well-orchestrated SWF file that walks through some sample uses. It just warms my little heart to see a developer caring about their users. ;-)
For me, the most fantastic usage of wyrd is its quick_event function, similar to gcalcli.
You could use it in a smart way, like this:
wyrd --add 'Have dinner with John Fri 6pm.'
wyrd --add 'Tomorrow 7:30am prepare breakfast.'
and also there are a lot more handy short cut for using Remind by wyrd.
conky
You can also add such line in your conkyrc script, then you will get a week scale schedule calendar on your desktop.
${execi 300 remind -c+1 -n ~/.reminders}
In addition, you can get a schedule summary in text style by adding this line to your conkyrc file:
${execi 300 remind -n ~/.reminders | sort}
rem2html
Sometimes, you might want to public your calendar on your blog, you can use rem2html for generating a static web calendar.
You can have a look at mine via: My calendar
Usage:
remind -ps12 /home/ming/.reminders | sed 's/^\(.*:.*:.*m\) .*$/\1 BUSY/g' | /home/ming/bin/rem2html --title "ming's calendar"> /var/www/cal/index.html
The sed command here is aiming to replace your schedule detail to BUSY.
-ps12 means you will publish the following 12 month calendar to the web page.
reminding
text message to your cell phone
You might able to find some particular method to send text message from shell to your cell phone.
Here are some hint:
- How to Send SMS Using Email to Major US Cellphone Carriers
- if you are a china telecom user, you can use their free service indirectly: i setup your china telecom email address; i setup the email system text to you in its setup; i send a reminder email to your china telecom email address by using mutt, then your cell phone will receive a text message.
- if you are a china mobile user, you can txet to your cell phone from use some shell-drived-fetion on your system; one of the well maintained one is FetionRobot
email and desktop reminder
You can also send email to you for remindering, I believe there are many ways to do this. In my case, I using mutt for email.
The basic usage of mutt:
echo email body | mutt -s subject send-to-email-address
Combined with remind
You might also want to get a desktop reminder by gxmessage, you can install it by (debian like system):
apt-get install gxmessage
And you can start remind server and enable both gxmessage reminder and mail reminder by using:
$remind -z -k'gxmessage -title "reminder" -center %s && echo %s | mutt -s %s YOUREMAILADRESSn &' ~/.reminders &
You can also add this to your .xinitrc file.