Recover
Implement a program that recovers JPEGs from a forensic image.
$ ./recover card.raw
Background
Unfortunately, you somehow deleted all the JPEGs on your phone’s memory card! Thankfully, in the computer world, “deleted” tends not to mean “deleted” so much as “forgotten.” Even though the phone insists that the card is now blank, you’re pretty sure that’s not quite true. Indeed, you’re hoping you can write a program that recovers the photos!
Even though JPEGs are more complicated than BMPs, JPEGs have “signatures,” patterns of bytes that can distinguish them from other file formats. Specifically, the first three bytes of JPEGs are
0xff 0xd8 0xff
from first byte to third byte, left to right. The fourth byte, meanwhile, is either 0xe0
, 0xe1
, 0xe2
, 0xe3
, 0xe4
, 0xe5
, 0xe6
, 0xe7
, 0xe8
, 0xe9
, 0xea
, 0xeb
, 0xec
, 0xed
, 0xee
, or 0xef
. Put another way, the fourth byte’s first four bits are 1110
.
Odds are, if you find this pattern of four bytes on media known to store photos (e.g., my memory card), they demarcate the start of a JPEG. To be fair, you might encounter these patterns on some disk purely by chance, so data recovery isn’t an exact science.
Fortunately, digital cameras tend to store photographs contiguously on memory cards, whereby each photo is stored immediately after the previously taken photo. Accordingly, the start of a JPEG usually demarks the end of another. However, digital cameras often initialize cards with a FAT file system whose “block size” is 512 bytes (B). The implication is that these cameras only write to those cards in units of 512 B. A photo that’s 1 MB (i.e., 1,048,576 B) thus takes up 1048576 ÷ 512 = 2048 “blocks” on a memory card. But so does a photo that’s, say, one byte smaller (i.e., 1,048,575 B)! The wasted space on disk is called “slack space.” Forensic investigators often look at slack space for remnants of suspicious data.
The implication of all these details is that you, the investigator, can probably write a program that iterates over a copy of my memory card, looking for JPEGs’ signatures. Each time you find a signature, you can open a new file for writing and start filling that file with bytes from my memory card, closing that file only once you encounter another signature. Moreover, rather than read my memory card’s bytes one at a time, you can read 512 of them at a time into a buffer for efficiency’s sake. Thanks to FAT, you can trust that JPEGs’ signatures will be “block-aligned.” That is, you need only look for those signatures in a block’s first four bytes.
Realize, of course, that JPEGs can span contiguous blocks. Otherwise, no JPEG could be larger than 512 B. But the last byte of a JPEG might not fall at the very end of a block. Recall the possibility of slack space. But not to worry. Because this memory card was brand-new when I started snapping photos, odds are it’d been “zeroed” (i.e., filled with 0s) by the manufacturer, in which case any slack space will be filled with 0s. It’s okay if those trailing 0s end up in the JPEGs you recover; they should still be viewable.
Now, there isn’t an actual memory card for each of you, so you’ll be using a “forensic image” of the card, storing its contents, byte after byte, in a file called card.raw
. You should ultimately find that the image contains 50 JPEGs.
Getting Started
Here’s how to download this problem’s “distribution code” (i.e., starter code) into your own CS50 IDE. Log into CS50 IDE and then, in a terminal window, execute each of the below.
- Execute
cd
to ensure you’re in~/
(i.e. your home directory). - Execute
wget https://cdn.cs50.net/2019/fall/psets/4/recover/recover.zip
to download a (compressed) ZIP file with this problem’s distribution. - Execute
unzip recover.zip
to uncompress that file. - You’ll now see a
recover
directory in your file list. - It contains the following files:
recover.c
andcard.raw
.
Specification
Implement a program called recover that recovers JPEGs from a forensic image.
- Implement your program in a file called
recover.c
in a directory calledrecover
. - Your program should accept exactly one command-line argument, the name of a forensic image from which to recover JPEGs.
- If your program is not executed with exactly one command-line argument, it should remind the user of correct usage, and
main
should return1
. - If the forensic image cannot be opened for reading, your program should inform the user as much, and
main
should return1
. - Your program, if it uses
malloc
, must not leak any memory.
Hints
Keep in mind that you can open card.raw
programmatically with fopen
, as below, provided argv[1]
exists.
FILE *file = fopen(argv[1], "r");
When executed, your program should recover every one of the JPEGs from card.raw
, storing each as a separate file in your current working directory. Your program should number the files it outputs by naming each ###.jpg
, where ###
is three-digit decimal number from 000
on up. (Look up sprintf
.) You need not try to recover the JPEGs’ original names. To check whether the JPEGs your program spit out are correct, simply double-click and take a look! If each photo appears intact, your operation was likely a success!
Odds are, though, the JPEGs that the first draft of your code spits out won’t be correct. (If you open them up and don’t see anything, they’re probably not correct!) Execute the command below to delete all JPEGs in your current working directory.
$ rm *.jpg
If you’d rather not be prompted to confirm each deletion, execute the command below instead.
$ rm -f *.jpg
Just be careful with that -f
switch, as it “forces” deletion without prompting you.
If you’d like to create a new type to store a byte of data, you can do so via the below, which defines a new type called BYTE
to be a uint8_t
(a type defined in stdint.h, representing an 8-bit unsigned integer).
typedef uint8_t BYTE;
Keep in mind, too, that you can read data from a file using fread
, which will read data from a file into a location in memory and return the number of items successfully read from the file.
Testing
Execute the below to evaluate the correctness of your code using check50. But be sure to compile and test it yourself as well!
check50 scienceacademy/problems/2020ap/recover
Execute the below to evaluate the style of your code using style50
.
style50 recover.c
How to Submit
Execute the below, logging in with your GitHub username and password when prompted.
submit50 scienceacademy/problems/2020ap/recover


We need to understand the circumstances in which you offer for your work because if you make a profit, or intend to make a profit, you’re more like a business.


John Humphrys rubbishes idea of second EU referendum
The broadcaster voted to remain in the 2016 referendum.
John Humphrys has attacked the idea of a second EU referendum, suggesting it would be undemocratic.
The veteran broadcaster, 76, who voted to remain in 2016, said the idea the UK should stay because Leave voters were uninformed during the campaign made him “cross”.
Humphrys, who departed BBC Radio 4’s Today programme earlier this year after 32 years, has previously been critical of what he perceives as the BBC’s left-wing bias.
Responding to whether the Government could ignore the result of the referendum, he said: “You can’t do that in a democracy, it seems to me.”
Speaking at the Voice Of The Listener And Viewer’s (VLV) autumn conference in London to promote his new book, A Day Like Today, he rubbished the idea of a second referendum.
He said: “What I get a bit cross about is this idea that – and I speak as somebody who voted remain remember – those people that voted to leave the European Union did not get the information they needed or failed to understand the implications.
“But by some miraculous process those who voted to remain did.
“I do not follow that because what it feels to me it is saying…
“Although I voted to remain, I have believed ever since the vote was announced in June three years ago that we had to leave.
“You cannot have a referendum, in my view, and tell the people before they vote that their vote will be acted upon and then decide subsequently that actually: ‘Yes, there was majority in favour of leaving but actually, no, we won’t leave because an awful lot of those poor sods who voted to leave didn’t really know what they were doing, so we will try to re-educate them.’
“You can’t do that in a democracy, it seems to me.”
Humphrys also claimed the BBC found it “very difficult” to take the views of Eurosceptics seriously.
He said: “I would like to think that I recognise – and some of my colleagues do as well – that the corporate view is, was, maybe still is, that our destiny was irredeemably and should be irredeemably allied with that of the European Union.
“The fact is that the BBC found it very difficult to take seriously the views of those Eurosceptics who believed that there were things profoundly wrong with the European Union and that there might very well be an argument to leave.
“We refused to take them seriously, to be blunt about it, for a very long time.
“I also think that when it came time for the referendum to be held, I believe during the referendum BBC News was absolutely fair-minded.”
He was in conversation with chairman of VLV Colin Browne.
The theme of the one-day conference was Public Service Broadcasting: The Threats, Challenges And Opportunities Ahead.


@() @scripts = { } @headAdditions = { } @main(title = "Additional Scripts", headAdditions = headAdditions, scripts = scripts) {


Watir 6.16 is now available on RubyGems. Extensive scrolling functionality has been added from Alex’s watir-scroll gem and Element Location has been overhauled again for some performance improvements.
To install:
or in your Gemfile:
Scrolling
The Watir team has frequently recommended Alex’s watir-scroll.gem to our users. After some discussion it was decided to maintain that functionality directly in Watir. If you are already using the latest version of watir-scroll, you can remove it from your gemfile and everything will just work, as the API has stayed exactly the same.
If you aren’t already using it, you should check to see if this functionality might be useful for you, it is invaluable when working with static css styles, “infinite scroll” pages, and elements inside of scroll bars.
Element Location
A lot of work has gone into completely redoing the locator class implementations the past couple months. In addition to the code being much cleaner, in many cases Watir can now locate nested elements with a single wire call instead of requiring multiple calls. If you use a lot of nested elements or Page Sections as part of your page object implementation, you might see a minor performance improvement.
An interesting comparison of wire calls for the following code:
Watir 6.3 (Original approach with lots of wire calls)
- 33 Wire Calls: Window, Windows, Frame, Locate, Name, Enabled, Locate, Name, Enabled, Locate All, Name, Enabled, Locate, Name, Type, Enabled, Enabled, Enabled, Window, Windows, Frame, Enabled, Displayed, Enabled, Displayed, Enabled, Displayed, Enabled, Displayed, Enabled, Enabled, Click
Watir 6.4 (Big performance update Summer of 2017)
- 6 Wire Calls: Locate, Locate, Locate All, Locate, Enabled, Click
Watir 6.10 (Reorganized things which made this use case worse)
- 13 Wire Calls: Locate, Locate, Name, Locate All, Name, Name, Name, Name, Name, Locate, Enabled, Enabled, Click
Watir 6.11 (Big performance update Spring of 2018)
- 6 Wire Calls: Locate, Locate, Locate All, Locate, Enabled, Click
Watir 6.13 (Optimized element location in collections)
- 5 Wire Calls: Locate, Locate, Locate, Enabled, Click
Watir 6.16 (Combined nested elements into one location wire call)
- 3 Wire Calls: Locate, Enabled, Click
Locator Extension Classes Updated
This only applies to add-on gems like watizzle.gem
watir_css.gem
and watigiri.gem
, but
the classes and methods that such gems implement will either need to be changed
or have the Watir version restricted.
See the Changelog for the complete history of updates.


You will be shown a total of three images, click the image with the product you would most likely buy.
Click an image to begin! You will do this a total of 25 times and at the end, your results will be shown.


Located on the corner of LaSalle and Groveland in downtown Minneapolis, the Van Dusen is most accurately described by Jenna as, "a castle."
View GalleryIf you plan to use a taxi or ridesharing service to get to the wedding, please use the drive along the north side of the mansion, off of Groveland avenue.
DirectionsIf you plan to drive yourself, complimentary parking will be available during the wedding in the lot behind the mansion, off the corner of Groveland and Pillsbury.
Unfortunately, we cannot offer overnight parking, so please plan accordingly.
Directions


Either install via `bower` or download it
``` sh
bower install --save mobile-angular-ui
```
Load files in the head section of your html
``` html
```
`mobile-angular-ui-base.css` includes only the mobile css part, it has no media queries except for `col-sm-*` grid. It is intended to target phones and tablets.
`mobile-angular-ui-desktop.css` contains `col-md-*`/`col-lg-*` grid along with some pieces of bootstrap.css for components that are only meaningful on large screens (breadcrumbs, pagination..) and a few lines of code to make sidebars always visible.
No other responsive stuffs are included from `bootstrap.css`.
Initialization
You can initialize your Angular application declaring `mobile-angular-ui` as a dependence.
``` javascript
angular.module('myApp', ["mobile-angular-ui"]);
```
Here is a more complete example including ngRoute:
``` javascript
angular.module('myApp', [
"ngRoute",
"mobile-angular-ui",
]).config(function($routeProvider) {
$routeProvider.when('/', {
// ...
});
// ...
});
```
If you wish you can avoid to load whole `mobile-angular-ui` modules at all and pick a subset of the loaded modules to fit your needs. This is how the `mobile-angular-ui` module is defined with its dependencies.
``` javascript
angular.module("mobile-angular-ui", [
'mobile-angular-ui.pointer-events', // prevents actions on disabled elements
'mobile-angular-ui.active-links', // add .active class to active links
'mobile-angular-ui.fastclick', // provides touch events with fastclick
'mobile-angular-ui.scrollable', // polyfills overflow:auto with overthrow
'mobile-angular-ui.directives.toggle',
'mobile-angular-ui.directives.overlay',
'mobile-angular-ui.directives.forms',
'mobile-angular-ui.directives.panels',
'mobile-angular-ui.directives.capture',
'mobile-angular-ui.directives.sidebars',
'mobile-angular-ui.directives.navbars',
'mobile-angular-ui.directives.carousel'
]);
```
1. It has different mobile-friendly style for default components
2. It adds new components like sidebars, absolute-positioned navbars, switches, overlays, scrollables ..
3. It does not rely on jQuery or bootstrap.js at all (most of the interactions can be reproduced with [toggle] angular directive)
4. It uses font-awesome in place of glyphicons
5. Responsive css rules for components *-sm, *-md, *-lg are moved out of the default bundle
6. Responsive grid is divided in two parts: `.col-xs-*` and `.col-sm-*` classes are included in base.css, `.col-md-*` and `.col-lg-*` classes are included in desktop.css.
7. Breadcrumbs and pagination are just not the best way to navigate a mobile app so their are only included in desktop.css.
8. `.container` is always fluid.
Angular Directives
Before going ahead with components you may want to familiarize with some basic mobile angular ui directives.
`scrollable`
First of all: one thing you'll always have to deal with approaching mobile web app development is scroll and `position:fixed` bugs.
Due to the lack of support in some devices fixed positioned elements may bounce or disappear during scroll. Also mobile interaction often leverages horizontal scroll eg. in carousels or sliders.
We use `overflow:auto` to create scrollable areas and solve any problems related to scroll.
Since `overflow:auto` is not always available in touch devices we use [Overthrow](http://filamentgroup.github.io/Overthrow/) to polyfill that.
Markup for any scrollable areas is as simple as:
``` html
...
```
This piece of code will trigger a directive that properly setup a new `Overthrow` instance for the `.scrollable` node.
`toggle` and `toggleable`
Toggle module is the basic to implement tabs, accordions, collapsibles and all the other components that need to be selectively or exclusively switched on or off.
Toggle module defines two directives: `toggle` and `toggleable`. These two directives replaces almost all of the bootstrap 3 jquery stuffs.
A `[toggle]` node will works as a trigger to turn `on` or `off` one or more targeted `[toggleable]` nodes by translating clicks into _toggle events_.
`toggle` directive parameters
toggle
Possible values are `on`, `off` or `toggle` (default to `toggle`)
target
The `id` of the corresponding toggleable. One of `target` or `targetClass` is required.
targetClass
The `class` of the corresponding toggleable. One of `target` or `targetClass` is required. Notice that this wont select nodes with dom methods.
bubble
If `bubble` is set `[toggle]` does not capture the click event and let it to be propagated to dom.
activeClass
The `class` the element will acquire when corresponding target is active and that will be removed when target is inactive. Does not affect `targetClass`.
inactiveClass
The `class` the element will acquire when corresponding target is inactive and that will be removed when target is active. Does not affect `targetClass`.
parentActiveClass
The `class` the parent of the element will acquire when corresponding target is inactive and that will be removed when target is active. Does not affect `targetClass`.
parentInactiveClass
The `class` the parent of the element will acquire when corresponding target is inactive and that will be removed when target is active. Does not affect `targetClass`.
`toggleable` directive parameters
exclusionGroup
Instruct the element to _"turn itself off"_ when another element of the same `exclusionGroup` is activated.
default
The initial state of the element `active` or `inactive` (default to `inactive`).
activeClass
The `class` the element will acquire when is active and that will be removed when is inactive.
inactiveClass
The `class` the element will acquire when is inactive and that will be removed when is active.
parentActiveClass
The `class` the parent of the element will acquire when is inactive and that will be removed when is active.
parentInactiveClass
The `class` the parent of the element will acquire when is inactive and that will be removed when is active.
To understand how it works consider the following example:
``` html
```
The purpose of this code is to create a black `lightbulb` icon getting colored when it turns on. The `lightbulb` should be turned on and off by three switches. The first alternates its state, the second turns it on and the latter turns it off.
`#lightbulb` is a `[toggleable]` that wraps a lightbulb icon in form of font icon. When activated it acquires the `text-primary` class, thus being highlighted with the primary color.
The first `[toggle]` turns on and off the `#lightbulb` depending of its state. It also reflects the `#lightbulb` activation since when lightbulb is active it takes the `active` class.
Second and third `[toggle]` are only sending `on` or `off` commands to `#lightbulb`.
Try this example in the demo
#### Programmatic API
Toggle module exposes the `toggle` and `toggleByClass` functions through `$rootScope` to interact with `[toggleable]` in a programmatic way. This will let you do something like that:
``` html
```
`toggle` method takes 2 parameters: the `[toggleable]` id and the command to send (one of `toggle`, `on` or `off`).
`toggleByClass` method takes also 2 parameters: the `[toggleable]` class and the command to send.
`contentFor` and `yieldTo`
The capture module exposes directives to let you extract markup which can be used in other parts of a template.
It provides a way to move or clone a block of markup to other parts of the document.
This method is particularly useful to setup parts of the layout within an angular view. Since blocks of html are transplanted within their original `$scope` is easy to create layout interactions depending on the context. Some tipical task you can accomplish with these directives are: _setup the navbar title depending on the view_ or _place a submit button for a form inside a navbar_.
 In the following example we will add a navbar button to submit a form inside a nested view.
``` html
```
``` html
```
``` javascript
app.controller('newCustomerController', function($scope, Store){
$scope.customer = {};
$scope.createCustomer = function(){
Store.create($scope.customer);
// ...
}
});
```
If you wish you can also duplicate markup instead of move it. Just add `duplicate` parameter to `contentFor` directive to specify this behaviour.
``` html
```
`yieldTo` directive parameters
yieldTo
An unique name to reference the placeholder.
[content]
The default content. Default content is restored each time on `$routeChangeStart`.
`contentFor` directive parameters
contentFor
An unique name to reference the placeholder.
duplicate
Indicates whether the content should be duplicated instead of moved.
[content]
The content to take place in the placeholder.
Components
Navbars
Bootstrap default navbars are awesome for responsive websites, but are not the best to interact with in a small screen. Plus fixed positioning is not an option to create navbars standing in top or bottom of the screen.
Mobile Angular Ui offers an alternative to bootstrap navbars that is better suitable for mobile.
It uses scrollable areas to avoid scroll issues. In the following figure you can see the difference between fixed navbars and navbars with absolute positioning.
Here is the basic markup to achieve this.
``` html
```
As you can notice the base class is `.navbar-app` while the positioning is obtained adding either `.navbar-absolute-top` or `.navbar-absolute-bottom` class.
#### Mobile Navbar Layout
Top navbar in mobile design most of the times follows a clear pattern: a centered title surrounded by one or two action buttons, the _back_ or the _menu_ buttons are two common examples.
Twitter Bootstrap ships with a different arrangement of components for navbars since they are supposed to host an horizontal navigation menu.
`.navbar-app` is specifically designed to support this different type of interaction and arrangement.
Consider the following example:
``` html
Navbar Brand
Left Action
Right Action
```
As you can see the markup is pretty straightforward: there is a `.navbar-brand` with its new specification, `.navbar-brand-center`, that will render the title centered and below the two button groups. Note that `.navbar-brand-center` will position the title with absolute positioning ensuring that it will never cover the buttons, which would cause interaction problems.
```
As you can see sidebars can be placed either in left side or right side adding respectively `.sidebar-left` and `.sidebar-right` classes.
You should also notice that a sidebar is a toggleable. A sidebar is shown when parent has the `.sidebar-[left|right]-in` class moving the above `.app` element left or right. `.sidebar` and `.app` are supposed to be siblings.
The purpose of the `toggle` directive for `.list-group` is to make the sidebar disappear when a link is clicked or tapped, the `bubble` parameter is infact used to let click events be propagated to inner links.
``` html
```
Sidebars can be toggled using the `toggle` directive either as an attribute or programmatically via `toggle('sidebarId')`
``` html
Menu
```
By default sidebar are closed by clicking/tapping outside them. To prevent this behavior just add `close-on-outer-clicks='false'` to `.sidebar` element.
Tabs
Tabs component is realized via `toggle` and `toggleable` directives using `exclusion-group` parameter to inactivate other tabs but the active one.
``` html
Accordion component is achieved via `toggle` and `toggleable` directives. `exclusion-group` parameter is used to inactivate other panels but the active one.
``` html
Collapsible Group Item #1
Collapsible Group Item #2
Collapsible Group Item #3
```
Overlays
Overlay are similar to modals but looks more native in mobile devices.
This is the basic markup for an `overlay`. An `overlay` directive implicitly sets up a `toggleable` using its argument as `id`.
``` html
My Overlay
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolorem, ex eaque possimus ipsa ab quasi quos corporis consequatur laudantium? Ab assumenda delectus quo velit voluptates doloribus. Earum odit facilis qui.
OkCancel
```
You can show an overlay by default adding `default='active'` to the `[overlay]` element.
To interact with overlays from controllers you can use `$rootScope.toggle()` function: i.e `$rootScope.toggle('myOverlay', 'on');` or `$rootScope.toggle('myOverlay', 'off');`.
Dropdowns
Dropdowns are also achieved using `toggle` and `toggleable`.
``` html
Carousels have the same markup of bootstrap but their behaviour is achieved with 2 functions available to `$rootScope`: `carouselPrev(id)` and `carouselNext(id)`.
This is a basic example that uses `ngSwipeLeft` and `ngSwipeRight` from `ngTouch`.
``` html
1
2
3
```
To create more fancy effects and touch friendly experience you can use `$swipe` service direclty. `$swipe` service is provided by `angular-touch`.
This is a more complete example to explain how to build a swipe friendly carousel.
``` html
1
Swipe me!
2
Swipe me!
3
Swipe me!
```
Lets define the `carouselExampleItem` directive.
``` javascript
app.directive( "carouselExampleItem", function($rootScope, $swipe){
return function(scope, element, attrs){
var startX = null;
var startY = null;
var endAction = "cancel";
var carouselId = element.parent().parent().attr("id");
var translateAndRotate = function(x, y, z, deg){
element[0].style["-webkit-transform"] =
"translate3d("+x+"px,"+ y +"px," + z + "px) rotate("+ deg +"deg)";
element[0].style["-moz-transform"] =
"translate3d("+x+"px," + y +"px," + z + "px) rotate("+ deg +"deg)";
element[0].style["-ms-transform"] =
"translate3d("+x+"px," + y + "px," + z + "px) rotate("+ deg +"deg)";
element[0].style["-o-transform"] =
"translate3d("+x+"px," + y + "px," + z + "px) rotate("+ deg +"deg)";
element[0].style["transform"] =
"translate3d("+x+"px," + y + "px," + z + "px) rotate("+ deg +"deg)";
}
$swipe.bind(element, {
start: function(coords) {
startX = coords.x;
startY = coords.y;
},
cancel: function(e) {
translateAndRotate(0, 0, 0, 0);
e.stopPropagation();
},
end: function(coords, e) {
if (endAction == "prev") {
$rootScope.carouselPrev(carouselId);
} else if (endAction == "next") {
$rootScope.carouselNext(carouselId);
}
translateAndRotate(0, 0, 0, 0);
e.stopPropagation();
},
move: function(coords) {
if( startX != null) {
var deltaX = coords.x - startX;
var deltaXRatio = deltaX / element[0].clientWidth;
if (deltaXRatio > 0.3) {
endAction = "next";
} else if (deltaXRatio < -0.3){
endAction = "prev";
}
translateAndRotate(deltaXRatio * 200, 0, 0, deltaXRatio * 15);
}
}
});
}
});
```
Now swiping items we will see them moving and rotating. When releasing an item if the swipe lenght was at least 3/10 of the item width then carouselPrev/carouselNext are invoked according to swipe direction.
Toggle Switch
The `switch` directive (not to be confused with `ng-switch`) lets you create a toggle switch control bound to a boolean `ngModel` value.
It requires `ngModel`. You can also use `ngChange` in conjunction with `[switch]` to trigger functions in response to model changes.
``` html
```
Utils
Justified Blocks
Mobile screens are small and it's common to have 2 or three buttons justified. To achieve this behaviour you can use the `.justified` class in any parent block of a group of items. This will apply a `table` layout to parent and a `table-cell` layout to its children.
Example:
``` html
Mobile angular Ui provides some markup savers to create form inputs.
#### `bs-form-control`
NOTE: former `bs-input`.
``` html
```
That translates to
``` html
Customer
```
If you don't assing a grid class to label or element they will get `.col-xs-12`. This way you're always able to mix horizontal and vertical controls without the need to use `form-horizontal` or change markup and style.
Note that this directive only wraps target element with some html. This lets you apply it to any type of control, even custom one.
So for instance you can apply it to `textarea` or `switch` as well.
```html
```
Panel Helpers
#### `bs-panel`
A super simple directive minimizing the markup to use bootstrap panels.
``` html


HEAD
Focusser: Yash Diniz
"Remember, Yash, always to watch the time..."
-My Dad(Jose Diniz)
What is your main focus for today?
=======
Focusser: Yash Diniz
"Remember, Yash, always to watch the time..."
-My Dad(Jose Diniz)
What is your main focus for today?
>>>>>>> master


+91 9886 121 604
Sign In
Sign Up
Toggle navigation
Cart
Home
Login to store
Seller Identity Form
First Name
*
Mobile phone
*
Address
*
City
*
State
*
Select State
Andaman and Nicobar Islands
Andhra Pradesh
Arunachal Pradesh
Assam
Bihar
Chandigarh
Chhattisgarh
Dadra and Nagar Haveli
Daman and Diu
Delhi
Goa
Gujarat
Haryana
Himachal Pradesh
Jammu and Kashmir
Jharkhand
Karnataka
Kerala
Lakshadweep
Madhya Pradesh
Maharashtra
Manipur
Meghalaya
Mizoram
Nagaland
Orissa
Pondicherry
Punjab
Rajasthan
Sikkim
Tamil Nadu
Tripura
Uttaranchal
Uttar Pradesh
West Bengal
Last Name
*
Email
*
Address (Line 2)
Zip / Postal Code
*
Telephone
Type of company
*
Choose
Product
Service
Skill Development
Since running
*
Choose
1 year
2 years
3 years
4 years
5 years
6 years
7 years
8 years
9 years
> 10 years
TAN No
Company Name
PAN No
Website


Toggle navigation
XCP
FEEDS
Sports
About
Wallet Balance
0.00000000
0.00
Tools
View Address
Change Address
View Passphrase
Enable Password
Lock Wallet
Unlock Wallet
Reset Wallet
Blue
Red
Gold
Purple
White
Dark Blue
Dark Red
Turquoise
Yellow
Silver
Sapphire Blue
Pink
Aquamarine
Lime green
Gray
Sky Blue
Orange
Teal
Green
Black
Disclaimer
: This site is under active development!


Profile
Worked in software development for 15+ years. Started in Silicon Valley, then moved to HK. Majority time was a C++ developer but recently moved to C# .NET. Consider myself a Fullstack developer with some frontend knowledge. Very good with design patterns, algorithms, web apps, Fintech, and Blockchain.
Certified SCRUM Master using Agile methodology, CI/CD, and Test Driven Development.
|
Education
|
Technical Skills
|
Modern C/C++ 11/17/19
|
C# .NET Core 5
|
|
OOP & Design Patterns
|
Data Structures & Algorithms
|
|
Agile, CI/CD, TDD, SCRUM
|
WPF, MVC, WCF, MVVM
|
|
MySQL, Store Procedures
|
MSSQL, T-SQL, Views
|
|
TCP/IP Sockets, Boost ASIO
|
Sys Calls, RPC, IPC & Multi-threads
|
|
HTML5, CSS3, JS, Web 2.0
|
Blockchain, DLT, PoW, PoS
|
|
Windows Services
|
Linux, Bash
|
|
Professional Working History
Senior C++/C# .NET System Analyst
Causeway Bay, Hong Kong
Managed high-frequency FIX trading platform written in C++ 17, Boost ASIO
Developed new derivatives trading platform in C# .NET Core, WPF, MVVM, Prism
Wrote various micro-services in both C++/C#, C++/CLI, Windows Services
|
November 2017 - December 2018
Senior .NET Consultant
Quarry Bay, Hong Kong
Provided .NET consultancy to various fortune 500 clients, including Accenture
Used C# Web API 2.0, MVC, Message Queue, Asynchronous calls, MSSQL, MSUnit
Worked in Agile/SCRUM methods including CI/CD, TDD, BDD, SpecFlow, refactoring
Helped in DevOps, releases, Jenkins, JIRA, Confluence, Selenium, Microsoft 365 dynamics
|
November 2015 - June 2017
Lead Analyst Programmer
Kowloon, Hong Kong
Lead cross-regional Agile team to develop GPS Fleet Management SAAS solution
Lead front-end development team using Javascript, JQuery, AngularJS, JSON, Bootstrap
Revamped SOA backend using C# .NET, MySQL, TCP/IP sockets, threads, SOAP & WCF APIs
Introduced to team: Agile, TDD, NUnit, MantisBT, SVN, GIT, Skype, Google Maps
|
January 2015 - November 2015
Contrator / Developer
Kwun Tong, Hong Kong
Independant contractor implemented banking Signature Web Viewer Verification system
Fullstack using VB/C# .NET, WCF, HTML5, CSS3, AngularJS, JQuery, AJAX, REST, MSSQL
Part of full SDLC in various phases, staging, SIT, UAT, then LIVE
|
August 2011 - December 2014
Software Engineer
Central, Hong Kong
Participated in development of real-time trading platform in WIN32 C++
Worked with various teams OMS, FIX, Market Data, Market Access, and Exchange PMs
Debugged trading algorithms, strategies on cash, equities and derivative market
Cross functional teams using Agile, TDD, and daily SCRUM to meet sprint targets
|
October 2010 - August 2011
Sr. Software Engineer
Sheung Wan, Hong Kong
Developed cross platform media player in standard C++/STL, Boost library, threads
Integrated Facebook API, cURL, AWS Cloud, IPC and memory sharing libraries
Used Agile, TDD, Google unit testing, FFMpeg, Scaleform GFX, DirectX, OpenGL
|
November 2008 - October 2010
Sr. Software Engineer
Kowloon, Hong Kong
Web Traffic & GPS related fleet management software control
Embedded media player development using WinCE C++ MFC, WIN32, COM, HTTP, FTP
Developed backend in C Linux, sockets, POSIX threads, MySQL tunning
|
April 2005 - October 2008
Sr. Software Engineer
San Francisco, USA
Part of team to develop Antivirus/Antispyware/Firewall SDK
Implemented API library in OOP C++, C#, Java, PHP, HTTP/FTP/SMTP, XML, STL
Integrated computer security, encryption, hashing MD5, SHA256, digital signatures
|
SEO Specialist
San Francisco, USA
Search Engine Optimization to place within Top-10 on Google and Yahoo
Developed website using ASP/VBS, HTML/CSS/JavaScript and SQL
Managed Webtrends, Linux, Bash scripts, SQL Servers and Apache
|
Mendocino. San Francisco Sales, Inc.
August 2002 - August 2003
Web Developer
San Francisco, USA
Designed intranet using HTML, JS, CGI, XML/XSLT, and Photoshop
Engineered inventory management & ERP system
|
Club-i - Cyber cafe
May 1998 - September 1998
Web Developer (Internship)
San Francisco, USA
Designed intranet using HTML, JS, CGI, and Photoshop
Assisted customers on using PC, email, web browsers, printing
|
|
|


Alert
×
TensorFlowJS model was not loaded!
Mouth Openness
Image
(current)
Camera
Loading Model
Model:
Full
Full
Lite
Choose image
Predict
Warning
: First inference can be slow. Try several times.
Image
Predictions


Welcome to my humble space on the interwebs.
It exists mainly to test ideas and stay current with
what's happening in the world of software/systems
development. I don't get the chance to code much
anymore in my day job and this keeps me sane and hopefully
relevant - assuming I pick relevant things to tinker with.
Everything here was created using ReactJS, CSS and HTML.
Gatsby was used to make S3 deployments feasible and the site
cheap (pennies/mo) to host. A future project is to implement
this site using
AWS Amplify.
and compare the features, complexity and cost. One
thing I like about Gatsby is the dirt easy routing.
"more cheese please"
“The fact that we live at the bottom of a deep gravity well,
on the surface of a gas covered planet going around a nuclear
fireball 90 million miles away and think this to be normal is
obviously some indication of how skewed our perspective tends
to be.”
― Douglas Adams


In Week 4, we were introduced to GitHub and version control.
Version Control:
Version control is a tool which allows you to save the code you are working on frequently, but keeps a record of the poast versions.
This is very helpful for development, as you can go back and forth between versions of your code. But this is also helpful for group projects.
Within a collaborative code, version control allows you to experiment with new code without requiring that you save it to the master document, so you can try different things out before commiting your new additions to the larger project.
GitHub:
GitHub is a server where you can host websites and other coding projects.
GitHub has many detailed functions which help make coding easy for developers, such as version control. Within GitHub, one creates a repository on which all of your code is stored.
You can not only create repositories, but you can share repositories and clone the repositories you have access to.
To create code in your repository you can use GitHub or programs such as Atom. Then to save code, you must commit your document to a branch within your repository.
You can commit your code to the main, 'master' branch, or if you want you can create separate branches which you can later link or add to your master branch.
Once you are happy with your repository, you can make it public and publish it on GitHub so that other users can view it. You can also use GitHub to host your website.
Images from Unsplash Images


Summary
15 years of experience as a Sr. Test Engineer, Sr. Systems Engineer, Systems Engineer, and Satellite
Systems
Engineer. Skilled at automated testing, managing requirements, generating documentation, usability
analysis,
and testing. Experienced with scrum, agile, and waterfall processes.
Technical Skills
Ruby RSpec, Python, VMWare, Jenkins, Redmine, Agile, Scrum, SELENIUM, JMeter, Java, ECLIPSE,
CLOUDBASE,
HADOOP, HIVE, SIGINT systems, Version One, ClearQuest, Crystal Reports, Human Factors Usability and
Design
Analysis, Program Management, Windows, Unix, Linux, Perl, C, C++, XML, LAN/WAN, DOORS, and STK. She
is
also an expert in Microsoft Word (all versions), Excel (pivot tables and charts), PowerPoint, and
Project.
Education/Training
-
Bootcamp Certificate: John’s Hopkin’s University Full-Stack Developer Bootcamp - Oct 2019-Mar
2020:
A 24-week intensive program focused on gaining technical programming skills in HTML5, CSS3,
Javascript,
JQuery, Bootstrap, Firebase, Node Js, MySQL, MongoDB, Express, Handelbars.js & ReactJS
-
MS Engineering Management, George Washington University, May 2006
-
BS Electrical Engineering, Morgan State University, May 2003
-
Full Academic Honors Scholarship, PACE Program, Golden Key International Honours Society
-
Agile Automated Testing, June 2017; API First Development, August 2015; Certified Scrum Master,
January
2012; Attended Selenium Training, February 2012; Attended NDIA 13th Annual Systems Engineering
Conference, October 2010; International Software Testing Qualifications Board, Certified Tester
Foundation
Level (CTFL), 2009; Human Factors International Usability Analyst Certification, 2009
Work History
InterConnect Defense - Sr Test Engineer: August 2018-September 2019
-
Performed integration, component and system-level testing across multiple product lines,
to include test plan development, authoring of test procedures, test environment configuration,
test
execution, and generation of test reports.
-
Managed traceability of test procedures and software requirements using Testlink
-
Developed test scripts in Python for automated testing of software functionality.
-
Discovered and tracked software bugs in Jira and documented testing results in test reports
-
Configured telecommunications equipment including switches, Private Branch Exchanges (PBXs), and
Video Teleconferencing Equipment (VTCs)
-
Analyzed TCP/UDP packets in Wireshark
Northrop Grumman – Automated Test Engineer / Sr. Systems Engineer: November 2014 – August 2018
-
Designed, created, executed, and refactored automated Ruby RSpec, Bash and Expect test scripts
to
perform
integration and development testing against the command and control system utilizing Jenkins for
continuous integration.
-
Worked with internal and external development teams to fix issues identified with thorough
testing of the command and control system with thousands of generated automated tests.
-
Generated, reviewed, and updated end of sprint team documentation, wikis, and test reports
-
Directed and lead sprint planning activities, daily standups, retrospectives,gather status on
tasks and any internal and external issues as scrum master
-
NG Community Service - STEM Mentor for Pikesville High School and Baltimore Leadership School
for Young Women
Sotera – Systems Engineer/Automated Test Engineer: June 2009 – September 2014
-
Developed automated tests utilizing Thucydides framework, Selenium, and JUnit to improve test
efficiency and effectiveness
-
Developed and executed System’s Web User Interface, GM Cloudbase, Hive, and Hadoop Test Plans
and
Procedures based on Requirements and system capabilities
-
Responsible for validation and verification of the integration of requirements, design, and
technology
for
development of complex systems utilizing a JIRA workflow for our systems engineering,
development, and
testing processes
-
Analyzed, generated, and distributed Requirements, Test Procedures, Test Results, Tickets, Daily
Standup
Notes, Scrum Meeting Notes, and Weekly Status Reports for complex systems and IEEE and 508
compliant
systems
-
Managed the tasks of the development and test teams, set up a process for completing work and
addressing
issues in a JIRA ticket tracking system, and managing and running Engineering Review Board
(ERB)/Configuration Control Board (CCB) meetings
Lockheed Martin IS&S - Sr. Systems Engineer / Satellite Engineer: June 2003 – June 2009
-
Tested Java and Perl software applications and reported bugs and discrepancies to the developers
-
Generated and managed all full-lifecycle systems engineering documentation, such as CONOPS,
systems
requirements, user manuals, training plans, notes, and schedules for multiple operational
software
application
-
Commanded a multi-million dollar spacecraft (AQUA) and ensured that the spacecraft was
completely
operational and all of the data collected by the spacecraft was cleanly dumped to Polar Ground
Stations
in
Alaska and Norway
-
Provided technical direction for on-orbit mission support and prepared for critical vehicle
malfunctions with
recommended alternate operating techniques to continue maximum mission support
-
Trained new engineers on AQUA and AURA Online Engineer Activities, Flight Dynamics System (FDS),
MMS,
and Analysis systems
-
Lockheed Martin Engineering Leadership Development Program Graduate
Proctor and Gamble - Summer Intern / 1st Level Manager - Diapers Launch: June 2002 – Aug. 2002
-
Project Lead for Scrap Reduction Project on Diaper Lines.
-
Managed all electrical issues dealing with the Generation 2 Fully Automatic Case Packer.
-
Acted as a single point of contact between Germany, Cincinnati, and Cape Girardeau Plant.
-
Completed the electrical pre-startup inspection for the Case Packer.
-
Executed the readiness template and collected all deliverables on time.
SIECA Summer Intern - Microelectronic Signals and Systems Branch, Code 564, NASA Goddard Space
Flight
Center: May 2001 – Aug. 2001
-
Designed a Galois Field Multiplier and Deinterleaver for the Reed-Solomon Encoder/Decoder chip,
using
VHDL code on Unix computer.
-
Presented a 15-minute presentation to a group including Code 560 Electrical Systems Center
Branch Head
-
John Day, composed an abstract and written report.


| Overall | files | lines | %line | indicator | %branch | indicator |
|---|---|---|---|---|---|---|
| Overall coverage figures | 16 | 621 | 29% | 22% |
By Name
By Coverage (Most covered first)
By Coverage (Least covered first)
| packagename | files | lines | %line | indicator | %branch | indicator |
|---|---|---|---|---|---|---|
| org.apache.tools.ant | 1 | 7 | 0% | 0% | ||
| com.martiansoftware.nailgun | 15 | 614 | 29% | 45% |
|
this report was generated by version 1.0.5 of jcoverage. |
copyright © 2003, jcoverage ltd. all rights reserved. |


Use the buttons below to control the behavior of the Animated TV overlay. Make sure you have your local WebSocket relay running before loading this page!


LANGUAGE and ETYMOLOGY
English Online
Eva Easton is good people. She was the first to link this site. And the first to advise me you can't make any simoleans doing this
Linguist-Educator Exchange
Gina Cooke, a linguist in education, "strives to provide accurate linguistic information and reliable logical strategies for teachers and learners of the English language in search of evidence about English and its instruction." She strives not in vain.
Podictionary
"The podcast for word lovers," hosted by Charles Hogdson, offering a word root every day.
Wordwizard
A venerable (in Internet terms) full-service site devoted to origins of English words and phrases and English usage. The forum is helpful and newbie-friendly.
English Language and Usage
Seems to be holding its own in the elusive quest to sustain an etymology message board that does not decay into smug smacked-assery or kakistocratic crack-pottery.
Languagehat
A fine blog by a linguist whose interest reach beyond the mere words. The "links" bar is one of the best for language resources.
Omniglot
Language-related musings by Welsh blogger and linguist Simon Ager.
Things to be Happy About
Website of linguist Barbara Ann Kipfer, who edited the most recent edition of the "Dictionary of American Slang."
Digital Medievalist
Celtic Studies Resources from a self-described "opinionated digital medievalist."
Lexilogos
mots & merveilles des langues d'ici & d'ailleurs une sélection des meilleurs dictionnaires en ligne
Language Dictionaries and Translators
Oxford English Dictionary
The best there is, but you gotta pay to play
Johnson's Dictionary
An abridged, "improved" 1828 American edition
Alphabet Evolution
A Semitic script nicked by the Greeks, stripped down to fit Etruscan, and somehow we try to write with this
SPECIFIC
Chinese Characters
Contains the complete text of "Chinese Characters: A Genealogy and Dictionary," which uses the new (zipu) system of character trees.
Chinese Etymology
"When I was a young man of 22 in Taiwan trying to become fluent and literate in Chinese, I was faced with the prospect of learning to write about 5000 characters and 60,000 character combinations. The characters were complex with many strokes and almost no apparent logic. I found on the rare occasions when I could get a step by step evolution of the character from its original form, with an explanation of its original meaning and an interpretation of its original form, suddenly it would become apparent how all the strokes had come to be. The problem is that there is no book in English that adequately explains this etymology and even if you read Chinese there is no single book in Chinese that explains it all."
Italian Etymology
A searchable online version of the 1907 "Vocabolario Etimologico della Lingua Italiana" by Ottorino Pianigiani.
English-Persian Etymological Dictionary of Astronomy and Astrophysics
"Aims at contributing to the Persian language by creating a comprehensive dictionary of astronomy and astrophysics."
Svenska Akademiens Ordbok
Excellent online Swedish etymology source.
The German etymological dictionary of the Brothers Grimm
Das Deutsche Wörterbuch von Jacob und Wilhelm Grimm auf CD-ROM und im Internet.
Alphabetical list of German surnames and explanations of their origin and meaning
Behind the Name
Etymology of first names.
Language Contact and Lexical Enrichment in Israeli Hebrew
Web site for a book on etymologies of multisourced words in various languages, e.g. English, Israeli, Hebrew, Mandarin, Japanese, Turkish, Yiddish and Arabic.
Word Spy
Recently coined words and phrases.
French Etymology
Old English Library
Sumerian Language Page
So very strange.
FOR WRITERS
Word Stuff
Writing Links and Links for Writers.
The King's English
A classic work on usage by H.W. Fowler.
Just About Write
An excellent site full of good advice on writing and publishing.
DIVERSIONS
Ladle Rat Rotten Hut
An Anguish Languish lesson as originated by Professor Howard L. Chace, performed live by actor Drew Letchworth.
Speculative Grammarian
The premier scholarly journal featuring research in the neglected field of satirical linguistics.
Unlikely phrases from real phrasebooks
For those moments when you absolutely, positively need to say "I play the clarinet" in Chinese ("Wô lá danhuángguân").
Lost in Translation
Take a sentence and Babel-ize it! Does to language what Silly Putty does to the Sunday funnies.
Memoirs of Extraordinary Popular Delusions and the Madness of Crowds, Charles Mackay, LL. D.
Urban legends of a bygone era. A classic.
Snopes.com
You didn't really forward that e-mail, did you?
Anguish Languish
When you need to say the right thing with the wrong words.
Engrish.com
No doubt our attempts at Japanese are even more amusing.
Devil's Dictionary
The acid wit of Ambrose Bierce
Kissthisguy.com
The library of misheard lyrics
Gadsby
At last! Free and online, the greatest novel ever written without using the letter "E."
Movie Mistakes
Continuity is the hobgoblin of big screens
Flatland
A classic now available online


Neural Style Transfer algorythm
2020
Soap bubble evolution of the thin film effect
2019
Simulation of mercury's physic
2019
Visualization of the Fourier Series
2018
Turbulent flow simulation with a smoke generator effected by the wind
Turbulent flow observation in a mix of silver and cloroform
Turbulent noise simulation
2018
Shoots made with an experimental x3 magnification macro lens
2018
Crystallization of tin
Crystallization of potassium nitrate
2017
Generative exploration of refraction patterns
2016


-
Broadening Participation
STCBP is an international Special Technical Community which aims to reference, support, highlight, and connect the many existing international initiatives for broadening participation in computing.
-
Cloud Computing
Cloud Computing Special Technical Community’s main focus is to enable Computer Society member’s participation into Cloud activities and initiatives.
-
Education
STC for Education is a community of those interested in research and pedagogy in the field of computing and helps them become experts in the area, through a wide variety of models ranging from action research to purely theoretical works.
-
e-Government
e-Gov STC is an open community related to the use of the Information and Communication Technology in the context of public policy, operations in public organizations, citizen engagement or government services.
.
-
Haptics
The Haptics Technical Community’s goals are to integrate the diverse interests in the field of Haptics research and to improve communication among the other fields.
-
Human Computation
The mission of the STCHC is to provide a community home for computer scientists to engage in activities related to Human Computation and to support those activities.
-
Multicore
The Special Technical Community on Multicore provides places for discussion to communities regarding research, development and education in the field of multicore and manycore technologies.
-
Operating Systems
This Community promotes research and advancement of education in the areas related to the Operating Systems and Software Systems by organizing conferences and publishing newsletters, among others.
.
-
Smartgrid
Computer and Smart Grid Technical Community aims to enable achievement of Smart Grid visions by stimulating investments in computing technologies.
-
Social Networking
STCSN helps researchers communicate with like-minded people through social networking tools, such as Facebook, Twitter, Google and Linkedin.
-
Sustainable Computing
The STC on Sustainable Computing is relevant to any domain that is using and aims to promote the design of sustainable computing and facilitate computing for sustainability.
-
Systems Engineering
The STC-SysE goal is to advance the principles of Systems Engineering as applied to development and sustainment of computer-based and software-intensive systems.


Farage says Brexit Party candidates under massive pressure to quit election
LONDON (Reuters) - Brexit Party leader Nigel Farage said on Thursday that Prime Minister Boris Johnson’s Conservative Party was using an array of “disgraceful” tactics to try to prevent his candidates from standing in the Dec. 12 election.
“What is going on right now is nothing sort of disgraceful. There is a full scale attempt going on out there as I speak to stop men and women freely putting themselves up before the UK electorate. You would have thought this was Venezuela,” Farage said.
Brexit Party candidates “are coming under relentless phone calls, emails and abuse and being told them must stand down. That is happening in 21st Century Britain,” Farage said.


Home
About
Photos
Live
Contact
Thank you!
Thanks for contacting us.We will get back to you as well as we can.


I am a first year master's student studying Computer Science at Georgia Institue of Technolgy.
Our work aims to generate clarifying questions that require less effort for the end user to answer. We use machine intelligence to calculate informativeness of each question, to find questions that could more evenly separate the candidate dataset. We use human intelligence to balance the informativeness with answerability, so that the question was easy to recall and say. We introduce a novel hybrid workflow that combine machine knowledge and human knowledge.
Traditional AI systems need structured input, which keeps users from fully utilizing their functionality, so we aim to build a conversational AI, which can infer what the end-users want through natural conversations. I led a team of 8 undergraduates where we built a conversational AI that could assist a user to generate a travel itinerary. We indentified possible intention logical transition based on a finite state machine. We trained an intent classifier to infer user intent, making use of an End-to-End Recurrent and Bi-Direction Long Short-Term Memory (LSTM) Neural Network.
Our work in this project aims to reduce annotation effort for large text dataset. We aim to elicit and leverage high-level human intelligence by making them write labeling rules instead of merely having them label each instance. We introduce a workflow where machine suggests possible keywords to humans by clustering the data into keyword-based patterns using Latent Dirichlet allocation (LDA). And then humans identified a label of each pattern to form a rule, which can be encoded into a labeling function implemented by computing cosine similarity using Glove word embedding.


Key: = Must support, = QICore-defined extension, = Is-Modifier
| Field | Card. | Type and Description |
|---|---|---|
| id |
0..1
|
id
|
| implicitRules |
0..1
|
Uri
|
| language |
0..1
|
code
|
| meta |
0..1
|
Meta
|
Key: = Must support, = QICore-defined extension, = Is-Modifier


Steady-State Sandbox
Play with numbers to see how results change.
Dose Unknown
C Unknown
Vd Unknown
Multi-Dose
Dose (mg):
Concentration (mg/L):
Volume of Distribution (liters):
Dosing Interval (hours):
Infusion time (hours):
Twait (hours):
Kel (per hours):
Elimination rate constant (per hours):
\[ C=C_0\cdot e^{-k_{el}\cdot t} \]
\[-k_{el} = {\frac{{\ln C - \ln C_0}}{\Delta t}} \]
Initial Concentration (mg/L):
Linear
Logarithmic
Range (hours):


Click on the hamburger icon →
Sobre / About
Habilidades / Skills
Trabalhos / Jobs
Contato / Contact
Check out my new pens
Animated menu on sidebar left
Just HTML Game - No css and no JS
Countdown with css grid layout
See more content like
this on my website:


This site only works with JavaScript, because it pulls data from external sources. Go to
the official Parliament petitions site
for non-Javascript access.
ukpetitions.info


grid-12
grid-11
grid-1
grid-10
grid-2
grid-9
grid-3
grid-8
grid-4
grid-7
grid-5
grid-6
grid-6
grid-12
grid-11
grid-1
grid-10
grid-2
grid-9
grid-3
grid-8
grid-4
grid-7
grid-5
grid-6
grid-6
grid-12
grid-11
grid-1
grid-11
grid-7
grid-3
grid-6
grid-6
grid-6
grid-3
grid-6
grid-6
grid-6
grid-6
grid-6
grid-3
grid-6
grid-6


Toggle navigation
Dashr
Home
About
Contact
Test Dashboard
There's no business like snow business.
I am the guts of this operation.


Welcome to the new forum
-
Greg Hurrell
I've just publicly announced REnamer, the new file renaming utility for Mac OS X, here:
http://wincent.com/a/news/archives/2008/01/announcing_rena.php
Please see that announcement for full details.
The product pages are now up at:
At this stage you'll find there a sneak preview screencast showing what REnamer is, and a link that you can use to subscribe to the beta testing mailing list. I'm planning to release a beta at the beginning of February.
Reply
This topic is now closed.


Playing with USB is very fun, and V-USB makes it pretty convenient and cheap.
Projects
Tricolor USB alert
that pretends to be a keyboard but can receive info from your PC and show some status red/yellow/green light
RapideUSB
a 5cm x 5cm protoboard for V-USB implementation with
ATtiny2313
or
ATmega328
Tutorials and documentation
USB without Arduino
or "how to use V-USB tutorials" by your host


| DOSE: |
100 mg |
smoked |
DMT |
(powder / crystals) |
I am a scientist and I am 39 years old. I have been tampering with psychedelics for years but getting older and the fact that my line of work does not permit for too much abuse I rarely use any sort of substance apart from the occasional Indica.
As a well respected member of our society and a very busy senior member of an established laboratory I cannot afford to 'play' as I used to in my earlier years and thus have limited my experiences to very particular instances and special places, namely festivals at which my friends play music in and that I know I will find other ‘searchers’ of the truth or the ‘other’ or whatever it is that keeps us looking for that crack between the reality that we created and the worlds that we feel are out there and crave for each time we dream.
I remember the first time Ben mentioned DMT he claimed that ‘ it was a way to talk and walk with Angels’, but Ben being much younger than me and a little on the inquisitive side with many drugs I chose to ignore this statement as something someone says in order to impress but when someone else mentioned it in passing I started my research into DMT.
Initially I trawled the web and then I began to ask questions. Many people stated that they had looked for it for years but could not find it, others had mentioned that it was an experience they would rather not repeat, all of them hinted at the fact that during their experiences the first thing they sensed was the existence of ‘a greater intelligence’.
I did not find any difficulty in obtaining a sample, something I thought nothing of initially until testimonies to the fact that it is not a drug you find readily came flooding in from many psychonauts and close members of my spiritual family, in fact, I have to admit, the drug found me.
I have penned my first experiences and went on to try and log the rest as frequently as possible but I have become totally engulfed in another world that has seeped into my reality and I can truly claim that it has altered my perception of time and space and our connection to the Ultimate Universe, and at the expense of sounding schizophrenic I know now the face of God and the link we have with each other and the entirety of existence.
My first hit found me sitting in my living room with my two cats at my side. From the moment the smoke hit my lungs everything started to turn fractal and the objects before me took on a life of their own.
The second thing I noticed was that I was being observed, the patterns and shapes had intent and were not random. My eyesight was being assessed, my hearing, my ability to feel, to sense, to touch, to smell, all these things that make us human were being weighed and monitored. I was not afraid and I was not shocked, but rather relieved by the fact that from the beginning we have never been alone and ever so delicately we are being initiated into what is to come next after we leave this shell.
I began to cry because at long last I realized that always and forever our Angels surround us and protect us. Dancing colours and patterns passed before my eyes and lead my gaze to the roof where I witnessed a perplexity of light and colour twirling forever within each other, not unlike the murals and paintings of Angels that we see in Churches. Flying sound like nothing I had ever thought of before came buzzing through the room, sound gave birth to light or light to sound, I gave out a cry of joy and found my body flying through the room along with the light.  I found my body turning into vibrations and tried to catch the angels in a game of chase.
Everything seemed to rejoice in the notion of existence and my friends delved deeper into my thoughts. I closed my eyes only to find another world awaiting for me.  Here a smiley flashed constantly before my thoughts as if to attract my attention. I smiled back and followed it. Creatures began to appear like dense matter striving to take a form that I could comprehend. Initially they looked like something out of the movie Alien but when I let this thought go I realized that they were doing this for my benefit for me to be able to conceptualize their shape.
I had a conversation with these beings and have chosen, for purely notional purposes, to name them ‘overlords’. In a sense they are us but before the material manifested. I asked them why the world as I know it is in such a state and they reviled to me that it is just another state of being and eventually everything will ‘be alright’ that ‘everything is alright in the end’.
After my initial trip I have gone on since to experiment with DMT on a number of occasions and have since always managed to pick up off from where I left off last. Sometimes its just for fun, I love to dance with the Angels you see, and other times its because in the mean time I get closer to the Light that exists in the centre of each Trip.
I know a lot of skeptics out there will claim that all these experiences are just a projection of what lays inside each of us and in part this is true, but if we all initiated from the Source then what is to say that we cannot comprehend or see it?
In the meantime this is what I have accomplished: I can manifest items from out of nothing just by clicking my fingers, I can elevate at will, I can shift realities and telepath with friends that are far away. Sometimes, in the presence of the God-head I forget who and what I am, and this I found is an exercise in order to be able to contain my form in thought as well as matter. I have found fault lines within our existence such as jealousy, fear, hate etc but these are all vibrations that we are able to manipulate and extinguish.
I also have a message from where it is I travel to whenever I transcend: The time has come for the Change and the Change is Paradise. It is at our fingertips and is waiting to be born because it is already a notion that we have given birth to and crave. Love, compassion and mercy, the ultimate feeling-thought-sound vibrations that will eventually pave the way for the Change.
Do not mistake DMT for another trippy experience, initially this is what we perhaps experiment with it for, DMT is a tool and a key for the inside, the colours and shapes you see are merely what a rattle is to an infant. They will attract your attention but all the while they will build up abilities such as co-ordination, attention and the development of the senses. Do not be afraid and do not withdraw from your experience, eventually it will merge with your everyday life and transport you and everything around you into an ethereal playground.
See you all there x
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.


4. Post Hartree-Fock¶
Quantum chemistry is mature enough to have a canonical approaches followed by Hartree-Fock method. Their behaviour, successes, and most importantly their failures are widely known and accepted. With a couple of exceptions which we will not mention, they are known as:
Configuration Interaction(CI)
Coupled-Cluster(CC)
Perturbation Theory(PT)
4.1. Configuration Interaction¶
4.1.1. CID¶
TODO
4.1.2. CISD¶
TODO
4.1.3. CISD(T)¶
TODO
4.1.4. Full CI¶
TODO
4.2. Coupled-Cluster¶
Coupled cluster methods are among the most accurate electronic structure methods available today. For example, with a good choice for a basis, the CCSD(T) equations will give you the correct energy of a molecular system to chemical accuracy (~0.1 kcal/mol).
4.2.1. CCD¶
TODO
4.2.2. CCSD¶
To implement the CCSD method, we should follow the procedure:
Preparing the Spin-Orbital Basis Integrals
Build the Initial-Guess Cluster Amplitudes
For Hartree-Fock reference determinants, the most common initial guess for the cluster amplitudes are the Moller-Plesset first-order perturbed wave function:
Calculate the CC Intermediates
Use the spin-orbital Eqs. 3-13 from Stanton’s paper to build the two-index (F) and four-index (W) intermediates, as well as the effective doubles (labelled with the Greek letter tau).
Compute the Updated Cluster Amplitudes
Use Eqs. 1 and 2 from Stanton’s paper to compute the updated T1 and T2 cluster amplitudes.
Check for Convergence and Iterate Calculate the current CC correlation energy:
Compare energies and cluster amplitudes between iterations to check for convergence to some specified cutoff. If convergence is reached, you’re done; if not, return to third step and continue.
To run a CCSD calculation in MoHa, the example is below:
from moha import *
mol,orbs = IOSystem.from_file('h2o.xyz','sto-3g.nwchem')
ham = Hamiltonian.build(mol,orbs)
hfwavefunction = SCFSolver.hf(ham,occ = {'alpha':4,'beta':5})
CCSolver.ccsd(hfwavefunction,ham)
4.3. Perturbation Theory¶
4.3.1. MP2¶
Moller-Plesset Second Order Perturbation theory (MP2) is a non-iterative way to calculate electron correlation energy The expression for it’s energy contribution can be written as:
where the two electron integral are molecular integral and should be transform from atomic orbtial to molecular orbital basis.
To run a MP2 calculation in MoHa, the example is below:
from moha import *
mol,orbs = IOSystem.from_file('h2o.xyz','sto-3g.nwchem')
ham = Hamiltonian.build(mol,orbs)
hfwavefunction = SCFSolver.hf(ham,occ = {'alpha':4,'beta':5})
MPNSolver.mp2(hfwavefunction,ham)
4.3.2. MP3¶
TODO


Virions in the ultra sections of infected Vero E6 cells under electron microscope.  White arrows indicated the spindle sharp of viral particles in infected cells with LH treatment.


--- title: Ruby Gems layout: page pageOrder: 2 section: 'Where' subsection: true sitemap: priority: 0.6 changefreq: 'monthly' lastmod: 2015-04-18T22:40:27+01:00 ---
Ruby Gems contains the following gems:


The simple but not easy game,
it 's so interesting that you wouldn't want to stop!
Your goal is 200 seconds!
SaveYourBall
-- a fantastic ball game.
The simple but not easy game,
it 's so interesting that you wouldn't want to stop!
Your goal is 200 seconds!
Details
Using WASD to control your ball
Shift/J for mini move
Tying to keep away from those unfriendly spike
U/R for pause or restart
Resist as long as ♂ you ♂ can!
To be the King ♂ of ♂ hilosophers, young man!
start
stop
We are very glad that you can play this game,
if you want to play more fun games, please pay attention to us, though not definitely have.
----MephistoPheies


---
layout: default
---
We only work with clients who are not afraid of paradigm shifts. We're not talking a re-branding, but an overhaul of culture and willing to invest in actual change. We're combining anthropology and design for clients who are wishing to honestly be themselves. And see money as a means for change.
{% for post in site.posts %}
{{ post.excerpt }}
Read More
{% endfor %}
{% for post in site.posts %}
{% if post.tag contains 'home' %}
{{page.content}}
{% endif%}
{% endfor %}


Ghanian Birthday Calculator.
This is basically a program that enables you grab a Ghanian name depending on your gender.
How it operates initially.
- Enter your birth details respectively in the top bar.
- Select your gender.
- Key in the submit button to get feedback.
Here is a description what this Akan names really means
MALE
- Sunday-Kwasi
- Monday-Kwadwo
- Tuesday-Kwabena
- Wednesday-Kwaku
- Thursday-Yaw
- Friday-Kofi
- Saturday-Kwame
FEMALE
- Sunday-Akosa
- Monday-Adwoa
- Tuesday-Abenaa
- Wednesday-Akua
- Thursday-Yaa
- Friday-Afua
- Saturday-Ama


This paragraph add spacing, for scroll test.
This is a test
This paragraph add spacing, for scroll test.


Celebrity Dating Quiz
To match you with a celeb, tell us a bit more about you:
Age
Gender
Female
Male
Favorite Food
Burger
Sushi
Pasta
Match Me!
You matched with
!


This site is helpful when you want a quick tip or a light overview. (Warning: This site is a bit controversial, and is looked down on in some circles. But overall, I think they do a reasonable job of presenting the bare basics on most topics. It can be very helpful to beginners who want to get the gist of a subject without encountering too much advanced nomenclature.)
For instance, read the sections HTML Home through HTML Images.
Gain a deeper understanding of how HTML or other web-related technologies work. Most of what you read on MDN is definitive.
Additional Info:
Visit and explore
the following site which is a also definitive, but often harder to understand than either MDN or W3Schools:
The World Wide Web Consortium
Note: View any relevant videos that were posted to the
module. There may be 10-20 minutes of online videos per week and each is full of good information that could end
up on a quiz.
Terminology from this
Module:
This terminology may be on a quiz, in an assignment, or in a class
discussion:
| HTML XHTML HTML5 Doctype tag |
Elements Tags Attributes Block element and inline elements Web Internet |
Mosaic Tim Berners-Lee URL Protocol HTTP Client side and server side |


This is a test web site in ASP .NET Core in order to test DSS and Aggregation functionalities
Technologies used to develop this site:


Current Suppliers
| Supplier ID | Company | Address | Actions | |
|---|---|---|---|---|
| {{supplier.suppliername}} | {{supplier.name}} | {{supplier.email}} | {{supplier.department}} | |
| Supplier ID | Company | Address | Actions |
| Supplier ID | Company | Address | Actions | |
|---|---|---|---|---|
| {{supplier.suppliername}} | {{supplier.name}} | {{supplier.email}} | {{supplier.department}} | |
| Supplier ID | Company | Address | Actions |


Samba is a service that enables the user to share files with other machines. It has interoperatibility, which means that it can share stuff between linux and windows systems. A windows user will just see an icon for a folder that contains some files. Even though the folder and files really exists on a linux-server.
Connecting
For linux-users you can log in to the smb-share using smbclient, like this:
smbclient -L <IP_ADDRESS>
smbclient //<IP_ADDRESS>/tmp
smbclient \\\\<IP_ADDRESS>\\ipc$ -U john
smbclient //<IP_ADDRESS>/ipc$ -U john
If you don't provide any password, just click enter, the server might show you the different shares and version of the server. This can be useful information for looking for exploits. There are tons of exploits for smb.
So smb, for a linux-user, is pretty much like and ftp or a nfs
Connecting with PSExec
If you have credentials you can use psexec you easily log in. You can either use the standalone binary or the metasploit module.
use exploit/windows/smb/psexec
Connecting with WMI
TODO
nbtscan
nbtscan -r <IP_ADDRESS>/24
It can be a bit buggy sometimes so run it several times to make sure it found all users.
Enum4linux
Enum4linux can be used to enumerate windows and linux machines with smb-shares.
The do all option:
enum4linux -a <IP_ADDRESS>
For info about it here: https://labs.portcullis.co.uk/tools/enum4linux/
rpcclient
You can also use rpcclient to enumerate the share.
Connect with a null-session. That is, without a user. This only works for older windows servers.
rpcclient -U "" <IP_ADDRESS>
Once connected you could enter commands like
srvinfo
enumdomusers
getdompwinfo
querydominfo
netshareenum
netshareenumall


"Exam"
To make sure you now have a working knowledge of Cytoscape automation, choose one of the following datasets
to analyze in R and Cytoscape:
- Colins (2007): A merged dataset of three yeast APMS experiments.
Find the putative complexes.
- GPL54: A yeast heat shock microarray experiment from GEO. Create a network
of the most significant genes based on the magnitude of the fold change
and color the nodes by expression.


WITNESS LIST Pensions & Investments Committee March 31, 2005-8:00A HB 109 On: Smith, Virginia "Ginger" (Pension Review Board) Registering, but not testifying: Against: Midence, Yuniedth (Houston Municipal Employee Pension System) Shaw, Steven (Dallas Police and Fire Pension System) Smith, Clint (TEXPERS) HB 815 For: Benjamin, George (Sudanese Community/Dallas, TX) Hadley, Cheri (Committee for Peace and Justice in Sudan) Ibrahim, Ismail Omer (Darfur Association) Ricci III, Caesar A. (Self) Tellem, Sundiata - Xian (Self and Green Party of the United States Black Caucus) On: Lee, Greg (The Univ. of Texas Investment Management Co. (UTIMCO)) Nail, William S. (ERS) Williams, Michael (Self) Registering, but not testifying: For: Abdeljabbar, Seddik (Western Sudan Aid Relief in the USA) Abdelrahim, Khamis (Western Sudan Aid Relief in the USA) Hadden, Karen (Peace Action Texas) Taha, Fakiri Gawish (Nubian Congress for Democracy and Justice Sudan) Toto, Yassin (Wuba Mountains Association/Dallas, TX) HB 1795 For: Baker, Misty (Self) Buffum, Ron (Texas Association of Health Underwriters (TAHU)) Perrin, Dan (Self and The HSA Coalition) Against: Anderson, Gary (Texas Public Employees Assn.) Homer, Andrew (Texas Public Employees Association) O'Connor, Caroline (Texas State Employees Union) Raab, Ted Melina (Texas Federation of Teacher) On: Fuelberg, Ann (ERS) Stout, Mary Katherine (Texas Public Policy Foundation) Registering, but not testifying: For: Dennis, Hilary (Texas Medical Association) Fowler, Jenny (Humana, Inc.) Green, Shelton (Texas Association of Business) Oates, John (Aetna, Inc.) Rummel, Leah (Texas Assoc. of Health Plans)


Which Instance of the Class
to Use:
Objects and the Dot ( . ) Operator
You may be wondering how Java knows which object to associate with a given instance method. In module 3, we pointed out that an object must always be called with the dot operator, where the left-hand side of the operator was an object. That object on the left-hand side of the dot operator is the one whose instance variables will be used in the current call to an instance method.
Therefore, when calling the method InstanceMethod, the programmer must specify the object to use, for example:
UMUC_Variables v1 = new UMUC_Variables(); v1.InstanceMethod();


Use Case Videos
confluence-information-macro confluence-information-macro-note
The Use Case videso below use Unravel 4.2
Case #1: How to Search for Applications and Optimize/Tune a Hive Application
Case #2: How to “Root Cause” Issues with a Workflow that Missed Its SLA
Case #3: How to Debug Failed Applications
Case #4: How to Review Spark Applications and Identify Areas for Performance Improvements
Running the Configuration Wizard
After you install the Unravel Server RPM, you can run Unravel Web UI’s configuration wizard to:
- Set up access to various Big Data components (HDFS, Hive, Oozie, and so on).
- Create users
- Set up email/SMTP, LDAP, Kerberos
The configuration wizard informs you of errors and continuously checks for failed and incorrect settings. To start the configuration wizard, click Admin | Manage | Configuration.
confluence-information-macro confluence-information-macro-note
The Unravel Web UI configuration wizard is available only for theadmin
user.
Setting Up Access to Big Data Components
Creating Users and Setting Up Email/SMTP, LDAP, Kerberos
Attachments:


CRONOS A film review by Edwin Jahiel Copyright 1994,1995 Edwin Jahiel
(Mexico, 1993) ** 1/4. Written and directed by Guillermo Del Toro. Photography, Guillermo Navarro. Production Design, Tolita Figueroa. Special makeup effects, Necropia. Editing, Raul Davalos. Art director, Brigite Broch. Art designer, Maria Figueroa. Special effects, Laurencio Cordero. Music, Javier Alvarez. Cast: Federico Luppi, Ron Perlman, Claudio Brook, Margarita Isabel, Tamara Shanath, Daniel Gimenez Cacho, et al. A Mexican production released by October Films. In Spanish and English, with subtitles. Ca. 90 min. No rating.
This is all about the CD. Not the Compact Disc or a Certificate of Deposit but the Cronos Device that is supposed to ensure immortality. It was invented by an alchemist who, fleeing the Inquisition, came to Mexico in 1574 and became an official watchmaker. The device looks like an outsized golden scarab,o, in the director's own words, a Faberge egg
Apparently there's a glitch in this gizmo: although it kept its inventor alive for centuries, he did die in a 1930s earthquake. You can't trust anything.
Cut to 1997. Meet elderly antiques dealer Jesus Gris, his much younger wife Mercedes and his granddaughter Aurora. Mercedes is a tango teacher who may or may not be unfaithful. Aurora's provenance is unexplained, as is her near-mutism. A lot is unexplained in this movie.
The CD turns up inside the base of a wooden angel that Senor Gris sells to Angel, the gangsterish American nephew-henchman of terminally ill industrialist Dieter De la Guardia. But Gris keeps the contraption, which Angel and Dieter are after. It is only later that, in its muddled, non sequitur way, the film reveals that Dieter owned the alchemist's diary and knew about the CD.
The CD comes without instructions. When Gris winds it up, it puts out needle-pointed claws that pierce, let out blood, cause pain, but also somewhat rejuvenate the man.
There's more muddled stuff as Gris vampiristically needs the blood of others (he licks a nosebleed off a bathroom floor); as the bad Angel beats up and kills Jesus Gris; as Gris's corpse is, in repellent, graphic images, patched up ... and later comes to life; as, with the help of Aurora, Gris fights separately Angel and Dieter.
The movie is a ghoulish goulash of nonsense, plot holes, loose ends, discontinuities and illogicalities, even by horror flick standards. At every step we are left wondering about things natural, unnatural and supernatural. What is the nature of the May-December Gris couple? What do the De la Guardia Enterprises manufacture? How can the resuscitated Gris use a pay phone without change? Why does grungy surgeon-embalmer-mortician Tito cremate an empty coffin?
The film may be a narrative mess but it is a minor triumph of techniques and visuals. Whether the sights are silly, repulsive or both, the images are striking. The real raison d'etre of the movie is its art work, photography, colors, lighting, special effects, moody, stylized or surreal decors.
By Mexican standards, the CRONOS budget (about two million dollars) is huge, second only to that of LIKE WATER FOR CHOCOLATE. The movie would have cost ten times more if made in North America.
The 29-year old Guillermo del Toro, self-avowedly "genre-impaired," is exclusively fascinated by "grotesque tales and horror with Gothic sensibility." Obviously a student of horror and science-fiction, he has thrown into his film everything save the prosaic kitchen sink.
Among the elements: Vampires and the Undead, the Search for the Fountain of Youth (in the tradition of the Spanish Conquistador Ponce de Leon), the Golden Bug, Egyptian-like scarabs (a staple of The Mummy's Curse school of movies), the Cronos of Greek mythology (a Titan who devoured his own children) and The Time Machine (Chronos with an "h" means "time" in Greek).
There are also whiffs of Catholicism (prayer, redemption, etc.) and of the Frankenstein moral: don't fool around with what God has created.
Add to this much would-be humorous symbolism of names: Angel (of darkness), Aurora (Dawn in Latin), Tito (as in Yugoslavia=B9s), De La Guardia (the late Mayor of New York and a reference to guarding or protecting?) and more. And, of course, Jesus Gris (cf. Jesus Cristo). Jesus is a common Hispanic name, but here there are pointed references to would-be immortality.
CRONOS swept the Mexican Oscars with nine "Ariels,"including Best Picture, Screenplay and Director. It won the top prize at the Critics' Week of the 1993 Cannes Festival. In the U.S., its critical reception has been quite mixed, although in some quarters it is becoming a cult movie of sorts.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Release Note¶
0.3.1¶
Update link: I forgot to update the link when I change the project name.
Note
Github page update is slow such that the select language bar may wait for a while then working.
0.3.0¶
- NEW-FATURES
- DOCUMENT
Create the link of Edit on Github
Build a Combobox on the navigation bar for select language.
I import the disqus such that the user can leave the comment between each page.
Create a link for counts the comment of disqus.
- GAME-ARTICLE
For now, WPM will as the time pass, doing the update.
Note
WPM display if and only if the length of your typing if greater than 4.
- MODIFY
Rename the project to follow the convention of PyPI. (typing_drop_down → typing_game)
- BUG-FIXES
Fixed a performance issue that made the delay when article is long.
0.2.1¶
Published to PyPI and Github
0.2.0¶
- NEW-FATURES
Add cli.py for you can run the game with the command line.
Now, you can select the article, its file is defined by the user, and you can set by config. (config.py)
Providing more colors on the typed, it has responded to different situations, such as correct, wrong, modify.
Add the sign (↘) of the Enter key, which is shown on the screen to let the user know should press the key.
- BUG-FIXES
Fix a bug of calculating the error of WPM. In the previous edition, when you make a typo, WPM is still increasing.
- MODIFY
Modify the panel of article games, show the WPM and Accuracy only.
- ISSUES
When the words is too much, it needs the higher FPS. Otherwise, it will cause a little delay.<– fixes on 0.3.0
0.1.0¶
- NEW-FATURES
Create an introduction for every game.
Create the homepage.
Provided a new game mode: Article
- BUG-FIXES
remove the none exists subject on the doc.rst (The trouble starts with the copy and paste.)
- ISSUES
- dropdown
The display of text color needs to be strengthened.
- article
There is no chooses to provide you with select the article, which you want to type.<– added on the 0.2.0
0.0.0¶
Write some basic scripts as draft of the game of typing-dropdown
I was attracted by a video, which introduces how to use Python to build a game of typing-dropdown, so I decide to do it by myself.


generic content without role
generic content with presentation role
content with a global aria prop
generic content
content with aria labelledby
tabbable content without role
tabbable content with presentation role
tabbable content with a global aria prop
List item 1
List item 2
List Item with aria-live 1
List Item with aria-live 2
List Item with presentation aria-live 1
List Item with presentation aria-live 2
List Item with aria-label 1
List Item with aria-label 2
List Item with aria-labelledby 1
List Item with aria-labelledby 2
List Item with title 1
List Item with title 2
div with buttons
after button content


Create Post
Add Photo/Video
Tag a Friend
Post
asdfasdfasf
Average : N/A
Update
stuff
×
Select Picture
HI


Oberheim Matrix 6/6R/1000
Single Patch Editor
This editor will work with the Oberheim Matrix 6, 6R, and 1000. These machines have slightly different sysex and capabilities: so if you are working with the Matrix 1000, you need to check the "Matrix 1000" box. If you are working with the 6 or 6R, you need to keep that box unchecked.
Communicating with Edisyn
Make sure that Memory Protect is off (see page 36 of the Matrix 1000 manual, page 11 of the Matrix 6 manual).
Restoring Patches 0...199 on the Matrix 1000
If you erased these patches, you can restore them from sysex files stored in the file resources/Matrix1000Banks.zip in Edisyn's repository.
About Patch Names
The Matrix 1000 and the Matrix 6 store patch names differently. The 1000 doesn't actually store a name, but just information about bank and number. If Edisyn sees this, it will attempt to replace this placeholder name with the original "classic" name. This will include the writeable patches less than 200, unless you uncheck "Use Classic Patch Names" in the Matrix menu.
Looking Up Patch Names by Classic Matrix 1000 Name
If you would like to load a patch from memory, you can look it up by patch name in the Matrix menu.
Sending Individual Parameters to the Matrix 6/6R
Weirdly, the 6/6R require a special sysex message before it will start receiving individual parameter changes. Ideally we'd send this message before every single individual parameter change, but that would be costly. So instead Edisyn sends this message whenever requesting a patch, or sending or writing a patch (manually or via undo/redo/reset/randomization/etc.), or when you uncheck the "Matrix 1000" box. If your 6/6R is not responding to individual parameters, you can also send the message manually by selecting "Request Sending Parameters" in the Matrix menu.
Suggestions
- If you add a lot of random noise (like >50%) to the Matrix 6/6R1000 via Randomization or Hill-Climbing, it will often fall silent. This is almost always due to randomization of either the Amplifier section or the Amplifier Envelope (Envelope 2). I suggest that you first edit the mutation parameters to remove these sections as mutation candidates.
Gotchas
- The 6/6R has no way to request the current patch or to upload to it. But updating the current working memory is important to many functions in Edisyn. Thus if you update the current patch on the 6/6R, Edisyn will actually overwrite patch 99, treating it as a "scratch patch". This means that you cannot rely on patch 99 holding data you've saved there -- Edisyn will scribble over it. On the Matrix 1000, which can read and write to the current patch, this trick is not used.
- The original ROM (1.1.1) for the Matrix 1000 can't handle real-time updates very fast: it clogs up quickly. If you have one of these machines, you should turn off Sends Real Time Changes in the MIDI menu. Alternatively you can upgrade your ROM to a better one. There are two options, 1.1.6 and 1.2.0. I suggest 1.2.0, which I think is somewhat better. If you are in Europe, you can buy the ROM (it's quite cheap) through Untergeek:
If you are in the USA, you can buy the ROM through Bob Grieb (the author):
Note that even with a new ROM, the Matrix 1000 still will be slightly pokey in keeping up with certain parameters. But it's far better than the original ROM.
- Similarly, the original Matrix 6 firmware can't handle updates very rapidl
y. Bob Grieb has also made a firmware revision for the 6 and 6R:
- The patch editor allows you to give patches a name. This is backwards-compatible with the 6/6r. However, when you store a patch in the Matrix 1000, your name is not stored. Instead if you request the patch again, it'll come back with the name BNKb: nn, where b is the bank number, and nn is the two-digit patch number.
- The Matrix series does not indicate the bank or number of a patch when it arrives. On the Matrix 1000, this information is extracted from the patch name. On the Matrix 6/6R there's no way to glean the information, so you may just wind up at "Patch 0".
Librarian Support
- The Matrix 1000 has a special way to rapidly download all the patches in a given bank. You can request this via Request Bank from Synth in the Librarian menu. Try it: it's much faster than the standard Download Bank from Synth but note that the download cannot be stopped.
- Remember that the Matrix 1000 does not store its patch names; so when you download them from the writable banks (000, 100), they can appear untitled unless you're using "classic patch names".
Thanks
Thanks to Guillaume Collavizza<EMAIL_ADDRESS>for debugging individual-parameter updates on the Matrix 6 and 6r.
| By
| Sean Luke
|
| Date
| Matrix 1000 Version: August 2017
Matrix 6/6R Revisions: February 2020
|