1 README
ID: README
1.1 Literate DevOps: OS X Development System
Setting up a development system is a non-trivial investment.
This document captures the steps required and automates as much as possible.
The Style Guide is a must read for the operator.
Org-Mode converted this manual, tedious, and error prone task to a semi-automated, nearly reproducible, and error-less process, for me. This document has never been beta tested; I am it’s only user.
2 Style Guide
ID: STYLEGUIDE
- The means justify the ends
- Makes entirety of the effort achievable, sensible, and valuable
- Be ready for surprises
- You will learn new things every run
- You will be surprised by things every run
- You have to decide if it is an opportunity to better things or
it is something to get upset about
- Only you may decide
- Each top level section might be completed in entirety
- Take brakes between them
- Take over-night breaks
- The whole thing takes a while
- Right-click to paste text into the terminal
- If you Pretzel-v it, it doesn’ work right
- Make scripts executable and run them
sh
doesn’ do what you want and you always forget that
- If one of your purchased apps doesn’ show up in AppStore then just buy it again
- The store will detect that you already own it and ask you to install it
- Growl always has this problem
- Used to reboot to fix it, but unreliable
- This whole thing only makes sense when you read each line
- Partially because you forget after not doing it for a while
- The order is critical
- A lot of the steps are automated and only make sense after you understand the entire script
- There are still a lot of manual steps though
- For example automate app installs and manually configure them, before moving on to the next section
- Everything must be completed before moving on to the next thing
- Disk image verification
- Recipes exist to disable it
- I don’t use them; I want to know every time that all of my disk images are in a known good state
- Try running every program
- Only way to identify failures
- Only way to automate the correct way
- Continue to find new issues and fixes
- Total transparency
- I’ve run this 7 times already
- Every time I run it I find new bugs and new improvements
- Provisioning reveals just how much
- One doesn’t know about their OS
- Things can go really well despite the fact we don’t know how to do it right
- Automated provisioning is handled by kitchenplan
- Be thoughtful
- This is not unique to this box, I just always forget
- For example when I install Emacs
- I didn’t think about using the main GNU release versus railwaycat’s
- That was dumb because I didn’t think about the implications
- First time, I installed all additional libraries
- That was dumb because you should only install what you specifically need
- Brew
- It is very easy to use Brew
- It will install a lot of stuff to make you happy
- If you don’t pay attention to what it does to make you happy then it will eventually make you unhappy
- I didn’t think about using the main GNU release versus railwaycat’s
- Only run this setup with a reliable high-speed Internet connection
- Ran this at off-site, and 40% of the downloads failed
- Once you get comfortable a couple of things happen
- You try to paralellize stuff to save time and it is a big mistake which totally defeats the purpose of taking it slowly and easy because inevitably you will make mistakes
- You forget that the means justify the ends; take it slowly and easy and perform the steps in that manner
- You will form an opinion based upon experience rather than fantasy
- Everyone is entitled to an opinion
- Some opinions are more valuable then others
- Experience trumps fantasy every time
- Take this dev-ops task as an opportunity to form your own personal-preference
- Valuable opinions come about as a result of a lot of good learning
3 Prerequisites, Manual
ID: E637243E-248A-4343-8A4E-DCB8B686A54A
3.1 Scripts
ID: 4B84F9B0-665D-408D-B504-423A0903AACB
- Log into BitBucket/GitHub using Safari
- Download the this repo to get a current copy all the artifacts
- Keep the setup guide open both on a smartphone and on the computer and
track what is happening where
- Seems like overkill but it is really simpler because it is easy to lose your place during reboots when OSX “forgets” the line that you were on
3.2 Image Disk
ID: 702C1D63-B635-40DE-A174-4EC9D379A7A3
- Boot from EF4829
- Dismount C02M
- Erase C02M
- You have the ability to specify the file system (FS) here
- For this guide, it is not required, because Carbon Copy Cloner (CCC) will restore a disk image that has a file system that is Mac OS Extended Journaled (MOSEJ)
- The default is Mac OS Extended (not journaled)
- I suspect though that if I don’t specify it here, then at some point I will either copy or move this passage of text, and since it does not mention the desired file system (MOSEJ), that it will result in a documentation bug
- When you do this, specify the FS and MOSEJ
- Mount 01
- Restore 01 to C02M
- Dismount 01
- Restore rescue partition on C02M
- Boot from C02M
- Dismount EF4829
3.3 Recovery Partition
ID: C33955D4-6C56-44F1-A6BF-33225CA2CF9D
- Pretzel-r on boot to enter it
- This makes sure that it works
3.4 System Preferences
ID: 727763EA-26B6-495F-845B-18B16B3F97C0
3.4.1 Keyboard
ID: D61B4384-B5F5-4B1D-BF11-428F0090451E
| From | To |
|---|---|
| Caps Lock ⇪ | Option ⌥ |
| Control ^ | Caps Lock ⇪ |
| Option ⌥ | Command ⌘ |
| Command ⌘ | Control ⌃ |
3.5 Software Updates
ID: 73C615D6-F743-43DB-B67F-B908C1394CD7
- Installed software updates
- Previously this was followed by manual reboot and that was needless
- On restart, check updates again by clicking on it to see if there are more and
if there are then install them
- There is a slight delay where the screen says that there are no updates before it refreshes and tells you that it is again checking
3.6 Profile
ID: 791C0B00-7071-4C95-8402-1FF45BE4DB9E
Download the ~/.profile
and evaluate it. This may be a download, or just copy
from the download of the repo. I am working through the best option, as both
have seemed fine.
export PS1='\u@\h:\w> ' export HOMEBREW_NO_EMOJI=1 export INFOPATH='/usr/local/share/info:/usr/share/info' export VAGRANT_DEFAULT_PROVIDER=vmware_fusion export CCRYPT="/usr/local/Cellar/ccrypt/1.10/share/emacs/site-lisp" source `brew --repository`/Library/Contributions/brew_bash_completion.sh export EELIB="/Users/$(whoami)/EELIB" export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home" export MACTEX_BIN="/usr/local/texlive/2014/bin/x86_64-darwin" export PATH=/usr/local/bin:$JAVA_HOME/bin:$MACTEX_BIN:~/bin:$PATH alias e='open /Applications/Emacs.app --args --debug-init' alias ec='/usr/local/Cellar/emacs/24.4/Emacs.app/Contents/MacOS/Emacs -nw --debug-init' alias r='r --no-save' alias R='r --no-save' alias bbc='~/git/github/stathon/stathon.py ~/git/bitbucket/ | grep True' alias gbc='~/git/github/stathon/stathon.py ~/git/github/ | grep True' alias gpom='git push origin master' alias gst='git status'
The OSX file system is somewhat-case-sensitive. I did not choose a
case-sensitive operating system when I installed it. If you run r
or R
then
OSX will start R. However, if you run an alias with the same name but upper
versus lower case then it will execute the correct alias. I learned this today.
This is why there are two aliases for starting R
; I want a more OSX like
behavior. I am curious about having a Mac-like console.
alias r='r --no-save' alias R='r --no-save'
After setting up the system, just link it here:
cd ~/
rm .profile
ln -s ~/git/bitbucket/hardware/apple/macbookpro/c02m/.profile .profile
3.7 Install XCode
ID: A6E80ED9-4E97-4263-9D23-431160F50C53
I want Xcode. I want the CLT. I want the IDE and more. I also want KitchenPlan. The installation order of these things was not obvious to me. I got it wrong 3 times. Now it works correctly. Install Xcode and then CLT and then everyone seems to be happy.
Go to the App Store and install it.
You must start Xcode and agree to its licensing. Afterwards, close it.
For reference, see where it lives.
xcode-select --print-path
/Applications/Xcode.app/Contents/Developer
Now install the CLT. Choose Install.
xcode-select --install
Note here that the Xcode path does not change. I don’t understand this. What I think is happening is that Xcode is installed and that it is providing everything that is required and CLT piggy-backs on it.
xcode-select --print-path
/Applications/Xcode.app/Contents/Developer
4 Git, Semi-Automated
ID: 9D7AA569-39C7-4E74-B8A7-8932AA180DFE
After setting up this box, check out your stuff later before imaging.
4.1 Manual
ID: B8467CEB-891A-4199-ABAC-1AEB29A4B7E5
4.1.1 DeltaWalker
ID: 58C17FB4-D6BB-4264-BE35-99FBD4313693
Install DeltaWalker.
Previously I used Meld. That worked fine. It was in Python. Brew installed it’s own Python. I didn’t like that. That is why I switched to DiffMerge. I didn’t want to install Brew Python in addition to OSX Python. Personal preference.
Previously I used DiffMerge. It didn’t have block-merge. That is why I switched to DeltaWalker.
My old setup had a problem. In Git I set up the external.diff to Meld. external.diff is only for command line tools. Meld is a GUI. That was wrong. I got a poor-user experience with git and vc-diff and Magit as a result.
This is the first BrewCask install, so it asks you for your password.
brew cask install deltawalker
The full setup follows. This documentation will show up in the productivity setup steps, and after the fonts are installed.
- Expanded DMG - Open /opt/homebrew-cask/Caskroom/deltawalker/ - Drag DeltaWalker into Applications - Set up the DeltaWalker.workflow - Copy the samples folder to test out the app and workflow later - Start it - Register it - Help, Install License Key - Set preferences for new comparisons (be sure of this, easy not to) - General - Date formatting: English (United States) - Max available memory: 4096MiB - [X] Automatically find new updates and notify me - Colors and Fonts - Basic::Text Font and Text Editor Block Selection Font: DJSM 14 - Differences::Font: DJSM 14 - All Comparisons - [ ] Use text differencing optimized for speed - [X] Use text differencing optimized for accuracy - [X] Follow symbolic links - [ ] Ignore differences in whitespace - Want to know about tabs versus spaces - [ ] Ignore differences in character case - Interesting but default do care - [X] Ignore differences in line endings (CF and LF) - Most systems don't care
4.2 Automated
tangle: git.sh comments: no ID: 0C2714A7-1900-4E21-9611-0BE64EF565F3
Generate the key. There is no passphrase.
mkdir ~/.ssh cd ~/.ssh ssh-keygen -N '' -t rsa -C<EMAIL_ADDRESS>-f orion_gcr_rsa
Set permissions so that ssh
will run.
chmod 600 ~/.ssh/orion_gcr_rsa chmod 600 ~/.ssh/orion_gcr_rsa.pub ssh-add -K ~/.ssh/orion_gcr_rsa
OSX creates this directory everywhere and it must be ignored.
echo .DS_Store >> ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global
Add they key to Bitbucket and Github.
cat ~/.ssh/orion_gcr_rsa.pub | pbcopy read -p "The new key is in your clipboard. Go and add this key to BitBucket and GitHub. When you are finished, hit [enter] to continue."
Set up ~/.ssh/config.
cat > ~/.ssh/config << EOF Host github-grettke HostName github.com User git PreferredAuthentications publickey IdentityFile ~/.ssh/orion_gcr_rsa.pub Host bitbucket-grettke HostName bitbucket.org User git PreferredAuthentications publickey IdentityFile ~/.ssh/orion_gcr_rsa.pub EOF
Test each one out.
ssh -T github-grettke read -p "Did it work? If not, fix it."
Separate them to allow for easier copy-pasting.
ssh -T bitbucket-grettke read -p "Did it work? If not, fix it."
 There are also many ways to manage Python installations. I am not considering any of them here. My approach is to use the base-box as a base. It needs to do certain things well. These directions are for my current approach.
Directions for installing Pip live here.
mkdir ~/tmp
cd ~/tmp
curl -O https://bootstrap.pypa.io/get-pip.py
sudo -H python ./get-pip.py
Install GitPython for Stathon.
sudo pip install GitPython==0.3.2.RC1
5 OSX GUI Config, Manual
ID: 2CF80D6B-BE09-4805-89BC-E28E8081159D
Read the directions.
sudo gem install kitchenplan
Start the setup.
kitchenplan setup
When it asks, give my aliased URL so I can work right out of that directory.
github-grettke:grettke/kitchenplan.git
Provision it.
kitchenplan provision
Log in and out again to see changes. Previously I would reboot the machine, but that seems unnecessary.
The first two times I tested this, the desktop picture was set correctly. The 3rd time it was not. Also 4-6. I’m leaving that alone for now.
KitchenPlan may be run repeatedly. After completing various sections of this script I re-ran KitchenPlan. It worked correctly.
6 Emacs Environment Semi-Automated
ID: 2AE931ED-463D-4113-AB3A-A72161E301A0
This is what it takes to get an Emacs+Org development environment set up. Nearly everything is included but for LaTeX, which has an enormous download and installed by hand later.
The way that I like to go through this is to:
- Perform the steps in the manual section
- Execute
emacs-run.sh
for the automated stuff - Perform the manual configuration for everything that got installed
- Directions are in
emacs-read.org
- Directions are in
6.1 System Software
ID: D47E9374-04FB-41AB-94A6-2A4B0D3F1D71
6.1.1 Manual
ID: 78BCFE77-0D00-488A-9C64-556AF2CE1F64
- Fonts
ID: C54893B7-4372-4723-8E29-02E2EB3A7556
Manually install fonts used for Emacs. Fonts that will be installed: - DejaVu - NotoSans - NotoSansSymbols - Quivira - Symbola They live in the font dir in the ALEC project. Steps to install them: - Extract them - Start Font Book - Create a new COLLECTION "Emacs" - Drag the top-level directory into the collection - Font Book will search through it recursively for fonts and add them - Correct any resolution issues, which happen every time so far
- Terminal
ID: 37EFA2A6-C467-4211-9DF2-80B2D238D07D
Select the Solarized dark theme. It is checked out in Github-Anon. Go into preferences, choose it, and set it as the default.
Set the font to DJSM 17.
- Growl
ID: 7C14A841-1223-4D4F-9D10-32B90A5095E1
Install Growl via AppStore. Run it. Enable it to run on login.
Smoke theme. Top left corner since EMACS is usually on right-half. Large.
6.1.2 Automated
ID: 24B4EC99-6A54-470D-B6A1-00AA2F5E41DB
Do the manual configuration of this stuff right away. The system is unusable without it. For some reason I find it easy to forget that.
- XQuartz
ID: A11D2C45-BBD9-42CD-97F6-DBE125A17EB5
Why is this here? It used to be for Meld. Meld went away. It definitely feels right to be here. It is nice to have a X-Server. Stuff like the
dot
tool use X. I am staying true-enough here.This install asks for a password. I am done researching what asks for a password and what does not. Perfect world I would do that and break out the steps into things that ask for a password and things that to do not. In that perfect world, time does not exist. To do this in a world with time will take a lot of it.
Asking for passwords appears to be an application-specific event and not based on order of Brew and BrewCask installs. Even if there is more to it, I am not researching it more now.
brew cask install xquartz
- Karabiner
ID: C3F3E565-0AC8-408E-BEB9-58601A87DDA8
brew cask install karabiner
Run it. Approve it. Configure it with the following. Look for the heading with the name below following "Modify". Check: - Return to Option
(+ When you type Return only, send Return) - Spectacle
ID: 4380D20F-9359-470A-97B3-37C56AE9A8E6
brew cask install spectacle
Run it. Approve it. Set it to run at login.
- Bartender
ID: 16E49B61-10C0-4A8C-9EFB-68FE01A16935
brew cask install bartender
- GENERAL - Launch Bartender at login: yes. - At bartender launch: show bartender bar: NO. - Bartender bar: autohides, YES. - Menu bar icon highlight - Show when bartender bar is open: YES. - Bartender menu baricon: - ADVANCED - Bartender menu bar icon: visible YES. - Clicking on bartender will: open bartender bar. - For everything moved into the gutter - I made it display in the main for 5m. - Ordered them (reorder by holding Pretzel and dragging them) (do this after installing everything) - little snitch - Can't move this one at all anyway - Date/Time - Volume - Keychain Access - Battery - Bluetooth - Wifi - Vagrant Manager - Dropbox - Fast User Switching Menu - Applications Menu Settings - Notification center - Spotlight - Bartender - Hide - Growl - Karabiner - Spectacle - Carbon Copy Cloner - AirPort Display - Time Machine (completely) - Google Chrome (Hangouts) - Microsoft Remote Desktop Arrangement-algorithm is most activity or cared about on the outside and less so in the middle.
- Growlnotify
ID: 32EC8433-55E8-4F2D-A4DB-217BA654FEC3
brew cask install growlnotify
- CCrypt
ID: 6E28AA90-2D64-493F-9D90-FD41897F3A0A
brew install ccrypt
- Aspell
ID: DF3016FA-FBBA-4C87-9D5A-B5373B9BE5F7
brew install aspell -all
- Java
ID: 64A80CB9-6DAB-49EF-8E3C-0EF11E7BA3B1
At this point, test out Java and Langtool. The full Org stuff requires more configuration, like Ditaa. This assumes that you’ve done the Emacs final config stuff based on warnings at startup of Emacs; not on directions on this document.
brew cask install java
6.2 Emacs
ID: FE9C3050-9F4B-42E3-A120-ADBF1913A2B3
I quit using railwaycat’s emacs mac port. It was really nice. One night I reprovisionined my machine. railwaycat’s repo was down. I learned that it was a one-man show. I never thought about it. It means that it is not supported well. Things that are supported well are likely to be available. I switched to the GNU Emacs app. It has those desirable traits.
ImageMagic is required for the Emacs install, so install it first.
brew install imagemagick --with-fftw --with-fontconfig --with-webp --with-x11
With all of Emacs prerequisites satisfied, install it now.
brew install emacs --cocoa --with-gnutls --with-imagemagick brew linkapps
The installer lists caveats. Do I need to know of these for each installer???
Now link my .emacs.el and try tangling.
ln -s ~/git/github/help/.emacs.el ~/.emacs.el ln -s ~/git/bitbucket/alec/.aspell.en.pws ~/.aspell.en.pws ln -s ~/git/bitbucket/alec/.aspell.en.prepl ~/.aspell.en.prepl
The eshell config lives under .emacs.d. It doesn’t exist until Emacs is run. This setup creates a link to the real .emacs.d. Create the directory first and then link it.
mkdir ~/.emacs.d ln -s ~/git/github/help/eshell/ ~/.emacs.d/eshell
Start Emacs. Remember any Emacs fixes. Everything should work.
7 Productivity Semi-Automated
ID: F448220B-7657-44BE-96BE-66D4A82DCAD9
To be immediately productive with the most common use cases, I need all of these apps.
Use cases:
- Communications
- Productivity
- Word processing
- Productivity is pretty broadly defined here. It means everything.
The installation process is similar to Emacs up above:
- Install the software automatically
- Configure it manually
- Manually run it and make sure that it is happy
- You will find new stuff every time you do this and you will get better at dev-ops and automate as much of it as you can and want to do
I am curious about how best to automate this portion of the installation. My approaches were in order:
- Just let it run and try stuff later
- Allows for installation failures which I don’t like, it wastes time discovering the issue and resolving it
- Verify that each app starts
- This is a fine approach. I would like to know at installation time though if there is a failure. Reading the transcript would be a good approach. Perhaps I should capture it, too.
- Works easily for command line stuff via a script. GUI stuff is slower when
I run it through Spotlight. Perhaps it is worth tracking down the
installation directories of everything and starting them up via
open
?- Is this level of reproducibility required? Might need to quantify this.
Read through the installation messages at least once. You will learn things and then you will improve the installation process.
7.1 Files
ID: 1AE57BD9-F842-4D7C-A18A-58740A9A6ACB
I always end up keeping these temp files. Yes, temp files. They don’t live in source control.
touch ~/tmp/post.org touch ~/tmp/scratch.org touch ~/tmp/todo.org
7.2 Dropbox
ID: F8E6CF70-B933-4DAB-9067-22D8A8A6B306
This one is first so that I’ll have easy access to licenses.
brew cask install dropbox
Sign in. In Login Items, start Dropbox. When on highspeed, just sync everything after copying locally of course. When on lowspeed, just sync required.
7.3 Little Snitch
ID: 9BEF8392-9623-495D-9D78-2FE97B65931A
brew cask install little-snitch
As of writing, the installer just gets downloaded and you need to run it like this: #+begin_src sh open /opt/homebrew-cask/Caskroom/little-snitch/3.5.1/Little Snitch Installer.app/ #+end_src Typical usage is to grant every program full access for any connection, forever, until there is a reason not to do so. - Gen - Show inactive warning - Silent mode: no - Show status in menu bar. - Alert: - Detail level: Show full details - No: Confirm automatically - NO: Confirm with return and escape. - Monitor: - Keyboard shortcut: On - Show network activity in menu bar. - Show data rates numerically. Monochrome. - Show auto when mouse enters. Hide in 2s. - APS - No: Enable automatic profile switching - Yes: Save geolocation of networks. - Security - Allow rules and profile edit. - Allow profile switch. - Allow preference editing - Respect privacy. - Advanced - Approve rules automatically. Update - Automatically check for updates daily
7.4 Chrome
ID: 12B7CE2E-3AEF-44AD-98DC-F4E4EACD4FDF
brew cask install google-chrome
Sign into Chrome. Let the settings sync. All the JS disabling stuff needs you to approve it. It is irritating. You always forget to approve it and make it worse. Disable ScriptSafe right away. Turn it on as needed.
7.5 Firefox
ID: 61E12D72-B4EB-4AA9-AA86-BB620E1D90A5
brew cask install firefox
Sometimes this install fails. I checked the file download. The file exists. The name hasn’t changed. Did a manual install instead.
Install the standard plugins: NoScript, Blur.
7.6 Filezilla
ID: 3F67D0FE-1FE7-4578-9C71-DE4DBD6F75C2
brew cask install filezilla
Set up Filezilla for WnW.
7.7 Skype
ID: 934F774C-A87E-42A9-A558-152B7FEA1670
brew cask install skype
Got a surprise today. After doing 7 runs, Skype was installed but it was not successfully linked into /Application. That is surprising. It is installed under the BrewCask (cask room) location:
/opt/homebrew/Caskroom/skype/latest/Skype
The link to Applications didn’t exist so Skype was not added to Login
Items. I manually added it. I clicked +
. This Mac. Searched for “Skype”. Then I
chose it.
Log in automatically. Don't grant access to contacts. Preferences General. Never set my status away. Don't show birthday notifications. Don't always keep Skype up to date. Messaing: Don't use larg emotions. Use compact chat style. Don't show when I am typing. Notifications: Do not notify when I sign in or out, and others, and when they become available do nothing. Advanced: Display technical call information yes. Do not collect call information. Login Items, add Skype in here.
7.8 SourceTree
ID: FB6C94D0-0CE2-478E-88FB-C9D0B2D5E687
brew cask install sourcetree
Log into SourceTree. Let it scan the BitBucket folder to add those projects to SourceTree. Preferences. General: Disallow SourceTree from modifying yoru global Git config file Diff: Set font to DJSM 14. Manually: - Go through the licensing process - Old app just let you type it into the GUI, not seeing it here now
7.9 Racket
ID: A8A0F670-7277-4648-9045-9B7D59C0AC54
Need this for resume stuff. At this point at least Racket is installed. Here I found that Pandoc was not set up right. After everything is done, including manually installing MacTeX, I could build my resume here.
brew cask install racket
racket --version
7.10 Freemind
ID: 451994D9-2351-4867-9798-7522388F6207
I use mindmaps.
brew cask install freemind
Run it.
7.11 VIM & MacVIM
ID: 54E89ACB-1573-4D11-B687-97A754A3908E
brew install vim
brew cask install macvim
Copy over my .vimrc, once one exists. Run it.
7.14 Virtualbox
ID: 6B0AAEB8-5589-4D36-962A-C2F8C0061B64
brew cask install virtualbox
Sometimes this install succeeds but the application does not appear to be installed. Not sure if this is a Spotlight/FS thing or what.
Boot up at least one Vagrant box using Virtualbox to make sure it is happy. The directions are with Vagrant.
7.15 VMWare Fusion
ID: 8B59D8B4-54FD-4418-8945-AA484142BCF1
brew cask install vmware-fusion
Sometimes this fails, just like with VirtualBox. Perhaps it is a network speed thing?
License it. Boot up at least one Vagrant box using VMWare Fusion to make sure it is happy. The directions are with Vagrant.
7.16 Libre Office
ID: 076697D3-8062-466C-B417-F311FA963C7F
brew cask install libreoffice
This failed on the slow network.
Run it.
7.17 Kindle
ID: 907B99E7-1B10-437E-9211-03846B287305
brew cask install kindle
Sign in. Make sure it works. Download everything so it is there. You can see files downloaded versus avalable to be sure. Or not. The upside is reading without Internet connectivity.
7.19 Programs That Don’t Need Any Configuration
ID: 3BA23E12-77B9-4414-8498-3979897F27DD
7.19.1 Part A
ID: 882E8D8B-A25F-4074-92D3-DA75B75B4803
Remember to run these. Just do a version check or something.
brew install smlnj brew install cvs brew install bzr brew install hg brew install graphviz brew install tree brew install archey brew install figlet brew install pandoc brew install gforth brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-frei0r --with-libass --with-libvo-aacenc --with-libvorbis --with-libvpx --with-opencore-amr --with-openjpeg --with-opus --with-rtmpdump --with-schroedinger --with-speex --with-theora --with-tools --with-faac brew linkapps brew install povray --with-openexr brew linkapps
7.20 Stuff That Asks For My Password
ID: 5DEE57DD-5703-4EC9-86E2-1CC519C1B837
7.20.1 R
ID: B8D8B260-441F-4B70-8850-6C209ABDA3D1
This is the first BrewCask install where I saw a check-sum error:
==> Caveats Cask r installs files under "/usr/local". The presence of such files can cause warnings when running "brew doctor", which is considered to be a bug in homebrew-cask. ==> Satisfying dependencies complete ==> Downloading http://cran.rstudio.com/bin/macosx/R-3.1.3-mavericks.pkg ######################################################################## 100.0% ==> Note: running "brew update" may fix sha256 checksum errors Error: sha256 mismatch Expected: bd150f488c36e3d793febd3b7f619c076fc3bccfe673592af3134c32118d1c5e Actual: 28445419c73b03dd3e0e1199114e23c83e56a5140f8c43f37b63cb550dc0eba7 File: /Library/Caches/Homebrew/r-3.1.3.pkg To retry an incomplete download, remove the file above.
The software was downloaded. Its check-sum was wrong. Now what? This isn’t the end of the world. I am glad it reported it. I am not investigating the mismatch. I suspect that there is a newer release and the formula wasn’t updated. That is fine. I will delete that download and install it manually. This is a story I want to capture. Things aren’t always perfect. There are so many moving parts that this is bound to happen. Patches are usually always welcomed, too.
To handle this manual install, I read the OSX page for R. They explain that we ought to compare the check-sum of the download and show how. The current hashes are:
MD5-hash: 2f263bbb394361b5c3dd0d882d1d2e70 SHA1-hash: 200349fbcfd14b8b4769b52340164dd728c3995c (ca. 68MB)
You may see the download size in MiB via:
cd ~/Downloads
du -h R-3.1.3-mavericks.pkg
68M R-3.1.3-mavericks.pkg
You may check the check-sum via:
cd ~/Downloads
md5 R-3.1.3-mavericks.pkg
MD5 (R-3.1.3-mavericks.pkg) = 2f263bbb394361b5c3dd0d882d1d2e70
Install the software.
brew cask install r ln -s ~/git/bitbucket/alec/.Renviron ~/.Renviron ln -s ~/git/bitbucket/alec/.Rprofile ~/.Rprofile ln -s ~/git/bitbucket/alec/.Rinstall ~/.Rinstall rm -rf ~/.Rpackages mkdir ~/.Rpackages
Explain what to do with it.
I haven't used R in a long time but I want to get it set up right again.
Link my configs from ~/ into where they live now.
This installer asks for my password, which halts the install. How will I deal
with this?
There is a .Rinstall file in my setup to get all of the packages installed. Be s
sure to run that, too. All of my notes live in R.org already.
7.20.2 Vagrant
ID: 7B45D9BF-6FD5-4624-9F06-671D33D76A78
brew cask install vagrant
Install the VMWare provider for Vagrant and then license it. Remember to log appropriately. It goes something like this: #+begin_src sh vagrant plugin install vagrant-vmware-fusion mkdir ~/.vagrant cd ~/.vagrant # copy that license file in there vagrant plugin license vagrant-vmware-fusion license.lic cd rm -rf ~/.vagrant #+end_src Verify the plugin is licensed and happy: #+BEGIN_SRC sh vagrant plugin list #+END_SRC Test out VirtualBox box: #+begin_src sh cd ~/tmp mkdir vgtest cd vgtest vagrant init hashicorp/precise64 vagrant up --provider virtualbox #+end_src The first time I tried this, it failed. I restarted OSX. Then it worked. Test out VMWare. The default provider is vmware, so don't have to specify provider. #+begin_src sh cd ~/tmp/vgtest vagrant up #+end_src
- Vagrant Manager
ID: 2384B1E5-6EBB-4C43-80CE-FDD2476E40D3
brew cask install vagrant-manager
Tonight I had a surprise. Vagrant reported a failure. It was trying to copy a machine into a non-existent directory ~/.vagrant. That is where I keep the VMWare Vagrant license. That was surprising. Support has see this before when Vagrant Manager is running. I closed it and tried again and it worked fine. The value of Vagrant Manager is that it makes visible machines that you have running. Support explained that Vagrant Manager might be doing it. It was. He opened a ticket. I added to it.
- Terminal Preference: Terminal - Status Bar Icon Theme: Clean - Launch at login: Yes - Following settings: No - Refresh every: 5 seconds - Following settings: No - Allowed Updates: stable - Send anonymous profile data: Yes
8 Productivity, Manual
ID: 5BF2F31A-8713-4BE0-89E7-66AA327E070C
8.1 By Hand
ID: AB75D588-C667-4C2B-A54B-15E513EBF920
8.1.1 SAS University Edition
- 4096 MB RAM
8.1.2 OSX Enhanced Voice Dictation
ID: C8E3A6E9-16E6-4ABD-A667-0E952D38D3E4
Somehow I activated the installer for “OSX Enhanced Voice Dictation”. I said “Yes”. Found this guide and here are the steps:
- Apple
- System Preferences
- Dictation & Speech
- Dictation
- Enable
- Yes: Use Enhanced Dictation
8.1.3 Visible Body
ID: 07ADFC51-E81C-46C1-8D1F-40FB11A93BEC
- Human Anatomy Atlas
- Muscle Premium
- Skeleton Premium
8.1.4 PyCharm Professional
ID: 2DC289B4-939F-4A3F-B343-C1E86BA7E360
- No Brew Cask for this
- Download and install
- “use your JetBrains Account credentials in PyCharm to use this license”
- Import settings: I do not have any
- Allow it to accept incoming network connections
- PyCharm initial configuration
- Keymap: Emacs
- Theme: Default
- Editor colors and fonts: Default
- Enable opening files CMD: Yes
/usr/local/bin/charm
- Preferences
- Appearance & Behavior
- System Settings
- Usage Statistics
- Do send anonymous statistics: weekly
- Usage Statistics
- Appearance
- Show tool window bars
- System Settings
- Editor
- General
- Use soft wraps
- Use soft wraps in console
- Appearance
- Show line numbers
- Use block caret
- nil Caret blinking
- Colors & Fonts
- Solarized Theme: Dark
- General
- Caret: #839496
- Font
- DJSM 17
- Code Style
- Right margin column: 80
- General
- Appearance & Behavior
8.1.6 Textual IRC Client
ID: A1592C54-F939-4C7E-938C-1C13EC8A2AAF
- AppStore.
Only note changes from the current default
Set up preferences:
- Preferences.
- General.
- NO: Display MOTD
- YES: Save the state of queries
- Highlights.
- Notifications.
- Controls.
- Interface.
- Style.
- General.
- Style: nox.
- Font: DJSM 17
- Inline Media.
- YES: Show images inline
- General.
- Addons.
- Advanced.
- Default Identity.
- grettke
- grettke💤
- grettke
- Grant Rettke
- Default Identity.
Server preferences:
- Basic Settings.
- General
- YES: Recomment when server disconnects
- Messages.
- Part & Quit:
- Thompson
- Computer Sleep & Quit
- Hamming
- Part & Quit:
- Connect commands: identify
- General
- Identity
- Wait for ID before joining
8.1.7 Entropy
ID: 9EDE18B7-DDA1-4FC1-8866-256596BA54D0
This is a download and manual install.
8.1.8 Guitar Pro
ID: 36F3F9F6-31D1-4517-94F3-B7A787F2C166
Here. Sign into MySongBook.
8.1.10 Cepestral Callie & David
ID: FB2138CF-B62C-4BCB-A892-AB855A61535A
Here.
You might need to log out and in again to make the “Cepstral Voices” appear in System Preferences.
License them. Test them.
Set Dictation & Text to Speech to: Callie
8.1.11 Microsoft Office
ID: 568C1BC2-1569-4E3A-8246-594E0C889244
This is in BrewCask, but the download is waste of time. I have it locally.
I keep going back and forth on this one. Is it worth saving 15 minutes having to install it myself?
Start it. It asks for your name. It asks about updates and stuff. Get them all. Start Outlook. Enter in new license for that.
When activation occurs, the app always locks up then I quit it and it restarts after sending an error report.
Don’t let it access Contacts.
When it checks for updates, tell it to check daily.
8.1.12 MacTex & GnuPlot
ID: 4769C0C6-AA8F-4073-B233-253691004873
This is 2.4 GiB. That is not much. If you get the US mirror it is 20 minutes.
That is if you are lucky.
That makes the automated installer very slow. I just don’t like it.
I will deal with it by installing it manually here.
At this point, definitely I can build my resume here.
Once that is installed, install gnuplot:
brew install gnuplot --with-latex --with-pdflib-lite --with-tests --with-x11
Set up my TeX stuff for KOMA-script. Backup the default configuration first.
ls /usr/local/texlive/2014
sudo cp /usr/local/texlive/2014/texmf.cnf /usr/local/texlive/2014/texmf.cnf-`date '+%Y_%m_%d__%H_%M_%S'`
ls /usr/local/texlive/2014
sudo tlmgr conf texmf TEXMFHOME ~/git/bitbucket/texmf/
Check that the path is really updated.
kpsewhich KomaDefault.lco
/Users/gcr/git/bitbucket/texmf/tex/latex/KomaDefault.lco
The documents say to maybe do the following. I did it.
sudo mktexlsr
9 User Options, Manual
ID: 548170EE-5409-4DF6-96BB-B1D384FC734B
- Not really a user option, but open Keychain Access
- Preferences
- YES: Show keychain status in menu bar
- This gives you a lock-screen GUI command
9.1 Desktop & Screen Saver
ID: 996317F3-BB3B-43ED-A54B-AF469A8BBF3B
- Desktop
The automatic setting works intermittently. If it failed, set it manually. The image is here. I downloaded it, too.
cd ~/Pictures/ curl -O http://www.wisdomandwonder.com/wordpress/wp-content/uploads/2015/02/M101-ORG.jpg cd ~/
- Screen Saver
- Screen saver: Flurry. After 10 minutes.
- Hot corner
- Top left: Start screen saver
- Top right: Put display to sleep
- Bottom left: Disable screen saver
9.2 Energy Saver
ID: 51E4DE03-0ED5-4951-A772-2BB41A9CE56E
- Energy Saver, Power Adapter
- Automatic graphics switching: yes
- Turn display off after minutes: 15
- Prevent computer from sleeping automatically when the display is off: yes
- Put hard disks to sleep when possible: yes
- Wake for network access: yes
- Enable power nap when plugged in: yes
- Show battery status in menu bar: yes
9.3 Users & Groups → Login Options
ID: 83C37544-BD69-4791-8C47-5AB8CEC01330
- Automatic login: off
- Display login window as: Name and password
- Show the Sleep, Restart, and Shut Down buttons: yes
- Show input menu in login window: no
- Show password hints: no.
- Show fast user switching menu as: icon
- Use VoiceOver in the login window: no
9.4 Security & Privacy
ID: 8FC611D4-B8EA-4698-8981-E20B736F5F40
9.4.1 General
ID: 92BBCCA2-B373-4085-A69F-2F1A747D4FDC
- User: Require password _ after sleep or screen saver begins: yes, after 15 minutes
- Disable automatic login: yes
- Advanced → Require an administrator password access system-wide preferences: yes
10 Full System Backups
ID: 01B5C019-E0D3-45A1-9C36-A6B493C03DE8
Doing provisioning using Kitchenplan and Brew and BrewCask still takes at least 6 hours. You still need to perform manual steps. For me, it is unavoidable. This is painful. This is a waste of 6 hours. It is the waste of your evening. It is a waste of your weekend.
My new plan is to get the box provisioned and image it there. I want to minimize provisioning ever again. The opportunity here is that you learn new things each time. That is cool. The problem is that your goal is not to learn new things every time. It is a decision, and it needs to be thoughtfully made. This evidence is valuable. It has helped me understand my decision to work in virtuals here forward.
To image a full system:
- Note the base configuration,
01
- Get system and application updates
- Trim contents of included-folders
- Most of my stuff will never be in them anyway
- More like DropBox and Git
- Keep Git checkouts. Simpler. Update will get new stuff.
/Users/gcr/Documents
- Empty the trash
- Vagrant box definitions will exist under source control, but the individual boxes will only ever live in the storage locations configured for the provider
- Double-check that all of your Git working-copies are pushed home.
- Disk utility
- Verify disk permissions
- Logs a lot of info
- Unsure if any of it is useful
- Repair disk permissions if necessary
- At the very bottom will log “Permissions repair complete”
- Verify disk
- Repair disk if necessary
- Verify disk permissions
- For the clone exclude
/Users/gcr/Downloads
/Users/gcr/Dropbox
/Users/gcr/tmp
/Users/gcr/.vagrant.d/boxes
- Reference
- How this works is that when CCC cloned that disk image back to the machine, this directory was present, and it was empty. I was curious about whether the directory would be present or not and happy to see it was.
- After upping a box successfully, I verified that the base box was installed here as expected
/VirtualBox VMs
- VirtualBox stores its VMS here by default
- When you start making changes to a Vagrant box, they are saved here
- For example I booted up the Vagrant box from “Getting started”, created a
hello world file, logged out and halted it, and this directory was
tmp_default_1426807980079_94539
was created in there and it contained all of the .vbox stuff for that machine.- Verified that
vagrant destroy
deletes that directory
- Verified that
/Users/gcr/Documents/Virtual Machines
- http://kb.vmware.com/selfservice/search.do?cmd=displayKC&docType=kc&docTypeID=DT_KB_1_1&externalId=2056798
- This seems to be the directory where VMWare creates machines when you do so through the GUI
- When Vagrant VMWare Fusion creates machines it creates them inside of a
.vagrant
directory where the Vagrantfile lives.- The path is
<directory where the Vagrant file lives>/.vagrant/machines/default/vmware_fusion
- Found this info here and verified it on my machine
- Verified that
vagrant destroy
deletes that directory
- The path is
- Make sure that this configuration, including Kitchenplan, is tagged
- Note that tag here:
- Machine name
- Built from image
- Provisioning Tag
- Timestamp
- c02M-01-v1.7-2015-03-17T18:58:40-0500
- On successful creation of the new image
- Erase the machine and clone the new image to it
- Address any image restoration issues now
- Backup this new image to Stargate
- Copy the Dropbox folder
- Erase the machine and clone the new image to it


This is a tool to count cells on a hemocytometer. Please select your parameters and choose files to upload. It uses the TrackPy particle tracking library's 'locate' function. Here is a test image.
If you want me to add a default value button for you, just let me know!


html
css
javascript
bootstrap
jQuery
angular js
india
usa
pakistan
australia
newzeland
this is div
this is div1
this is div2
this is div3
this is div4
click me


Form focus effects.
evo-form-focus
<input type="text" name="text" placeholder="Placeholder Text" class="evo-form evo-form-padding evo-form-box evo-form-focus" /> Label
Create an <input> tag and apply the evo-form-focus class to it. Place a  tag below it (not above). Demo classes end with -demo such as evo-form-focus-demo. Default form styles are set in _evo_variables.scss.
<input>

evo-form-focus-demo
evo-form-focus-inverse
<input type="text" name="text" placeholder="Placeholder Text" class="evo-form-inverse evo-form-padding evo-form-box evo-form-focus-inverse" /> Label
Create an <input> tag and apply the evo-form-focus-inverse class to it. Place a  tag below it (not above). Demo classes end with -demo such as evo-form-focus-inverse-demo. Default form styles are set in _evo_variables.scss.
evo-form-focus-inverse-demo
form-focus-color
<input type="text" name="text" placeholder="Placeholder Text" class="evo-form evo-form-padding evo-form-box form-focus-color" /> Label
Create an <input> tag and apply the form-focus-color class to it. Place a  tag below it (not above). Demo classes end with -demo such as form-focus-color-demo. Default form styles are set in _evo_variables.scss.
form-focus-color-demo
form-focus-info
form-focus-success
form-focus-warning
form-focus-danger
<input type="text" name="text" placeholder="Placeholder Text" class="evo-form-inverse evo-form-padding evo-form-box form-focus-info" /> Label
Create an <input> tag and apply a form-focus-[status] class to it. Place a  tag below it (not above). Demo classes end with -demo such as form-focus-[status]-demo.
form-focus-[status]
form-focus-[status]-demo
form-focus-black
form-focus-gray-dark
form-focus-gray
form-focus-gray-light
form-focus-white
<input type="text" name="text" placeholder="Placeholder Text" class="evo-form-inverse evo-form-padding evo-form-box form-focus-white" /> Label
Create an <input> tag and apply a form-focus-[color] class to it. Place a  tag below it (not above). Demo classes end with -demo such as form-focus-[color]-demo.
form-focus-[color]
form-focus-[color]-demo
<input type="text" name="text" placeholder="Placeholder Text" class="evo-form evo-form-padding evo-box form-focus-danger" /> Label


Colored text display given values with specified color, and a url can be added.
Variables:
result
The measure result object, which takes below properties:
result.getValue(): the measure result.
result.getItems(): the list of data items which are used during measure evaluation.


Imagine there's no heaven. It's easy if you try. No
below us. Above us only sky.
Imagine all the people living for
.
Imagine there's no countries. It isn't hard to do.  And no religion too.
all the
people living life in peace.
You may say I'm a dreamer.
But I'm not the only one. I hope someday you'll join us.
And the
will be as
one...


{% load static %} {% load widget_tweaks %}
My story begins back when I was a kid. Like other kids, I had a soft spot for superheroes. My icon was Iron Man. I had the dream of one day changing the world like he does. While most kids out-grow the superhero complex,
I could not.
Throughout the (now) two decades of my life, I have lived searching for and identifying matters that I can fix; to make this world a better place. That is how my passion for technology came to grow.
I am curious about a lot of things, how the universe works and why things are the way they are. Most importantly, what needs to be done to get as close as possible to having a perfect world.
I am currently pursuing Bachelor's of Science in Information Technology at Zetech
University
focusing on Data Science and Machine Learning. I'm also quite experienced in
Software
Development and Web
Technologies.
After graduating, I am hoping to follow my interest in machine leanring to find my way (back) to
the realm
of
engineering.
Here are some of my personal projects!
{% for project in projects %}"Show me what you can do; don't tell me what you can do." –John Wooden
{{project.description}}
{% if project.source %} Source Code {% endif %} {% if project.deploy %} Deployed here {% endif %}You can contact me directly via email or call.
<EMAIL_ADDRESS>+254 706 659609
Or you could leave me a message in this little form down here!


Othawesome
{{isBlackPlayersTurn ? 'Black Players Turn' : 'White Players Turn'}}
B
score:
{{blackPlayer.score}}
discs:
{{blackPlayer.discs}}
score:
{{whitePlayer.score}}
discs:
{{whitePlayer.discs}}
W
new game
human
computer


Development by @rdadwww.whiteflashwhitehit.com
Powered by WebGLThree.jsPP.js
Image credits: onformative
Thanks to MrDoob
This demo is a part of Fly over England


THIS DOCUMENT IS IN PROGRESS. THIS PARAGRAPH SHALL BE REMOVED WHEN THIS DOCUMENT IS DONE.
Philosophically, Koa aims to "fix and replace node", whereas Express "augments node".
Koa uses promises and async functions to rid apps of callback hell and simplify error handling.
It exposes its own ctx.request
and ctx.response
objects instead of node's req
and res
objects.
Express, on the other hand, augments node's req
and res
objects with additional properties and methods
and includes many other "framework" features, such as routing and templating, which Koa does not.
Thus, Koa can be viewed as an abstraction of node.js's http
modules, where as Express is an application framework for node.js.
| Feature | Koa | Express | Connect |
|---|---|---|---|
| Middleware Kernel | ✓ | ✓ | ✓ |
| Routing | ✓ | ||
| Templating | ✓ | ||
| Sending Files | ✓ | ||
| JSONP | ✓ |
Thus, if you'd like to be closer to node.js and traditional node.js-style coding, you probably want to stick to Connect/Express or similar frameworks. If you want to get rid of callbacks, use Koa.
As result of this different philosophy is that traditional node.js "middleware", i.e. functions of the form (req, res, next)
, are incompatible with Koa. Your application will essentially have to be rewritten from the ground, up.
It's more like Connect, but a lot of the Express goodies were moved to the middleware level in Koa to help form a stronger foundation. This makes middleware more enjoyable and less error-prone to write, for the entire stack, not just the end application code.
Typically many middleware would re-implement similar features, or even worse incorrectly implement them, when features like signed cookie secrets among others are typically application-specific, not middleware specific.
No, just a different take on similar functionality now that generators allow us to write code with less callbacks. Connect is equally capable, and some may still prefer it, it's up to what you prefer.
Koa is a pretty large departure from what people know about Express, the design is fundamentally much different, so the migration from Express 3.0 to this Express 4.0 would effectively mean rewriting the entire application, so we thought it would be more appropriate to create a new library.
No callback hell.
Better error handling through try/catch.
No need for domains.
Unlike both Connect and Express, Koa does not include any middleware.
Unlike Express, routing is not provided.
Unlike Express, many convenience utilities are not provided. For example, sending files.
Koa is more modular.
For example, instead of a "body parsing" middleware, you would instead use a body parsing function.
Less hackery.
Better user experience.
Proper stream handling.
Since Express comes with its own routing, but Koa does not have any in-built routing, but there are third party libraries available koa-router and koa-route for routing. Similarly just like we have helmet for security in Express, for Koa we have koa-helmet available and the list goes on for Koa third party available libraries.


--- layout: post title: "Quora Insincere Question Classification Challenge" subtitle: "Kaggle NLP Competition" date: 2019-2-10 background: '/img/posts/quora.jpg' ---
An existential problem for any major website today is how to handle toxic and divisive content. Quora wants to tackle this problem head-on to keep their platform a place where users can feel safe sharing their knowledge with the world. On Quora, people can ask questions and connect with others who contribute unique insights and quality answers. A key challenge is to weed out insincere questions -- those founded upon false premises, or that intend to make a statement rather than look for helpful answers. In this Kaggle competition, Quora challenges data scientist to build models to identify and flag insincere questions. This will help quora in developing more scalable machine learning based methods apart from manual review to detect toxic and misleading content. Moreover it will help Quora in upholding their policy of “Be Nice, Be Respectful” and continue to be a place for sharing and growing the world’s knowledge.
An insincere question is defined as a question intended to make a statement rather than look for helpful answers. Some characteristics that can signify that a question is insincere:
This was a kernel only competition, therefore the entire solution right from preprocessing to training deep learning models had to be done under 2 hours runtime of kaggle kernel , otherwise the team was disqualified. The official site of competition containing competition details: Kaggle-Quora
The competition was challenging in terms of finding correlated local validation, running the solution in 2 hours, and producing reproducible results, to name a few. We found a nearly correlated validation set before 1 week of the competition end. We used simple averaging where each trained NN model (Pytorch) was different either in terms of learning rate, pre-processing, embedding or architecture to maintain model diversity. One important thing we realised was: given small learning rate and large number of epochs, single FastText embedding based models were beating our glove+paragram models. So we focused on tuning FastText based models which could provide considerable score within 5-6 epochs. We also added Gaussian Noise to some models after embeddings to reduce the overdependence of RNN on specific keywords.
This was my first kaggle competition. It wouldn’t have been possible to compete without my awesome teammates, Soham and Rahul, who put in lot of effort and made this competition a great learning experience.
We ranked 33rd out of 4037 teams and achieved a Silver medal with final F1-score of 0.70658 on test set. I entered about 1 month late in this competition, leaving me only about 1 and a half month for developing the solution. Being my first competition, I learnt a lot of stuff including: the pytorch framework, effect of random initilization, reproducibility of models, new machine learning learning techniques like ensembling to name a few! Truly Kaggle is a place where one can use all of their innovative ideas to compete with the best techniques possible :)
GitHub repo: https://github.com/soham97/Quora-Insincere-Questions-Classification-Challenge-NLP


My addresses
Please configure your default billing and delivery addresses when placing an order. You may also add additional addresses, which can be useful for sending gifts or receiving an order at your office.
Your addresses are listed below.
Be sure to update your personal information if it has changed.
My Address
- Tanim Ahmed
- TanimDesign & Development
- Gulshan 2 , Road 50, House FO12EO
- Dhaka, Bangladesh
- Mobile :<PHONE_NUMBER>2
- Phone : 020904 - 85882
My Address 2
- Tanim Ahmed
- TanimDesign & Development
- Gulshan 2 , Road 50, House FO12EO
- Dhaka, Bangladesh
- Mobile :<PHONE_NUMBER>2
- Phone : 020904 - 85882
My Address 3
- Tanim Ahmed
- TanimDesign & Development
- Gulshan 2 , Road 50, House FO12EO
- Dhaka, Bangladesh
- Mobile :<PHONE_NUMBER>2
- Phone : 020904 - 85882


Loading song...
Example of the standalone BassoonTracker playback routine, playing a module file without the tracker interface.
Hit the "play" button above to start the playback.
Just include the "bassoonplayer-min.js" file and you're good to go.
The most simple example would be:
The second parameter in BassoonTracker.load defines autoplay.
Please note that most modern browser disable audio playback until a user action, so you may need a "play" button to initiate playback.
You can use a third parameter as callback function when the loading of the file is done.
The complete playback library is 22 kb zipped or 65 kb uncompressed.
After BassoonTracker.init you might want to check "Audio.context" to see if the browser supports WebAudio.
Some usefull methods:
BassoonTracker.togglePlay()
BassoonTracker.isPlaying()
BassoonTracker.playSong()
BassoonTracker.stop()
BassoonTracker.getTrackCount()
BassoonTracker.getSong()
(gets the current song)
BassoonTracker.getSong().title
BassoonTracker.getSong().length
(in patterns)
The playback itself is scheduled in WebAudio and completely detached from the main JS thread.
Therefore there are no direct events to indicated playback progress.
If you want to display some UI with a progress indicator you will have to keep track of the start time of the song (Audio.context.currentTime)
and call
BassoonTracker.getStateAtTime(time)
periodically
(or
BassoonTracker.getTimeStates()
to get the complete list).
Note that the Tracker schedules audio ahead, so the last item in the BassoonTracker.getTimeStates() list will be in the future.
Refer
to this example with progress tracking for a demo.
If you want to adjust to volume, you can use
BassoonTracker.audio.masterVolume
which is a WebAudio GainNode.


Everything is Awesome
The Builders' Blocks Details
Show All Legos
Show Red Legos
Show Green Legos
Sort By Year
All Materials
Solid
Transparent
Pearl
Chrome
Metallic
Milky
Glitter
Speckle
Ink
Process
Modulex
Search by LegoID:
Search!
Reset!


Can you tell us something original and surprising about biodiversity in Australia? The Australian region has a large number of species that occur nowhere else in the world. In Australia, there are regions with many unique species. Where are these regions? Do lyrebirds and gang gang cockatoos occur in the same area?
The data
The Atlas of Living Australia hosts a vast array of curated data collected on living organisms across the country (and beyond). For example, there is 7.7Gb of plant data, 1.3Gb on birds, 800Mb about mammals, 500Mb on reptiles, fish and also molluscs. Live sighting data is provided by researchers and citizen scientists, historical records are provided from academic, museum and herbaria collections, and over 500 environmental spatial layers are provided by dozens of national and international agencies.
The challenge
The aim of the data challenge is to inform us about biodiversity in Australia, and find exotic patterns. Participants are encouraged to use graphics to convey their findings, and report the methods used to learn about the data. The final product should tell a story about the data, in the form of a paper, or electronic, poster. Building of web apps (e.g. shiny) for communicating the findings is also encouraged.
Entries can focus on any aspect of the data, and here are a few ideas to get you started:
- What are the common species to see around Brisbane?
- Are data observations spatially biased?
- How well do Australia’s reserves and parks conserve species groups such as reptiles or mammals?
- Have new species been identified evenly over time?
- Can communities of species be detected (are there species that seem to occur in the same area)?
- Have groups of organisms such as birds been shifting spatially over time?
- Are data collection areas concentrated on popular locations?
- Are there any systematic differences between observations from citizen scientists and the research community?
Prizes
The challenge is open to anyone who is registered for the conference, particularly students. We encourage you to form a small team, of up to five members. A total of $1000 will be available as prize money, most likely $500 for first prize, $300 for second and $200 for third.
Important dates
- Jun 10: Notification of intention to enter competition, so that we can plan the programme session. Complete the entry form.
- Jul 11-13: Display submission in special session at useR! 2018. Judging and awards to be done at the conference.
Useful resources
ALA4R is an R interface, where collections can be pulled based on common names like “red kangaroo”.
The web site also has:
- A complete listing by category of the web services for the ALA, including other APIs.
- User guides are available on the education page.
- The spatial portal has several case studies of using the portal, access to spatial layers describing the environment.
- A technical overview of how the ALA processes and manages data quality issues, at (https://www.ala.org.au/uncategorised/data-processing/) and (https://www.ala.org.au/who-we-are/how-we-integrate-data/data-quality-assurance/).


This parameter measures the degree of preferred orientation of a fabric. Values are between 0% (complete random distribution) and 100% (ideal parallel Orientation).
R = Vector sum n= number of data


| DOSE: T+ 0:00 |
3 mg |
oral |
2C-T-FM |
(powder / crystals) |
| T+ 1:25 |
3.5 mg |
oral |
2C-T-FM |
(powder / crystals) |
| T+ 9:45 |
|
oral |
Pharms - Diazepam |
(pill / tablet) |
| T+ 9:45 |
|
oral |
Codeine |
(pill / tablet) |
| T+ 9:45 |
|
oral |
Cannabis |
(plant material) |
Set – Not perfect but I’ve had worse. An hours sleep the night before makes me feel sleepy
Setting – My House, kids due in from school – busy household – I’m used to it
T+0.00 – Drink 3mgs of dissolved drug
T+ 0.10 Faint perceptual changes, continue reading my book.
T+ 0.20 Give up on reading as I can’t follow the narrative, watch my dogs play fighting, grab a quilt & lie underneath it on the settee, start to feel warm yet shivery, this is a fairly standard physical effect I get from a 2Cxx.
T+0.50 Feels warm & relaxed, introspective – then again I’m alone with two dogs for company so intellectual discourse is out of the question.
 I toy with the idea of not answering the phone – however I do my duty and confirm that I’m alive.
T+01.10 I make a ham, mayo & pease pudding sandwich then eat it – delicious – so much so I make another. I have a noticeable tingling up my spine & the nape of my neck. This is feeling quite luxurious now. No visual effect to speak of it just feels good. I consider redosing; I consider for about 5 seconds then decide.
T+01.25 - Take another dose of 3.5 mgs in orange juice.
T+ 01.50 – My kids come in from school – I orient my mind & begin giving standard instructions such as “uniform in the wash” – “take the dogs out” – “put your bait box in the sink for washing” – “do any homework you have”. My vision is becoming noticeably blurred as the second dose kicks in. Brief CEVs of women – very realistic - like flash frames.
I’m still perfectly able to carry on conversations so long as I feign tiredness when a I feel there’s a slight lag in mental processing before I respond.
I find myself in a dreamlike state & retire upstairs to have a bath – the timekeeping breaks down from this point as I got into what I was doing which was more interesting than writing stuff down..
There’s a definite aphrodisiac quality to the drug – not in the same league as 2CE but definitely present. I coax my wife upstairs & we spend a while in bed. Orgasms achieved x2 – who knows if there wasn’t other activities going on (kids in & out of the house dogs barking etc) how that might play out.
My wife tells me there is marked pupil dilation.
At one point I get a feeling of anxiety – it lasts seconds & is dispelled by a unique sense of wellbeing that seems to emanate from the ether – like a superpowers pick me up.
I begin to drift, my mind wanders, there are inferences of mind movie type visuals which don’t quite materialise, hopefully some of you will understand this interim state.
I find myself a little more clumsy than usual, dropping a couple of things getting entangled in my clothes as I get dressed to go out.
We set off into the foggy night – my wife driving – myself sitting with my eyes closed – just concentrating on feeling calm – which works rather well.
I think I’ve probably overshot the mark for going out maybe 4mgs would have been better suited as my concentration on external things is difficult to maintain.
Anyway we watch the band.
T+ 7.45 I suddenly come to life the internalising seems to vanish quite quickly & I find I’m up dancing & having a great time & the show ends too soon for my liking.
I find I’m fired up in a low key way (I have a tendency to get very fired up & overly positive at times) & I talk most of the way home & chat with three of my kids when we get in, I find myself play fighting with my youngest son.
T+8.45 Eat donner kebabs – they taste foul but so moreish – I imagine that cannibalism has a similar effect – you take a bite & think “yeuch” yet are compelled by some strange force ( AKA greed) to eat more.
T+ 9.45 – The children are despatched to bed, my older son leaves & goes to his house & we eat a couple of diazepam, some codeine & smoke some dope – which puts my on my back in short order.
T+ God knows when – I fell asleep
Overall a very positive feeling from the drug, at some points I felt lovely/ laid back blissful, there was some mild confusion at times, though this could have been due to sleepiness & the fact I tend to get confused anyway. I enjoyed it. I shall sample it again in a single higher dose next time and hopefully in a better mindset.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


[1]
exceptionally efficient system to get from jnb to lhr.
[2]
hotel rep to pay '' - you will have to lhr.


Registration
Error!
First name
Last name
Email address
Telephone
Password
Confirm password
Address
Login Page
Forgot Password?


Thank You! Your message has been sent successfully.
Punarnava Ecological Services and Eco-design Solutions


You did it! Nginx is running using
Celebrate this achievement with us at
github.com/wasmerio/wasmer
! 😊


You don't make a movie, the movie makes you. - Jean-Luc Godard
Choose a mood that you are in and we will give you a list of movie suggestions along with a snack that you can enjoy!
Here are our suggestions for movies based on your mood.
Thomas Anderson, a computer programmer, is led to fight an underground war against powerful computers who have constructed his entire reality with a system called the Matrix.
Search at Rotten TomatoesAfter Thanos, an intergalactic warlord, disintegrates half of the universe, the Avengers must reunite and assemble again to reinvigorate their trounced allies and restore balance.
Search at Rotten TomatoesThis will definitely enhance a good mood or fend off a bad one.
  We are also open to more sponsors! Let's Uber Eats
Let's Uber EatPoutine is a dish that includes french fries and cheese curds topped with a brown gravy. It originated in the Canadian province of Quebec and emerged in the late 1950s in the Centre-du-Québec area. It has long been associated with Quebec cuisine.
Search More ImageHi!
We are Team Coding aka Team C.Do you have any questions or want you accelate your business? Please do not hesitate to contact us directly. Our team will come back to you within as soon as possible to help you.


| predict.glm {stats} | R Documentation |
Obtains predictions and optionally estimates standard errors of those predictions from a fitted generalized linear model object.
## S3 method for class 'glm' predict(object, newdata = NULL, type = c("link", "response", "terms"), se.fit = FALSE, dispersion = NULL, terms = NULL, na.action = na.pass, ...)
object |
a fitted object of class inheriting from |
newdata |
optionally, a data frame in which to look for variables with which to predict. If omitted, the fitted linear predictors are used. |
type |
the type of prediction required. The default is on the
scale of the linear predictors; the alternative The value of this argument can be abbreviated. |
se.fit |
logical switch indicating if standard errors are required. |
dispersion |
the dispersion of the GLM fit to be assumed in
computing the standard errors. If omitted, that returned by
|
terms |
with |
na.action |
function determining what should be done with missing
values in |
... |
further arguments passed to or from other methods. |
If newdata
is omitted the predictions are based on the data
used for the fit. In that case how cases with missing values in the
original fit is determined by the na.action
argument of that
fit. If na.action = na.omit
omitted cases will not appear in
the residuals, whereas if na.action = na.exclude
they will
appear (in predictions and standard errors), with residual value
NA
. See also napredict
.
If se.fit = FALSE
, a vector or matrix of predictions.
For type = "terms"
this is a matrix with a column per term, and
may have an attribute "constant"
.
If se.fit = TRUE
, a list with components
fit |
Predictions, as for |
se.fit |
Estimated standard errors. |
residual.scale |
A scalar giving the square root of the dispersion used in computing the standard errors. |
Variables are first looked for in newdata
and then searched for
in the usual way (which will include the environment of the formula
used in the fit). A warning will be given if the
variables found are not of the same length as those in newdata
if it was supplied.
require(graphics) ## example from Venables and Ripley (2002, pp. 190-2.) ldose <- rep(0:5, 2) numdead <- c(1, 4, 9, 13, 18, 20, 0, 2, 6, 10, 12, 16) sex <- factor(rep(c("M", "F"), c(6, 6))) SF <- cbind(numdead, numalive = 20-numdead) budworm.lg <- glm(SF ~ sex*ldose, family = binomial) summary(budworm.lg) plot(c(1,32), c(0,1), type = "n", xlab = "dose", ylab = "prob", log = "x") text(2^ldose, numdead/20, as.character(sex)) ld <- seq(0, 5, 0.1) lines(2^ld, predict(budworm.lg, data.frame(ldose = ld, sex = factor(rep("M", length(ld)), levels = levels(sex))), type = "response")) lines(2^ld, predict(budworm.lg, data.frame(ldose = ld, sex = factor(rep("F", length(ld)), levels = levels(sex))), type = "response"))


CheckStyle Audit
Designed for use with
CheckStyle
and
Ant
.
Summary
Files
Errors
1
0
Files
Name
Errors
/Users/greg/demos/airflow-dcos-package/dcos-commons/frameworks/airflow/src/main/java/com/mesosphere/sdk/airflow/scheduler/Main.java
0
File /Users/greg/demos/airflow-dcos-package/dcos-commons/frameworks/airflow/src/main/java/com/mesosphere/sdk/airflow/scheduler/Main.java
Error Description
Line
Back to top


This is the file that sets up the server and is to be run in nodejs
When the server is started the first song from the library will be playing this song will be chosen at random
All votes are set to 0 when the server is started
Every user has only one unique ID when voting
Assumptions:
Members
(inner) choices :String
This variable picks the song to be played, this is also an Envoirnmental Variable because it changes the song that is currently being played
Type:
- String
(inner) music :array
array of song paths
Type:
- array
(inner) musicPath :String
path of the music folder
Defaults to ./music, but can be changed with the -d flag
Defaults to ./music, but can be changed with the -d flag
Type:
- String
(inner) options :args.options
variable that dictates command line arguments
Type:
- args.options
(inner) port :int
port that the server runs on
Type:
- int
(inner) users :int
how many unique users have connected to this server
Type:
- int
(inner) verbose :boolean
determines if verbose logging is enabled
Type:
- boolean
(inner) voterData :Array
holds the amount of votes per song
Type:
- Array
Methods
(inner) done()
when a song is finished the function is called
calls function to call the tallyvote method and resets the votes
(inner) generateNewID() → {number}
This is a function that generates a unique user ID for every new user
Returns:
users - Returns the user plus one
- Type
- number
(inner) get(/, req, res)
Default routing function - returns the home page
Parameters:
| Name | Type | Description |
|---|---|---|
/ |
String | Endpoint |
req |
HTML Request object | |
res |
HTML Response object |
(inner) getVoteData(done) → {array}
Compile the vote data to be sent to the web clients
Parameters:
| Name | Type | Description |
|---|---|---|
done |
function | callback function |
Returns:
Vote data of the form:
[
{ id, song }
]
id: string
song: string
[
{ id, song }
]
id: string
song: string
- Type
- array
(inner) on(connection, callback(socket))
Function called when the server first runs and socket.io is prepared.
Contains function definitions for websocket event handlers
Contains function definitions for websocket event handlers
Parameters:
| Name | Type | Description |
|---|---|---|
connection |
String | |
callback(socket) |
function | callback function |
(inner) on(connect-request, callback(data))
Function called when a user connects to the server's websocket
Parameters:
| Name | Type | Description |
|---|---|---|
connect-request |
String | |
callback(data) |
function | callback function data: ID cookie from the user's browser (if any) |
(inner) on(vote, callback(data))
A user has voted for a song.
Parameters:
| Name | Type | Description |
|---|---|---|
vote |
String | |
callback(data) |
function | callback function data: name of item that the user voted for |
(inner) on(error, callback)
Re-route error handling
Parameters:
| Name | Type | Description |
|---|---|---|
error |
String | error |
callback |
callback | callback function |
(inner) tallyVotes() → {String}
This function gets all the votes for every song and selects the song with the highest votes then resets the vote count to zero.
Then it gets the title of the song with the most votes and returns that value
Returns:
maxsong Returns the title of the song
- Type
- String
(inner) updateMetaData(done)
Updates the metadata for the new song choices
Parameters:
| Name | Type | Description |
|---|---|---|
done |
callback | callback function |
(inner) use(/public, (express))
Serves a folder with public resources that clients can request
Parameters:
| Name | Type | Description |
|---|---|---|
/public |
String | Endpoint |
(express) |
this for the express library for static files like home.js |


Blond Bombshell Veronica Bielik Flaunts Bikini Body While Soaking Up The Sun In The Maldives
November 18, 2019
Blond Bombshell Veronica Bielik Flaunts Bikini Body While Soaking Up The Sun In The Maldives
Instagram sensation Veronica Bielik took to Instagram to show off her incredible curves in a skimpy bikini while vacationing in the Maldives.
The beauty’s latest update, which consisted of three snaps, showed her standing on a beach somewhere in the tropical location with turquoise water and blue sky in the background.
The beauty wore a dusty rose bikini that left little to the imagination. The top featured a triangle design that put plenty of her voluptuous chest on display.
The two first snaps in the upload showed Veronica from behind, making her perky derrière the main focal point of the photos. But the pictures also showed off her shapely back and slender waist. One shot captured the beauty looking ahead as water splashed around her ankles. The second picture caught her as she smiled at something off to the side, showing part of her pretty face.
The third picture in the group showed Veronica from the front, giving her fans a nice look at her fabulous figure, as well as her cute bikini. She stood with her arms back, flaunting her chest as she flashed a smile for the camera. In a pose that put one foot forward, Veronica also showed off her curvy hips and flat abs.
The beauty’s hair was wet, and she looked to be wearing a light application of makeup — if any at all. She kept her accessories to a pair of stud earrings.
In the caption, Veronica wished her followers a nice week before asking them which photo they preferred. Some of her fans had a favorite, but others had a hard time trying to decide.
“You’re killing it in all of them! But probably 3,” wrote one admirer.
Loading...
“Good lord!! The only thing that could make that scene perfect is – pretty much nothing!” joked a second follower.
“Perfect shape looking gorgeous beautiful princess,” said a third fan.

It’s not unusual for Veronica to take her fans’ breath away. Her Instagram page shows just how stunning she is in just about everything she wears. She definitely knows how to rock a skimpy bikini, but she models a variety of clothing that ranges from revealing dresses and figure-hugging active wear — all of which showcase her enviable curves.


Build system
XLS uses the Bazel build system for itself and all its dependencies. Bazel is an easy to configure and use, and has powerful extension facilities. (It's also well-documented!) XLS provides a number of Starlark rules and macros to define a build flow.
Rules
Below is a brief summary of the public rules. An extensive description of the rules is available at xls/build_rules/xls_build_defs.bzl. Examples using the rules are found at xls/build_rules/tests/BUILD.
xls_dslx_library
A build rule that parses and type checks DSLX source files.
xls_dslx_module_library
A build rule that parses and type checks a DSLX source file. The rule is the gateway to other translation rules such as xls_dslx_ir and xls_dslx_verilog.
Currently, the DSLX executables (interpreter and converter) require a 'main source file' to perform evaluation and conversion. As a result, the xls_dslx_module_library was introduced that includes an entry to indicate the 'main source file'.
This rule is an interim solution. When the DSLX executables (interpreter and converter) are updated where the 'main source file' is not required, the xls_dslx_module_library can be removed.
xls_dslx_test
A test rule that executes the tests and quick checks of a DSLX source file.
xls_dslx_ir
A build rule that converts a DSLX source file to an IR file.
xls_benchmark_ir
An execution rule that executes the benchmark tool on an IR file.
xls_ir_equivalence_test
A test rule that executes the equivalence tool on two IR files.
xls_eval_ir_test
A test rule that executes the IR interpreter on an IR file.
xls_ir_opt_ir
A build rule that optimizes an IR file.
xls_ir_verilog
A build rule that generates a Verilog file from an IR file.
xls_ir_jit_wrapper
A build rule that generates the sources for JIT invocation wrappers.
xls_dslx_verilog
A build rule that generates a Verilog file from a DSLX source file. The rule
executes the xls_dslx_ir
, xls_ir_opt_ir
and xls_ir_verilog
rules in that
order.
xls_dslx_opt_ir
A build rule that generates an optimized IR file from a DSLX source file. The
rule executes the xls_dslx_ir
and xls_ir_opt_ir
rules in that order.
xls_dslx_opt_ir_test
A test rule that executes the commands in the order presented in the list for the following rules:
1. xls_dslx_test
2. xls_ir_equivalence_test
3. xls_eval_ir_test
4. xls_benchmark_ir
Macros
Below is a brief summary of the public macros. An extensive description of the macros is available at xls/build_rules/xls_build_defs.bzl. Examples using the macros are found at xls/build_rules/tests/BUILD.
get_mangled_ir_symbol
Returns the mangled IR symbol for the module/function combination.
cc_xls_ir_jit_wrapper
The macro generates sources files (.cc and .h) using the xls_ir_jit_wrapper rule. The source files are the input to a cc_library target with the same name as this macro.
xls_ir_verilog_macro
The macro instantiates the 'xls_ir_verilog' rule and 'enable_generated_file_wrapper' function. The generated files of the rule are listed in the outs attribute of the rule. These generated files can be referenced in other rules.
xls_dslx_verilog_macro
The macro instantiates the 'xls_dslx_verilog' rule and 'enable_generated_file_wrapper' function. The generated files of the rule are listed in the outs attribute of the rule. These generated files can be referenced in other rules.
Bazel queries
Understanding the build tree for a new project can be difficult, but fortunately
Bazel provides a
powerful query mechanism.
bazel query
enables a user to examine build targets, dependencies between
them, and much more. A few usage examples are provided here, but the full
documentation (linked above) is comprehensive.
Finding transitive dependencies
To understand why, for example, the combinational verilog generator depends on the ABSL container algorithm library, one could run:
$ bazel query 'somepath(//xls/codegen:combinational_generator, @com_google_absl//absl/algorithm:container)'
//xls/codegen:combinational_generator
//xls/codegen:vast
@com_google_absl//absl/algorithm:container
This result shows that one such path goes through the :vast
target. Another
such path goes through the xls/ir:ir target, then the xls/ir:value target.
somepath
provides some path, not all paths (that's what allpaths
is for).
Finding dependees ("reverse dependencies")
Sometimes it's useful to identify the set of targets depending on some other
target - the rdeps
query performs this:
$ bazel query 'rdeps(//xls/codegen:all, //xls/codegen:combinational_generator)'
//xls/codegen:flattening_test
//xls/ir:ir_test_base
//xls/codegen:combinational_generator_test
//xls/codegen:combinational_generator
This shows the transitive closure of all dependencies of the combinational
generator, with the starting set being all targets in //xls/codegen:all
. This
set of dependees can quickly grow to be unmanageable, so keep the initial set
(the first argument) as small as possible, and consider specifying a third
argument for maximum search depth.


Class: Wesabe::Account
- Wesabe::BaseModel
- Wesabe::Account
Attributes
Instance Attributes
| balance | [RW] | public |
This account’s balance or nil if the account is a cash account. |
|---|---|---|---|
| currency | [RW] | public |
This account’s currency. |
| financial_institution | [RW] | public |
The financial institution this account is held at. |
| id | [RW] | public |
The user-scoped account id, used to identify the account in URLs. |
| name | [RW] | public |
The user-provided account name ("Bank of America - Checking"). |
Constructor Summary
public
initialize
{|account| ... }
Initializes a Wesabe::Account and yields itself.
[View source]
17 18 19 |
# File 'lib/wesabe/account.rb', line 17 def initialize yield self if block_given? end |
Public Visibility
Public Class Method Summary
| from_xml(xml) |
Returns a Wesabe::Account generated from Wesabe’s API XML. Returns: Wesabe::Account |
|---|
Public Class Method Details
from_xml
Returns a Wesabe::Account generated from Wesabe’s API XML.
[View source]
28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/wesabe/account.rb', line 28 def self.from_xml(xml) new do |account| account.id = xml.at("id").inner_text.to_i account.name = xml.at("name").inner_text balance = xml.at("current-balance") account.balance = balance.inner_text.to_f if balance account.currency = Wesabe::Currency.from_xml(xml.at("currency")) fi = xml.at("financial-institution") account.financial_institution = Wesabe::FinancialInstitution.from_xml(fi) if fi end end |
Public Instance Method Details
inspect
public
inspect
[View source]
40 41 42 |
# File 'lib/wesabe/account.rb', line 40 def inspect inspect_these :id, :name, :balance, :financial_institution, :currency end |


The Big Red One (1980)
Grade: 42
It is World War I, and an American soldier (Lee Marvin) stabs and kills a German soldier who is trying to surrender. He later learns that the war has ended, and that he realizes that he has committed a murder.
Flash forward to World War II. Marvin leads a platoon of soldiers on various missions in North Africa, Italy, France and Europe as they fight the hated Germans. His platoon has a low survival rate since they do such heavy front-line fighting. Only four soldiers survive mission after mission. Vinci (Bobby DiCicco) is a conceited, cigar smoking, Italian-American writer. Another is cartoonist Griff (Mark Hamill), who must confront his fear of combat with every mission. The other two soldiers aren't that interesting and aren't worth describing.
Mark Hamill hit the jackpot with the Star Wars movies, but hasn't been seen much elsewhere. This is his only other big budget film that I have seen. And his is just a supporting role.
The title of the movie comes from a patch that the soldiers wear, with a large "1" inside of it, representing their division.
Attempts at black humor don't work here. A hopelessly nervous soldier steps on a mine and is badly hurt. Marvin finds one of his balls, and reassures the soldier that he still has another one. Ha ha.
Another scene that doesn't work has a soldier annoying Vinci, who responds by putting his rifle barrel in the pest's mouth, threatening to kill him. This occurs in full view of a hundred other soldiers, and there are no repercussions from this incredible lapse of discipline.
Marvin is injured in battle, and ends up in an enemy-held hospital. The hospital is liberated, and Marvin leaves it dressed up as Arab. He goes looking for his division. This scene is supposed to be funny, but it doesn't work either.
Another curious episode has a German division playing dead, allowing Marvin and company to walk over them and poke them. The Germans are setting a trap, but they all end up massacred. Except for a German soldier who shown hiding behind a huge wooden cross. He is shown several times, but he doesn't do much of anything, and later runs away.
Germans have set up a base at an insane asylum, which must be taken by the Americans.   The director is trying to show the irony of people killing each other in times of war, and labelling it as sane, but the meaning falls flat.
While searching rooms for Germans, Hamill finds one. Both have rifles pointed at the other. Hamill fires first, and then slowly fires shell after shell at the unfortunate dead German. Marvin stops by after a few dozen shots, sees whats up, pats Hamill on the back and goes on. Hamill continues to slowly waste ammunition for a while longer. Perhaps this is meant to represent Hamill's overcoming his cowardice. Whatever.
 He gives the kid food, and the kid puts on Marvin's helmet. The kid seems to be in fair shape, but while Marvin is carting him around on his back, the child suddenly dies. Marvin carries him for another half hour, then buries him. While doing so, he meets a surrendering German soldier, and stabs him. The German collapses. Soldiers from his division meet him and have news: the war has ended. Marvin has repeated his crime from the first world war.
http://members.tripod.com/~Brian_Koller/movies.html
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


Check Status
This service will help you to check your submitted job of model inputs preparation or model simulation.
The Job submission date should be within the latest 30 days. Otherwise, it will be expired for job status check.
{% if job_check_status == 'success' %}
{% else %}
| Job ID | Status | Start Time | End Time | Description | Is Success | Message |
|---|---|---|---|---|---|---|
| {{job.id}} | {{job.status}} | {{job.start_time}} | {{job.end_time}} | {{job.job_description}} | {{job.is_success}} |


XKCD’s ‘Time’ – Animated Time-lapse
A quick & dirty JavaScript time-lapse of xkcd’s slow-changing ‘Time’ comic. Thanks and kudos to explainxkcd.com for listing the complete image URLs on their page.
▶
00:00:00
Change speed:
Like it? Upvote it on Reddit!


--- title: rdivide sidebar: function_reference_sidebar permalink: PoleFigure.rdivide.html folder: function_reference toc: false ---
implements pf1 ./ b and a ./ pf2
overload the .* operator, i.e. one can now write x .* pf in order to scale the PoleFigure pf by the factor x


Recipes
Home
(current)
About
Services
Contact
Contact Us For any Query
Name
Email
Address
Reason For contacting
Check me out
Submit


CL-GSERVER.MESSAGEB
MESSAGE-BOX/BT → MESSAGE-BOX-BASE ... → T
Bordeaux-Threads based message-box with a single thread operating on a message queue. This is used when the gserver is created outside of the `system'. There is a limit on the maximum number of gservers/actors/agents that can be created with this kind of queue because each message-box requires exactly one thread.


{% extends 'base.html' %} {% load static %} {% block title %} Not found {% endblock %} {% block content %}
We will work on fixing that right away. Meanwhile, you may return to dashboard or try using the search form.


We use cookies to ensure that we give you the best experience on our website. We will not use cookies to collect personally identifiable information about you. If you continue without changing your settings, we'll assume that you are happy to receive all cookies from our website. Should you choose to disable, reject or block our cookies, some parts of our website will not function fully, or in some cases, our website will not be accessible at all. For more information on how to control your cookie settings and browser settings, or how to delete cookies on your hard drive, please visit aboutcookies.org
Google Analytics is a web analysis service provided by Google. Google utilizes the data collected to track and examine the use of www.example.com, to prepare reports on its activities and share them with other Google services. Google may use the data collected to contextualize and personalize the ads of its own advertising network. Personal data collected: Cookie and Usage Data. Place of processing: USA. Find Google's privacy policy here.
This web site contains links to other sites. Please be aware that we are not responsible for the content or privacy practices of such other sites. We encourage our users to be aware when they leave our site and to read the privacy statements of any other site that collects personally identifiable information.
Website users can submit suggestions, feature requests, bugs, feedback etc. on Contact Form. We may use that information to send you response, contact you for more details of issues, send promotional emails.
Website may requests information via surveys or promotions. Participation in these surveys or promotions is completely voluntary and you may choose whether or not to participate and therefore disclose this information. Information requested may include contact information (such as name, email), and demographic information (such as zip code, age level). Promotions information will be used to give users promotions benefits if they are eligible for the same. Survey information will be used for purposes of monitoring or improving the use and satisfaction of this site.
Copyright © 2016 by Pankaj Kumar. All rights reserved.


We are pleased to announce that we have entered the F1 in schools competition. Preliminary designs to follow shortly!
Email us at [insert email here]!


Phenology Diagram This figure shows the amount of thermal time (TT) as GDD's necessary to reach the next stage. The number of leaves that would be expected to appear within a stage based on the thermal time are also given. Values are given for non-stressed conditions, shown in the green 'Water non-limiting' section and for stressed conditions shown in the brown 'Water limiting' section.
Developmental Sequence A diagram which depicts the progression of the development of the plant's structures and shows the overlap among the growth of these structures. The Number of Leaves produced in each growth stage, the amount of Thermal Time in GDD's needed to reach the next growth stage as well as the accumulation of GDD's throughout the life of the plant, are depicted.


My main strength is Java developing. I started coding with
Arduino in C++. Later I wanted to connect my prototype devices with my Android phone. So I learned Java and Android development.
I found my first job as an Android
developer and started studying science of information technology part-time in Winterthur.
I like
Skydiving.


New Session
Javascript Data Collector
New Session:
Duration (min):
New Behavior:
Name:
Keyboard Key:
Description (optional):
Add Behavior
Behaviors:
There are no behaviors. Add some by completing the form above.


Fast-Food-Fast
Manage Food
Manage Orders
Logout
Add Food
Manage Food:
Admin:
Jide!

Yes
No