- Phool Dei is celebrated on the first day of the month of Chaitra in mid March.
- On this day, young girls conduct most of the ceremonies.
- In some places this festival is celebrated throughout the month with the advent of spring.
- During this festival young girls go to all the houses in the muhalla or the village with plates full of rice, jaggery, coconut, green leaves and flowers.
- They offer their good wishes for the prosperity of the household and are given blessings and presents (sweets, gur, money etc) in return.
In a few places even today they sprinkle flowers and rice on the doorsteps and sing:
Phool dei, chamma dei
Deno dwar, bhur bhakar
Yo dei sei namashkar, puje dwar
Sei (a pudding made with floor, curd and jaggery) is prepared specially for this occasion.
Folk singers sing the Riturain, Chaiti and other songs welcoming spring and are given presents, money and foodgrains.


Welcome to NeuroData Annotate’s documentation!¶
- Clone annotation repo. In Terminal type:
git clone https://github.com/rguo123/NeuroData_Annotate.git
- Install dependences by typing:
pip3 install -r requirements.txt
- Get BOSS API token by logging in to https://api.boss.neurodata.io/. Note: You need resource manager permissions to upload data to the BOSS.
- Create
neurodata.cfg
file and insert BOSS token as shown below:
[Default] protocol = https host = api.boss.neurodata.io token = INSERT TOKEN HERE
- Pull data from BOSS by typing
python3 NeuroDataResource.py
in terminal and following the input prompt.
- Annotate with FIJI:
- Install onto your system using https://imagej.net/Fiji/Downloads/.
- Open FJII, and start a new blank TrakEM2.
- Navigate to the folder of your image volume and select “open”.
- This should have changed your ImageJ canvas. Now, drag your volume (helloworld.tif) from your folder into the canvas.
- In the popup window, make sure that “Resize canvas to fit stack” is checked. After clicking OK, your canvas should snap to your image.
- In your TrakEM2 properties, right click on “anything” in the template column and add a new “area_list”.
- Drag the entire “anything” folder into “Unitled 0” in the middle column.
- Right click the nested “anything” folder inside “Untitled 0” and add a “new area list”.
- Annotate Your Data by drawing all over it. You can scroll to annotate different slices in your tif.
- When done, right click your canvas and select “Export” -> “Arealists as labels (tif)”.
NOTE: At any point, you can export your annotations as an xml by the same method listed above. Opening the xml file will start you where you left off.
- A black screen will appear - these are your annotations, don’t worry if you can’t see them.
- Save your annotations in the correct directory with the same name, an example given below.
- To push annotations to the BOSS, run
gen_commands.py
. - Paste command line output into terminal. If this doesn’t work, you will probably have to change some parameters in
gen_commands.py
. Below is a list of all parameters:
Parameters¶
| Parameters | Description | Required | Tips and Examples |
|---|---|---|---|
| script | Path to ingest_large_vol.py script | Yes | Should not have to change. |
| source_type | Where the data is being ingested from | Yes | Either s3 or local . |
| s3_bucket_name | AWS S3 Bucket name | No | Only specify if source_type is s3 |
| aws_profile | AWS Profile | No | Only specify if source_type is s3 . AWS Profile Help |
| boss_config_file | Path and filename of BOSS API token | Yes | Should not have to change. |
| slack_token | Slack API token | No | Use if you want slack notifiction once ingest is finished. |
| slack_username | Slack username | No | Use if you want slack notification once ingest is finished. |
| collection | BOSS collection name | Yes | You need permission for existing BOSS collections. Specifying a collection not in the BOSS will create a new collection (again, need permissions). |
| experiment | BOSS experiment name | Yes | See collection input. |
| channel | BOSS channel name | Yes | See collection input. |
| data_directory | Directory data is stored in | Yes | Format: Path/To/Data/ |
| file_name | Filename of data without file extension | Yes | Can specify which z slices you want for tif files. Example: TODO. |
| file_format | Extension of data file | Yes | Example: tif , png . |
| z_step | Increment of filename numbering | Yes | Typically keep at 1. |
| voxel_size | Physical dimensions of each voxel | Yes | Typically keep at 1 1 1 . This just determines some BOSS metadata mostly. |
| voxel_unit | Physical unit for voxel size | Yes | Options: nanometers, micrometers, millimeters, centimeters. |
| data_type | Data type of image | Yes | uint8 or uint16 for data, uint64 for annotations. Bug: Have to specify in ingest_large_vol.py the datatype as well. |
| data_dimensions | X, Y, Z, dimensions of data | Yes | Format: X Y Z (e.g. 1280 720 5 ). |
| z_range | List of z slices to ingest | Yes | First inclusive, last exclusive (e.g. [0, 5] ). |
| workers | Number of workers to use | Yes | Potential memory errors. |
Dockered Approach!¶
- Install Docker by following instructions here: Docker Installation
2. In terminal, type the following command:
docker pull rguo123/nddannotate
3. Start NeuroData_Annotate Container by typing in terminal
docker run -it rguo123/annotate
.
- You should now be in the docker container’s bash shell.
- Use the above instructions to pull data with NeuroData Resource.
6. To copy data out of the container, use the following command:
docker cp CONTAINER:SRC_Path DEST_Path
.
Use this to copy your BOSS data onto your computer.
- Annotate the data following the Fiji instructions above.
8. Copy annotations back into docker container when you are ready with the command
docker cp SOURCE_PATH CONTAINER:Dest_Path
9. Reenter your container with the command
docker exec -it container_id /bin/bash"
- Run ingest_large_vol commands to successfully push your data to the BOSS.


Managing Product Category Archiving
Catalog Managers can enable or disable archiving of a product category on the Store module using the Store Admin module.
- On the Store Admin module, click the Categories link.
- Click the Edit link beside the category to be archived.
- At Archived, select from these options:
- Mark the check box to archive the product. Archiving a category removes it and its associated products from the Store Menu module. Archiving a parent category, will archive all of its child categories.
- Unmark the check box to remove archiving. Restoring a category will display it in the Store Menu module. Restoring a parent category also restores all child categories unless they are individually set as archived.
-
Click the Update button.
- Repeat Steps 2-4 to modify archive status for additional categories.


Consistency We all know consistency is key in our sport (or any endurance endeavour). The more consistent you are, the smarter (and harder) you train your body and mind, the further you go.
If being consistent was easy, everyone would be winning races and or performing well but being consistent is NOT easy.
Tips for helping consistency:
Play the long game
The unfortunate reality is that many athletes don’t stay the course long enough to realise the benefits, and have a training history littered with holes – This will result in detraining, losing not only the physiological benefits but also the skills learned during the season. It’s like two steps forward, one step back. So when you get back, you have to basically start all over again losing all you have gained during the season. The time-course-for-adaptations, or at least the one’s that really matter in terms of optimising your potential, is typically much longer than most will ever acknowledge and understand. David Roche wants his athletes to have a 10 year plan. Yes, you read that right, 10 years! Be the Warren Buffet of training and hold a long term view.
Consistent Beats Epic Because Epic Is Not Consistent
Quit looking for the knockout punches in every sessions. You miss a few sessions during the week, you try to make up for it with a 170km bike ride at the weekend when unfit or without the foundations of strength and motor skills required. Similar with the long run. Or adding an extra 2-3 intervals to your speed session or training with someone who is at a different level to you right now. What will happen tomorrow when you try to train? Boy, that session wiped me yesterday..need to rest today. No way I can possibly train. Consistency gone.
 Doing daily soft tissue work is much more time efficient and put an end to overuse injuries (mostly avoidable – and very unlikely to be that one run), the problem typically slowly builds until its too late. We build that phone book one page at a time, before you become unrippable. Building resilience
Love the process
If you want to become the best athlete you can be, you have to love the process. Your training is a ‘want to’ not a ‘have to’. Any endurance endeavour, you need to play the long game. There are no shortcuts. You have to have a long view. To eek out your potential, the simple requirement is long term consistency. If you don’t love the process, consistency is not going to happen. You don’t have to go to the well each week. Certain blocks in years, but certainly on a daily basis you need to be training.
Establish a healthy environment
We need a system that we can apply year on year with minimal break (typically 2 weeks for off-season, then back at 45-60 min sessions daily for a period before building again). For this to happen, we are looking for an environment where work, family, emotional, stress, training, nutrition, sleep and of course fun are well balanced. If you’re tired constantly and don’t have energy for your spouse/partner kids etc, then this is not a healthy environment. Missing out on family events or spending precious time with kids because of training, this is not a healthy environment. If all you can give is 8-9 hours consistently year round to maintain a healthy balance at home and work, then so be it. It may take a bit longer but we will get there by keeping our consistency as opposed to trying to commit to 15 hours where you are burning the candle at both ends and eventually burnout, fall out of love with the process and give up.
Have great big audacious goals!
Know your why? What are your deep motivations? I’d be lying if I said Kona isn’t a HUGE motivation for me. Ultimately, this is what drives me, and gets me out of bed each morning. There are so many other events I want to do. But for now, I need to focus on this. However, I will also be very conscious of enjoying every minute of the journey and not beating myself up if I don’t achieve it in a certain time. If it takes 10 years, so be it. I have belief that I will get there, it’s just a matter of when.
There you have it. Adopt a mindset where your most important measuring stick is training consistency. Not the distance of your long rides or runs. Not the pace or power of your hard intervals.
Instead of setting numeric goals for your next season, what about setting consistency goals?
For example, if your training program has 10 workouts a week, that is 560 workouts a year so maybe you can set a goal of doing 500 workouts that would give you 60 workouts to miss (for some that’s 30 days for others even more). This goal setting method, by consistency, will help you to achieve your goals and dreams much easily than setting up times for your race finishes or workouts. The consistency and hard work will get you fit and the numbers you want to achieve….will be the consequence.
Remember that no brick is too small when building up your training wall. A few laps around the block are enough on the most stressful days. Set up a framework for consistency, and don’t let the desire for perfect training get in the way of good-enough training.
To finish off, I got this amazing snippet from a James Clear newsletter referencing the Seinfeld strategy.
According to Forbes magazine, Seinfeld reached his peak in earnings when he made $267 million dollars in 1998. (A full 10 years later, in 2008, Seinfeld was still pulling in a cool $85 million per year. However, what is most impressive about Seinfeld's career isn't the awards, the earnings, or the special moments — it's the remarkable consistency of it all. Show after show, year after year, he performs, creates, and entertains at an incredibly high standard. Jerry Seinfeld produces with a level of consistency that most of us wish we could bring to our daily lives.
The “Seinfeld Strategy” Brad Isaac was a young comedian starting out on the comedy circuit. One fateful night, he found himself in a club where Jerry Seinfeld was performing. In an interview on Lifehacker, Isaac shared what happened when he caught Seinfeld backstage and asked if he had “any tips for a young comic.”
Here's how Isaac described the interaction with Seinfeld…

He told me to get a big wall calendar that has a whole year on one page and hang it on a prominent wall. The next step was to get a big red magic marker. He said for each day that I do my task of writing, I get to put a big red X over that day.
“After a few days you'll have a chain. Just keep at it and the chain will grow longer every day. You'll like seeing that chain, especially when you get a few weeks under your belt. Your only job is to not break the chain.” [1]
You'll notice that Seinfeld didn't say a single thing about results.
It didn’t matter if he was motivated or not. It didn’t matter if he was writing great jokes or not. It didn't matter if what he was working on would ever make it into a show. All that mattered was “not breaking the chain.”
And that's one of the simple secrets behind Seinfeld's remarkable productivity and consistency. For years, the comedian simply focused on “not breaking the chain.”
The Seinfeld Strategy works because it helps to take the focus off of each individual performance (in our case workout) and puts the emphasis on the process instead. It’s not about how you feel, how inspired you are, or how brilliant your work is that day.
It’s just about “not breaking the chain.”
James Clear and Kristian Manietta wrote a great piece on this:
"Most people need consistency more than they need intensity.
Intensity: - run a marathon - write a book in 30 days - silent meditation retreats
Consistency: - don't miss a workout in 2 years - write every week - daily meditation
Intensity makes a good story. Consistency makes progress.
Are you making progress?
Real progress doesn't happen by an intense time frame. It comes imperceptibly over time.
As I've said before it takes time to get good. Endurance sports require volume, which smartly can be built over time and thus allow your body to handle the load you impose upon it. Trying to 'hack' this process through intensity will leave you broken. In body and health.
So be the consistent drip of water that changes stone over time. Not the big wall of water that just creates damage.
Then when you need to focus on an 'intense' period of time, you'll be able to not only handle it but thrive from it. "
Consistency We all know consistency is key in our sport (or any endurance endeavour). The more consistent you are, the smarter (and harder) you train your body and mind, the further you go.
If being consistent was easy, everyone would be winning races and or performing well but being consistent is NOT easy.
Tips for helping consistency:
Play the long game
The unfortunate reality is that many athletes don’t stay the course long enough to realise the benefits, and have a training history littered with holes – This will result in detraining, losing not only the physiological benefits but also the skills learned during the season. It’s like two steps forward, one step back. So when you get back, you have to basically start all over again losing all you have gained during the season. The time-course-for-adaptations, or at least the one’s that really matter in terms of optimising your potential, is typically much longer than most will ever acknowledge and understand. David Roche wants his athletes to have a 10 year plan. Yes, you read that right, 10 years! Be the Warren Buffet of training and hold a long term view.
Consistent Beats Epic Because Epic Is Not Consistent
Quit looking for the knockout punches in every sessions. You miss a few sessions during the week, you try to make up for it with a 170km bike ride at the weekend when unfit or without the foundations of strength and motor skills required. Similar with the long run. Or adding an extra 2-3 intervals to your speed session or training with someone who is at a different level to you right now. What will happen tomorrow when you try to train? Boy, that session wiped me yesterday..need to rest today. No way I can possibly train. Consistency gone.
 Doing daily soft tissue work is much more time efficient and put an end to overuse injuries (mostly avoidable – and very unlikely to be that one run), the problem typically slowly builds until its too late. We build that phone book one page at a time, before you become unrippable. Building resilience
Love the process
If you want to become the best athlete you can be, you have to love the process. Your training is a ‘want to’ not a ‘have to’. Any endurance endeavour, you need to play the long game. There are no shortcuts. You have to have a long view. To eek out your potential, the simple requirement is long term consistency. If you don’t love the process, consistency is not going to happen. You don’t have to go to the well each week. Certain blocks in years, but certainly on a daily basis you need to be training.
Establish a healthy environment
We need a system that we can apply year on year with minimal break (typically 2 weeks for off-season, then back at 45-60 min sessions daily for a period before building again). For this to happen, we are looking for an environment where work, family, emotional, stress, training, nutrition, sleep and of course fun are well balanced. If you’re tired constantly and don’t have energy for your spouse/partner kids etc, then this is not a healthy environment. Missing out on family events or spending precious time with kids because of training, this is not a healthy environment. If all you can give is 8-9 hours consistently year round to maintain a healthy balance at home and work, then so be it. It may take a bit longer but we will get there by keeping our consistency as opposed to trying to commit to 15 hours where you are burning the candle at both ends and eventually burnout, fall out of love with the process and give up.
Have great big audacious goals!
Know your why? What are your deep motivations? I’d be lying if I said Kona isn’t a HUGE motivation for me. Ultimately, this is what drives me, and gets me out of bed each morning. There are so many other events I want to do. But for now, I need to focus on this. However, I will also be very conscious of enjoying every minute of the journey and not beating myself up if I don’t achieve it in a certain time. If it takes 10 years, so be it. I have belief that I will get there, it’s just a matter of when.
There you have it. Adopt a mindset where your most important measuring stick is training consistency. Not the distance of your long rides or runs. Not the pace or power of your hard intervals.
Instead of setting numeric goals for your next season, what about setting consistency goals?
For example, if your training program has 10 workouts a week, that is 520 workouts a year so maybe you can set a goal of doing 500 workouts that would give you 60 workouts to miss (for some that’s 30 days for others even more). This goal setting method, by consistency, will help you to achieve your goals and dreams much easily than setting up times for your race finishes or workouts. The consistency and hard work will get you fit and the numbers you want to achieve….will be the consequence.
Remember that no brick is too small when building up your training wall. A few laps around the block are enough on the most stressful days. Set up a framework for consistency, and don’t let the desire for perfect training get in the way of good-enough training.
Do this again. And again. And again.
Even when you don’t want to. Good things will happen
To finish off, I got this amazing snippet from a James Clear newsletter referencing the Seinfeld strategy.
According to Forbes magazine, Seinfeld reached his peak in earnings when he made $267 million dollars in 1998. (A full 10 years later, in 2008, Seinfeld was still pulling in a cool $85 million per year. However, what is most impressive about Seinfeld's career isn't the awards, the earnings, or the special moments — it's the remarkable consistency of it all. Show after show, year after year, he performs, creates, and entertains at an incredibly high standard. Jerry Seinfeld produces with a level of consistency that most of us wish we could bring to our daily lives.
The “Seinfeld Strategy” Brad Isaac was a young comedian starting out on the comedy circuit. One fateful night, he found himself in a club where Jerry Seinfeld was performing. In an interview on Lifehacker, Isaac shared what happened when he caught Seinfeld backstage and asked if he had “any tips for a young comic.”
Here's how Isaac described the interaction with Seinfeld…

He told me to get a big wall calendar that has a whole year on one page and hang it on a prominent wall. The next step was to get a big red magic marker. He said for each day that I do my task of writing, I get to put a big red X over that day.
“After a few days you'll have a chain. Just keep at it and the chain will grow longer every day. You'll like seeing that chain, especially when you get a few weeks under your belt. Your only job is to not break the chain.” [1]
You'll notice that Seinfeld didn't say a single thing about results.
It didn’t matter if he was motivated or not. It didn’t matter if he was writing great jokes or not. It didn't matter if what he was working on would ever make it into a show. All that mattered was “not breaking the chain.”
And that's one of the simple secrets behind Seinfeld's remarkable productivity and consistency. For years, the comedian simply focused on “not breaking the chain.”
The Seinfeld Strategy works because it helps to take the focus off of each individual performance (in our case workout) and puts the emphasis on the process instead. It’s not about how you feel, how inspired you are, or how brilliant your work is that day.
It’s just about “not breaking the chain.”
James Clear and Kristian Manietta wrote a great piece on this:
"Most people need consistency more than they need intensity.
Intensity: - run a marathon - write a book in 30 days - silent meditation retreats
Consistency: - don't miss a workout in 2 years - write every week - daily meditation
Intensity makes a good story. Consistency makes progress.
Are you making progress?
Real progress doesn't happen by an intense time frame. It comes imperceptibly over time.
As I've said before it takes time to get good. Endurance sports require volume, which smartly can be built over time and thus allow your body to handle the load you impose upon it. Trying to 'hack' this process through intensity will leave you broken. In body and health.
So be the consistent drip of water that changes stone over time. Not the big wall of water that just creates damage.
Then when you need to focus on an 'intense' period of time, you'll be able to not only handle it but thrive from it. "


{{ define "requests" }}
GoFlow monitoring provides execution status of individual requests and traces in the UI. In order to monitor flow function, tracing data must be stored in trace server. GoFlow uses jaeger as a tracing backend
For flow function enable tracing enable_tracing: true
and set trace server url trace_server: "jaegertracing:5775"
Provide the same trace server API url trace_url: "jaegertracing:16686"
in conf.yml


TopKLists: Inference, Aggregation and Visualization for Top-K Ranked Lists
For multiple ranked input lists (full or partial) representing the same set of N objects, the package TopKLists offers (1) statistical inference on the lengths of informative top-k lists, (2) stochastic aggregation of full or partial lists, and (3) graphical tools for the statistical exploration of input lists, and for the visualization of aggregation results.
| Version: |
1.0.6 |
| Depends: |
R (≥ 3.0.0) |
| Imports: |
Hmisc, grid, gplots |
| Suggests: |
knitr, RGtk2, gWidgets2, gWidgetsRGtk2 |
| Published: |
2015-11-13 |
| Author: |
Michael G. Schimek, Eva Budinska, Jie Ding, Karl G. Kugler, Vendula Svendova, Shili Lin |
| Maintainer: |
Michael G. Schimek <michael.schimek at medunigraz.at> |
| License: |
LGPL-3 |
| URL: |
http://topklists.r-forge.r-project.org |
| NeedsCompilation: |
yes |
| Citation: |
TopKLists citation info |
| Materials: |
NEWS |
| CRAN checks: |
TopKLists results |
Downloads:
Reverse dependencies:
Linking:
Please use the canonical form
https://CRAN.R-project.org/package=TopKLists
to link to this page.


Use a gyro to return the robots heading relative to a starting position. As the robot rotates the new heading is computed by integrating the rate of rotation returned by the sensor. When the gyro is instantiated, it does a short calibration routine where it samples the gyro while at rest to determine the default offset. This is subtracted from each sample to determine the heading.


In Angular, a Component is a special kind of directive that uses a simpler configuration which is suitable for a component-based application structure. This makes it easier to write an app in a way that's similar to using Web Components or using Angular 2's style of application architecture.
Advantages of Components:
When not to use Components:


Supplementary Website S1: Interactive heatmap of results from Fig. 2b. The results are from our manuscript titled "Defining subpopulations of differential drug response
to reveal novel target populations", available at npj Systems Biology and Applications.
Heatmap visualisation code adapted from, https://github.com/PBrockmann/heatmap. Last accessed October 4, 2019.


go to the bar at the end of the third pier in vladivostok and ask for vadim, tell him boris sent you.


Click here for a list of all of my computer science related courses.
Build with GameMaker Studio
a few sample of java codes i wrote for my courses and free time
a few sample of C codes that i wrote


Order Form
Bean Amount:
Swag Amount:
Order!
Address Info
Name:
Street Address:
City:
State:
Zip Code:
Confirm Order


Location:
Chalmers University of Technology (Göteborg - Sweden).
Dates:
25th and 26th November 2016.
Speakers:
- Ulrich Derenthal (Leibniz Universität Hannover)
- Lars Hesselholt (University of Copenhagen)
- Emmanuel Kowalski (ETH)
- Yingkun Li (Darmstadt)
- Simon Rydin Myerson (UCL)
- Sho Tanimoto (University of Copenhagen)
- Jeanine Van Order (Universität Bielefeld)
- Maryna Viazovska (Humboldt University of Berlin)
Program:
Click
HERE
Organizers:
Julia Brandes, Dennis Eriksson, Per Salberger, Amos Turchet, Martin Westerholt-Raum.
Registration:
There is no registration fee but if you want to participate we kindly ask you to send an email to
days AT n-cube.net.
Directions:
All the talks will be held in the Euler Room located at the Fysik building - entrance from the Math building. (
Map)
Most of the Department of Mathematical Sciences is situated right in the middle of Campus Johanneberg (see maps
HERE).
The Department is about 1.5 km from the centre of Göteborg. To reach the Department, you can take bus 19 to bus stop Chalmers Tvärgata, or tram 6, 7, 8, 10 or 13 or bus 16, 58, 158 or 753 to tram stop Chalmers to the north of the campus. The airport bus stops at Korsvägen, where you change to tram 6, 8 or 13 to tram stop Chalmers (next stop).(
LINK to Public transport in Göteborg).
Sponsor:
Gothenburg Centre for Advanced Studies in Science and Technology.


This simple showcase let's you discover some of the great features of slf4gwt.
Open up your browser console and click on the buttons underneath this text to create some log messages
Log a message to the predefined root logger. Click on the button to log as the named logging type. Warn and Error log a thrown exception.
Log a message to the normal logger. Click on the button to log as the named logging type. Warn and Error log a thrown exception.


Description
OpenMeetings 2.1 or later is required to use clustering. One database is used for all OpenMeetings servers, so all database tables are shared across OM instances. Certain folders should be shared between all servers to allow access to the files/recording.
Configuration
- Multiple OM servers should be set up as described in Installation
- All servers should be configured to have same Time zone (To avoid Schedulers to drop user sessions as outdated)
- All servers should be configured to use the same DB
- Servers should be added in Administration -> Servers section
Database
All servers should be configured to use the same database. It can be on the server or on the one node of the cluster.
- Add users who can connect to the database remotely
- Update /opt/red5/webapps/openmeetings/WEB-INF/classes/META-INF/persistence.xml set correct server address, login and password. Also add the following section:
Instead of the <IP_ADDRESS> and <IP_ADDRESS> set semicolon separated IPs of all nodes of the cluster.
<property name="openjpa.RemoteCommitProvider" value="tcp(Addresses=<IP_ADDRESS>;<IP_ADDRESS>)" />
File systems
If files and recordings using the same physical folders the files and recordings will be available for each node. You can do this using Samba or NFS, for example. For using NFS do the following:
- Install NFS to the data server. In the file /etc/exports add the following lines:
Here <IP_ADDRESS> - is node ip for NFS remote access. Add these lines for all nodes except node with folders.
/opt/red5/webapps/openmeetings/upload <IP_ADDRESS>(rw,sync,no_subtree_check,no_root_squash) /opt/red5/webapps/openmeetings/streams <IP_ADDRESS>(rw,sync,no_subtree_check,no_root_squash)
- Install NFS common tools to other nodes. In the file /etc/fstab do the following:
Here <IP_ADDRESS> – data server ip. And run the command:
<IP_ADDRESS>:/opt/red5/webapps/openmeetings/upload/ /opt/red5/webapps/openmeetings/upload nfs timeo=50,hard,intr <IP_ADDRESS>:/opt/red5/webapps/openmeetings/streams/ /opt/red5/webapps/openmeetings/streams nfs timeo=50,hard,intr
mount -a
OM nodes configuration
In the file /opt/red5/webapps/openmeetings/WEB-INF/classes/openmeetings-applicationContext.xml:
- For each node uncomment line:
and input the unique value for each node.
<!-- Need to be uncommented and set to the real ID if in cluster mode--> <property name="serverId" value="1" />
- Replace <ref bean="openmeetings.HashMapStore" /> <!-- Memory based session cache by default -->
with <ref bean="openmeetings.DatabaseStore" /> (Currently commented out with following comment: "The following section should be used in clustering mode")
Configuring cluster in Administration
Run red5 on each node. Login to the system as admin.
- Go to the Administration -> Users and create Webservice user (only access via SOAP).
- Go to the Administration -> Servers and add all cluster nodes with the following settings:
Server Name = node name; Active = check the checkbox. If the checkbox is checked it means node is active and you can use this node; Server Address = node ip; HTTP Port = 5080 - port for http part of Openmeetings; User (SOAP Access) = login of Webservice user from the previous step; Password = password of Webservise user; Webapp path = openmeetings - path where OM installed on this node, it would be better if this path will be the same for all nodes; Protocol = http.
Ensure everything works as expected
- Set up the cluster and loggin with two users, go to the same room (also check before room entering that the status page with the room list shows the correct number of participants before entering the room). You should login to the same server initially, the server will redirect you for the conference room to the appropriate server automatically. Both users should be in the same room.
- Do the same with only two users but go to _different_ rooms. The calculation should send both users to different servers, cause based on the calculation two different rooms on a cluster with two nodes should go exactly one room for each node. You can now loggin really to node1 and node2 of your cluster while those users are loggedin and go to Administration > Connections and check in the column "servers" where they are located. They should be on different server.


Spectacular, robotic cardboard sculptures
by Cory DoctorowGreg Olijnyk works as a 2D graphic designer, but his hobby is creating unbelievably wonderful 3D science fictional cardboard sculptures that sport motors and lights that animate them (some use photovoltaic cells for power, too).
He told Colossal's Laura Staugaitis: "every piece has the limitations and advantages of the cardboard material in mind, how it bends, how strong it will be, etc.
I can't tell if he sells these, but I covet them with the intensity of a thousand suns


Filters: Device Type
Feature Category
Basic Parameters
Feature Matrix
Build RFP
logout
Device Types:
Device Type
Edit
Name*:
Feature Categories:
Device Type
Category Name English
Category Name Spanish
Category Name Portuguese
Edit
Description English*:
Device Type*:
Description Spanish:
Description Portuguese:
Features:
Category
Feature Name
Description English
Description Spanish
Description Portuguese
Edit
Name*:
Device Type*:
Category*:
Descr Eng:
Descr Spa:
Descr Por:
Devices:
Device Type
Vendor
Model
Description
Edit
Vendor*:
Model*:
Device Type*:
Description:


This package contains the whole Look framework.
Basic classes
Basic classes Look, DefaultLook, LookSelector and NamespaceSelector will
be used when defining the transformation between arbitrary represend object
and it's visual representation. The Look can be think of as factory for
the values used for visual representation of objects. I.e. the Look is
given the object and should return/extract/compute the proper value
(e.g. DisplayName or Icon)
Look is the class responsible for the transformation of data and events.
Look selector is responsible for finding proper Look (set of Looks) for
given object where the search can be based on various criteria e.g. type
of the object some (immutable) property of the object etc.
Simply extending look will provide a "null" representation so there
won't be any name, any icon etc. Overriding methods in the subclass of Look
allows to return some reasonable values based on properties of the
represented object. The subclass can also decide to implement some listener
interfaces and register on the represented objects in order to
translate/refire the changes and in turn update the view when some
property of represented object changes.
LookSelectors serve:
- For implementing more advanced Looks search strategies in Proxy/Composite
Looks and for selecting proper Looks for different categories of objects.
- For creating an API of modules which need to
allow other modules to modify the visual representation of objects the
module produces.
Static factories
There are two static factories (Looks and Selectors). These factories:
- Provide some default implementations of Looks for general objects e.g. JavaBeans
or selecting by a type of object.
- Second, provide Looks and LookSelectors which execute some general operations
on other Looks/LookSelectors (e.g. composition and filtering)


Generate anonymous direct links from your iCloud Drive files
Author: @ROP
Development Tools
Welcome to iCloud MailDrop Link
You want to share a file from iCloud Drive/Files, but you don’t want to give access to it?! This shortcut generates a direct (MailDrop) link (like Dropbox, OneDrive et cetera.), which you can share via Messages, WhatsApp, Mail and so on. I know there’s a built-in iOS feature to share files with iCloud Drive. But iOS wants you to give access to that file so people can collaborate and work together on that file. You also reveal your identity when you share files in this way. You can bypass this iOS characteristic by using iCloud MailDrop Link.
How To
iCloud MailDrop Link uses Apple’s MailDrop technique to generate a direct download link. This is the same what happens when you attach large files to an email and iOS offers you to generate a MailDrop link if the attachment is too large. The recipient of your message will get that link as part of your email.
Good to know: iCloud MailDrop Link works directly from the Shortcuts app or via the Share Sheet feature of iOS.
1. Select a file from Files.
2. Your personal MailDrop link will be generated and copied to your clipboard.
3. Next, you can share it via Messages, WhatsApp or Mail. In addition, you can share it with other apps like Threema et cetera by tapping the Share button.
4. Another option is to shorten that link before sharing it. MailDrop links are looooong! If you don’t want to use these large links (which could break if you paste it into Messages), simply tap Shorten Link after the MailDrop link has been generated. The link gets shortened by using TinyURL.com and after it will be copied to your clipboard as well.
No third party Updater Shortcut required.
iCloud MailDrop Link has an integrated update mechanism called Embed-a-Update. Thanks to the embedded updater, iCloud MailDrop Link does not require any external updater shortcut. The shortcut checks for updates itself, so you'll always be up to date and never miss an update.
All graphics on this page were made with MediaKit
This Shortcut is available exclusively on RoutineHub.co. If you find it somewhere else, it's a fake. Please let me know in the comments below if you found this Shortcut somewhere else. Thanks.


This is the course website for IS590 Data Visualization in Spring 2019 (Online)
This is the course website for Data Visualization, instructed by Jill P. Naiman (jnaiman@illinois.edu).
Please note: Chrome (and possibly Firefox) are the necessary browsers for success with Blackboard Collaborate! Also: a “headset” type setup is needed for this class (apple-type earbuds can produce a lot of feedback).
Moodle page is located here.
Below, you will find the materials for each week, as well as a syllabus that includes contact information and a course outline.
Some handy references you might appreciate:


Web development is the work involved in developing a website for the Internet (World Wide Web) or an intranet (a private network). Web development can range from developing a simple single static page of plain text to complex web-based internet applications (web apps), electronic businesses, and social network services. A more comprehensive list of tasks to which web development commonly refers, may include web engineering, web design, web content development, client liaison, client-side/server-side scripting, web server and network security configuration, and e-commerce development .
Among web professionals, "web development" usually refers to the main non-design aspects of building websites: writing markup and coding. Web development may use content management systems (CMS) to make content changes easier and available with basic technical skills.
Since the commercialization of the web, web development has been a growing industry. The growth of this industry is being driven by businesses wishing to use their website to advertise and sell products and services to customers.


Templated handlers
Two handlers with bars between them, exclusive overlapping
Two handlers with bars between them, inclusive overlapping
One handler, values are coming from a select element
ten
eleven
twelve
fourteen
twenty-six
Using themes: bars are shown on the track


Making your lifestyle more independent and comfortable at home.
Learn MoreBathing, grooming, dressing
Medication reminders
Incontinence care
Transferring
Meal preparation
Feeding and hydration
Doctor appointments and errands
Shopping and entertainment
Laundry and changing of bed linens
Room cleaning and vacuuming
Phone:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>
Address:
1879 Lundy Ave Ste 286
San Jose, CA 95131
Phone:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>
Address:
24301 Southland Dr Ste 422
Hayward, CA 94545


- Name: {{playerInfo.name}}
- Nationality: {{playerInfo.nationality}}
- National Position: {{playerInfo.national_position}}
- National Kit: {{playerInfo.national_kit}}
- Club: {{playerInfo.club}}
- Club Position: {{playerInfo.club_position}}
- Club Kit: {{playerInfo.club_kit}}
- Club Joining: {{playerInfo.Club_joining}}
- Contract Expiry: {{playerInfo.contract_expiry}}
- Rating: {{playerInfo.rating}}
- Height: {{playerInfo.height}}
- Weight: {{playerInfo.weight}}
- Preffered Foot: {{playerInfo.preffered_foot}}
- Birth Date: {{playerInfo.birth_date}}
- Age: {{playerInfo.age}}
- Preffered Position: {{playerInfo.preffered_position}}
- Work Rate: {{playerInfo.work_rate}}
- Weak foot: {{playerInfo.weak_foot}}
- Skill Moves: {{playerInfo.skill_moves}}
- Ball Control: {{playerInfo.ball_control}}
- Dribbling: {{playerInfo.dribbling}}
- Marking: {{playerInfo.marking}}
- Sliding Tackle: {{playerInfo.sliding_Tackle}}
- Standing Tackle: {{playerInfo.standing_Tackle}}
- Aggression: {{playerInfo.aggression}}
- Reactions: {{playerInfo.reactions}}
- Attacking Position: {{playerInfo.attacking_position}}
- Interceptions: {{playerInfo.interceptions}}
- Vision: {{playerInfo.vision}}
- Composure: {{playerInfo.composure}}
- Crossing: {{playerInfo.crossing}}
- Short Pass: {{playerInfo.short_pass}}
- Long Pass: {{playerInfo.long_pass}}
- Acceleration: {{playerInfo.acceleration}}
- Speed: {{playerInfo.speed}}
- Stamina: {{playerInfo.stamina}}
- Strength: {{playerInfo.strength}}
- Balance: {{playerInfo.balance}}
- Agility: {{playerInfo.agility}}
- Jumping: {{playerInfo.jumping}}
- Heading: {{playerInfo.heading}}
- Shot Power: {{playerInfo.shot_power}}
- Finishing: {{playerInfo.finishing}}
- Long Shots: {{playerInfo.long_shots}}
- Curve: {{playerInfo.curve}}
- Freekick_Accuracy: {{playerInfo.freekick_accuracy}}
- Penalties: {{playerInfo.penalties}}
- Volleys: {{playerInfo.volleys}}
- GK Positioning: {{playerInfo.gk_positioning}}
- GK Diving: {{playerInfo.gk_diving}}
- GK Kicking: {{playerInfo.gk_kicking}}
- GK Handling: {{playerInfo.gk_handling}}
- GK Reflexes: {{playerInfo.gk_reflexes}}


 Sublime Text has a fully-featured, unlimited time Trial mode.
Optional: if you are coming from an IDE like Visual Studio or Eclipse, you may like WebStorm (trial version) better than Sublime Text because of the autocompletion and debugging tools. It's also cheaper for an academic license (79)
And if you're a strict proponent of open source, or want to dogwood and customize your editor in JavaScript, there are two great free editors: Brackets and Light Table.
Homebrew http://brew.sh Note: the instructions are at the end of the web page.
rbenv, ruby-build, ruby 2.1.1 and the sass gem
brew doctor
brew update
brew install rbenv ruby-build rbenv-gem-rehash
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
rbenv install 2.1.1
rbenv global 2.1.1
gem install sass
Node.js
brew install nvm
nvm install 0.10
nvm alias default 0.10
source $(brew --prefix nvm)/nvm.sh
to your .bash_profile or .zshrcnpm -g install grunt-cli jshint
Totally Optional, but you may want a relational database. Only do this if you have time. I choose PostgreSQL:
Pick a programmer's editor:
MongoDB
brew install mongodb
brew info mongo
brew services start mongo
brew services stop redis
Redis
brew install redis
brew info redis
brew services start redis
brew services stop redis
Heroku Toolbelt
brew install heroku-toolbelt
npm -g install grunt-cli


We're sorry but pepqa_web doesn't work properly without JavaScript enabled. Please enable it to continue.


| Package | Description |
|---|---|
| com.ibm.team.repository.client |
Provides the main client-side-only APIs for the Repository component.
|
| com.ibm.team.repository.client.util |
Provides secondary client-side-only APIs for the Repository component.
|
| com.ibm.team.scm.client | |
| com.ibm.team.workitem.client |
| Modifier and Type | Interface and Description |
|---|---|
interface |
IItemManager
An item manager for a particular team repository.
|
interface |
IStatistics
Statistics data for a particular team repository.
|
interface |
ITeamRepository
Represents a team repository.
|
interface |
ITeamRepositoryService
Service for establishing contact with team repositories.
|
| Modifier and Type | Class and Description |
|---|---|
class |
EventSource
Implementation of the IEventSource interface.
|
| Modifier and Type | Method and Description |
|---|---|
IEventSource |
IEvent.getEventSource()
Returns the event source that originated this event.
|
IEventSource |
Event.getEventSource() |
| Constructor and Description |
|---|
Event(IEventSource eventSource,
java.lang.String eventType)
Creates a new event with the given event source and event type.
|
PropertyChangeEvent(IEventSource eventSource,
java.lang.String eventType,
java.lang.Object object,
java.lang.Object property)
Creates a new delta event with the given event source, modified object
and event type.
|
PropertyChangeEvent(IEventSource eventSource,
java.lang.String eventType,
java.lang.Object object,
java.lang.Object property,
java.lang.Object oldValue,
java.lang.Object newValue)
Creates a new delta event with the given event source, modified object,
event type, modified property, old property value and new property value.
|
PropertyChangeEvent(IEventSource eventSource,
java.lang.String eventType,
java.lang.Object object,
java.lang.Object property,
java.lang.Object oldValue,
java.lang.Object newValue,
int position)
Creates a new delta event with the given event source, modified object,
event type, modified property, old property value, new property value and
a list position.
|
PropertyChangeEvent(IEventSource eventSource,
java.lang.String eventType,
java.lang.Object object,
java.lang.Object property,
java.lang.Object oldValue,
java.lang.Object newValue,
int position,
java.lang.Object data)
Creates a new delta event with the given event source, modified object,
event type, modified property, old property value, new property value and
a list position.
|
| Modifier and Type | Interface and Description |
|---|---|
interface |
IBaselineConnection
Interface for allowing a client to carry on an extended interaction with a
baseline stored in a repository.
|
interface |
IConnection
Interface providing common protocol for managing a connection to carry on an
extended interaction with a target (workspace, stream or baseline) stored in
a repository.
|
interface |
IFlowNodeConnection
Interface for allowing a client to carry on an extended interaction with a
flow node (workspace or stream) stored in a repository.
|
interface |
IWorkspaceConnection
Interface for allowing a client to carry on an extended interaction with a
workspace stored in a repository.
|
interface |
IWorkspaceManager
Methods for managing workspaces and streams.
|
| Constructor and Description |
|---|
QueryChangeEvent(IEventSource eventSource,
java.lang.String eventType,
IQueryDescriptor descriptor) |
QueryChangeEvent(IEventSource eventSource,
java.lang.String eventType,
IQueryDescriptor descriptor,
IQueryDescriptor beforeState) |
QueryExecutionStateChangeEvent(IEventSource eventSource,
java.lang.String eventType,
java.lang.Object executable,
int totalCount) |


CAF PREZ AHMAD AHMAD PRONOUNCE :They Are Our Hope And Future.
Confederation of African football President endorses the New Online TV channel in his visit to Accra for the 2017 Aiteo CAF awards gala.The T.V channel He believes will be a major boost to African football. The President of Malagasy football federation as well as CAF Chief And his 1st Vice President Kwesi Nyantakyi endorsed the New Online TV channel after the CEO of "Kingstv",enterprising Sports broadcaster King Halid disclosed the mission and vision of the Online TV channel to them.
The CAF President heartfelt request to " Kingstv" in the presence of entourage of CAF executive's including his 1st Vice Kwesi Nyantakyi double as Ghana F.A Chief are to use the channel to inform, educate and promote Ghana and African football as a whole .He stated that ,Television is currently one of the most admired mass media channels in the world and its growth is seen all over the world everyday because of its conveyance of speech and moving pictures.
Mr Ahmad Ahmad who dethroned the longest serving CAF president Issa Hayatou won his election In March 2017, he was voted in as President of CAF, winning 34 votes to Issa Hayatou's 20. He becomes the 7th President of the body. Before then, he was a member of the Caf Executive Committee.
“ ” — By King Halid


If you would like to see one of my projects click on the link:
Thank you for visiting my page. Your company was enjoyed.
Sincerely, Aaron Greene
If you would like to see one of my projects click on the link:
Thank you for visiting my page. Your company was enjoyed.
Sincerely, Aaron Greene


Beginning to forget how you solved certain coding problems?
Review your code without having to type it all in again.
{{fb}}


Application Edge UI can be invoked using touch, mouse, or keyboard.
1. Touch: Drag from the top or bottom edge of the screen. The following events are supported by the Edge Gesture API:
(a) "starting" is triggered when the drag begins;
(b) "completed" is triggered when the user lifts his or her finger;
(c) "canceled" is triggered when the user either returns to the edge where the drag began or continues dragging into the middle of the screen.
2. Mouse: Right-click anywhere in the sample. This will trigger the "completed" event.
3. Keyboard: Press Win+Z or the context menu key. This will trigger the "completed" event.


Wait up guys...
WINNER!
score:
0
pause music
/
resume music
Your friends have run off without you! You're all alone. But they dropped their homework as they ran, follow the paper trail and see if you can catch up.
controls: A/D to move. [space] to jump
copyright (c) 2011 Joshua Pulham. MIT license


Money Play. How should Red play 61?
pips Red=193 White=171
(CorrectAnswer= 0/0, ErrorScore= 0)
This is a difficult problem.
It turns out that making the 5-pt with 11/5, 6/5 is too committal.
Red does best to adopt a two-way strategy here, looking to win forward but preserving his back game chances if things go well.
The best way to do this is 16/10, 8/7* with 20/14, 8/7* a relatively close second. White’s next roll will probably then determine Red’s game plan.
Making the 5-pt leads Red too far forward in the variations where White hits one or more checkers. This is a rare and unusual case where making the 5-pt is a blunder. Needless to say, over the board, I made the 5-pt!
It turns out that making the 5-pt with 11/5, 6/5 is too committal.
Red does best to adopt a two-way strategy here, looking to win forward but preserving his back game chances if things go well.
The best way to do this is 16/10, 8/7* with 20/14, 8/7* a relatively close second. White’s next roll will probably then determine Red’s game plan.
Making the 5-pt leads Red too far forward in the variations where White hits one or more checkers. This is a rare and unusual case where making the 5-pt is a blunder. Needless to say, over the board, I made the 5-pt!
1. Cubeful 2-ply 16/10 8/7* Eq.: -0.273 0.475 0.171 0.017 - 0.525 0.209 0.017 2. Cubeful 2-ply 20/14 8/7* Eq.: -0.274 (-0.001) 0.480 0.167 0.018 - 0.520 0.216 0.021 3. Cubeful 2-ply 11/5 6/5 Eq.: -0.329 (-0.056) 0.467 0.159 0.014 - 0.533 0.230 0.019 4. Cubeful 0-ply 8/2 3/2 Eq.: -0.449 (-0.176) 0.411 0.143 0.013 - 0.589 0.212 0.015 5. Cubeful 0-ply 11/5 8/7* Eq.: -0.450 (-0.177) 0.433 0.134 0.011 - 0.567 0.243 0.026


You MUST have a working network connection.
You MUST have active locations.
Settings > Location : on
You SHOULD use Wifi for getting a location.
Settings > Location > Mode : a setting with Wifi
You SHOULD let the phone use Wifi to scan for location all the time.
Settings > Wifi > Advanced > Scanning always available : on
You SHOULD NOT queue background data (if available).
Settings > Power management > Queue background data : off (option not available on all mobiles)
You COULD TRY turn off the Wifi optimization.
Settings > Wifi > Advanced > Wi-Fi optimization : off
You COULD TRY to turn on Wifi briefly, especially if you don't use Wifi otherwise.
(We've noticed that in some cases this helps to get the location service running.)
/the Elefant team


Detect Winner
When a player dies, count the number of active teams. When there is only 1 team left, that team has won.
Kick all players and send them a message congratulating the team that won
Also, reset gameId variable so the game will reset when the next player rejoins the server.


J.Y. Park and Cho Yeo Jeong reveal first teaser album for their duo release titled 'Fever'
by sl278Hold on to your horses because J.Y. Park is ready to make his comeback!
The record label mogul and artist has released the first teaser of his upcoming release with actress Cho Yeo Jung, who recently appeared in the reclaimed movie 'Parasite'. Judging by the cover, the song and the MV are bound to be filled with energy and charisma.
Check it out above!


Lex is a computer program that generates lexical analyzers ("scanners" or "lexers"). Lex is commonly used with the yacc parser generator. Lex, originally written by Mike Lesk and Eric Schmidt and described in 1975, is the standard lexical analyzer generator on many Unix systems, and an equivalent tool is specified as part of the POSIX standard. Lex reads an input stream specifying the lexical analyzer and outputs source code implementing the lexer in the C programming language.
Though originally distributed as proprietary software, some versions of Lex are now open source. Open source versions of Lex, based on the original AT&T code are now distributed as open source systems such as OpenSolaris from Bell Labs. One popular open source version of Lex, called flex, or the "fast lexical analyzer", is not derived from proprietary coding:
| Name | Algorithm | Language | License |
|---|---|---|---|
| lex | DFA | C | CDDL |
| flex | DFA | C,C++ | BSD |
The structure of a Lex file is intentionally similar to that of a yacc file; files are divided into three sections, separated by lines that contain only two percent signs, as follows:
This is an example of a lex scanner:
More information can be found in the wikipedia.


---
layout: default
permalink: /blog
title: Blog
description: Blog posts written by Rob Jefferson
---
Blog archive by year
{%- for post in site.posts -%}
{%- if post.next -%}
{%- assign year = post.date | date: '%Y' -%}
{%- assign prev_year = post.next.date | date: '%Y' -%}
{%- if year != prev_year -%}
{{ post.date | date: '%Y' }}
{%- endif -%}
{%- else -%}
{{ post.date | date: '%Y' }}
{%- endif -%}
{%- endfor -%}


A C D E F G H I J L M N O P Q R S T U V W X misc
| emmeans-package | Estimated marginal means (aka Least-squares means) |
| add_grouping | Add a grouping factor |
| as.data.frame.emmGrid | Summaries, predictions, intervals, and tests for 'emmGrid' objects |
| as.emmGrid | Convert to and from 'emmGrid' objects |
| as.emm_list | Convert to and from 'emmGrid' objects |
| as.glht | Support for 'multcomp::glht' |
| as.glht.emmGrid | Support for 'multcomp::glht' |
| as.list.emmGrid | Convert to and from 'emmGrid' objects |
| as.mcmc.emmGrid | Support for MCMC-based estimation |
| as.mcmc.list.emmGrid | Support for MCMC-based estimation |
| auto.noise | Auto Pollution Filter Noise |
| cld.emmGrid | Compact letter displays |
| cld.emm_list | Compact letter displays |
| coef.emmGrid | Contrasts and linear functions of EMMs |
| confint.emmGrid | Summaries, predictions, intervals, and tests for 'emmGrid' objects |
| consec.emmc | Contrast families |
| contrast | Contrasts and linear functions of EMMs |
| contrast-methods | Contrast families |
| contrast.emmGrid | Contrasts and linear functions of EMMs |
| del.eff.emmc | Contrast families |
| dunnett.emmc | Contrast families |
| eff.emmc | Contrast families |
| eff_size | Calculate effect sizes and confidence bounds thereof |
| emm | Support for 'multcomp::glht' |
| emmc-functions | Contrast families |
| emmeans | Estimated marginal means (Least-squares means) |
| emmGrid-class | The 'emmGrid' class |
| emmip | Interaction-style plots for estimated marginal means |
| emmip.default | Interaction-style plots for estimated marginal means |
| emmip_ggplot | Interaction-style plots for estimated marginal means |
| emmip_lattice | Interaction-style plots for estimated marginal means |
| emmobj | Construct an 'emmGrid' object from scratch |
| emm_basis | Support functions for model extensions |
| emm_defaults | Set or change emmeans options |
| emm_list | The 'emm_list' class |
| emm_options | Set or change emmeans options |
| emtrends | Estimated marginal means of linear trends |
| extending-emmeans | Support functions for model extensions |
| feedlot | Feedlot data |
| fiber | Fiber data |
| force_regular | Combine or subset 'emmGrid' objects |
| get.lsm.option | Wrappers for alternative naming of EMMs |
| get_emm_option | Set or change emmeans options |
| glht-support | Support for 'multcomp::glht' |
| glht.emmGrid | Support for 'multcomp::glht' |
| glht.emmlf | Support for 'multcomp::glht' |
| hpd.summary | Summarize an emmGrid from a Bayesian model |
| identity.emmc | Contrast families |
| joint_tests | Compute joint tests of the terms in a model |
| levels<-.emmGrid | Update an 'emmGrid' object |
| lsm | Wrappers for alternative naming of EMMs |
| lsm.options | Wrappers for alternative naming of EMMs |
| lsmeans | Wrappers for alternative naming of EMMs |
| lsmip | Wrappers for alternative naming of EMMs |
| lsmobj | Wrappers for alternative naming of EMMs |
| lstrends | Wrappers for alternative naming of EMMs |
| make.tran | Response-transformation extensions |
| mcmc-support | Support for MCMC-based estimation |
| mean_chg.emmc | Contrast families |
| MOats | Oats data in multivariate form |
| modelparm.emmwrap | Support for 'multcomp::glht' |
| models | Models supported in 'emmeans' |
| mvcontrast | Multivariate contrasts |
| neuralgia | Neuralgia data |
| nutrition | Nutrition data |
| oranges | Sales of oranges |
| pairs.emmGrid | Contrasts and linear functions of EMMs |
| pairwise.emmc | Contrast families |
| pigs | Effects of dietary protein on free plasma leucine concentration in pigs |
| plot.emmGrid | Plot an 'emmGrid' or 'summary_emm' object |
| plot.summary_emm | Plot an 'emmGrid' or 'summary_emm' object |
| pmm | Wrappers for alternative naming of EMMs |
| pmmeans | Wrappers for alternative naming of EMMs |
| pmmip | Wrappers for alternative naming of EMMs |
| pmmobj | Wrappers for alternative naming of EMMs |
| pmtrends | Wrappers for alternative naming of EMMs |
| poly.emmc | Contrast families |
| predict.emmGrid | Summaries, predictions, intervals, and tests for 'emmGrid' objects |
| print.emmGrid | Miscellaneous methods for 'emmGrid' objects |
| print.xtable_emm | Using 'xtable' for EMMs |
| pwpm | Pairwise P-value matrix (plus other statistics) |
| pwpp | Pairwise P-value plot |
| qdrg | Quick and dirty reference grid |
| rbind.emmGrid | Combine or subset 'emmGrid' objects |
| rbind.emm_list | Combine or subset 'emmGrid' objects |
| recover_data | Support functions for model extensions |
| recover_data.call | Support functions for model extensions |
| ref_grid | Create a reference grid from a fitted model |
| regrid | Reconstruct a reference grid with a new transformation or simulations |
| revpairwise.emmc | Contrast families |
| str.emmGrid | Miscellaneous methods for 'emmGrid' objects |
| subset.emmGrid | Combine or subset 'emmGrid' objects |
| summary.emmGrid | Summaries, predictions, intervals, and tests for 'emmGrid' objects |
| test | Summaries, predictions, intervals, and tests for 'emmGrid' objects |
| test.emmGrid | Summaries, predictions, intervals, and tests for 'emmGrid' objects |
| trt.vs.ctrl.emmc | Contrast families |
| trt.vs.ctrl1.emmc | Contrast families |
| trt.vs.ctrlk.emmc | Contrast families |
| tukey.emmc | Contrast families |
| ubds | Unbalanced dataset |
| update.emmGrid | Update an 'emmGrid' object |
| update.summary_emm | Update an 'emmGrid' object |
| vcov.emmGrid | Miscellaneous methods for 'emmGrid' objects |
| wrappers | Wrappers for alternative naming of EMMs |
| xtable.emmGrid | Using 'xtable' for EMMs |
| xtable.summary_emm | Using 'xtable' for EMMs |
| +.emmGrid | Combine or subset 'emmGrid' objects |
| .emm_basis | Support functions for model extensions |
| .emm_register | Support functions for model extensions |
| .recover_data | Support functions for model extensions |
| [.emmGrid | Combine or subset 'emmGrid' objects |
| [.summary_emm | Summaries, predictions, intervals, and tests for 'emmGrid' objects |


Welcome to Spring Travel
This reference application illustrates Spring Faces,
a software library that integrates Spring and JavaServerFaces technology in a portlet environment.
The key features illustrated in this sample include:
- A declarative navigation model enabling full browser button support and dynamic navigation rules
- A fine-grained state management model, including support for ConversationScope and ViewScope
- Modularization of web application functionality by domain use case, illustrating project structure best-practices
- Managed persistence contexts with the Java Persistence API (JPA)
- Unified Expression Language (EL) integration
- Declarative page authoring with Facelets, including applying reusable page layouts
- Exception handling support across all layers of the application
- Spring IDE tooling integration, with support for graphical flow modeling and visualization
Start your Spring Travel experience


The sample data set¶
Contents
Purpose¶
This Chapter gives a detailed description of the processing of a sample data set, which can be employed to familiarize with the workflow described in The typical M/EEG workflow.
Note
Going through the analysis exercise in this chapter is not a substitute for reading other chapters of this manual and understanding the concepts underlying MNE software.
Overview¶
The MNE software is accompanied by a sample data set which includes the MRI reconstructions created with FreeSurfer and the an MEG/EEG data set. These data were acquired with the Neuromag Vectorview system at MGH/HMS/MIT Athinoula A. Martinos Center Biomedical Imaging. EEG data from a 60-channel electrode cap was acquired simultaneously with the MEG. The original MRI data set was acquired with a Siemens 1.5 T Sonata scanner using an MPRAGE sequence.
Note
These data are provided solely for the purpose of getting familiar with the MNE software. They should not be redistributed to third parties. The data should not be used to evaluate the performance of the MEG or MRI system employed.
In the MEG/EEG experiment, checkerboard patterns were presented into the left and right visual field, interspersed by tones to the left or right ear. The interval between the stimuli was 750 ms. Occasionally a smiley face was presented at the center of the visual field. The subject was asked to press a key with the right index finger as soon as possible after the appearance of the face. A listing of the corresponding trigger codes is provided in Trigger codes for the sample data set.
Name |
#Contents |
|
|---|---|---|
LA |
1 |
Response to left-ear auditory stimulus |
RA |
2 |
Response to right-ear auditory stimulus |
LV |
3 |
Response to left visual field stimulus |
RV |
4 |
Response to right visual field stimulus |
smiley |
5 |
Response to the smiley face |
button |
32 |
Response triggered by the button press |
Setting up¶
The sample dataset can be downloaded automatically by doing:
>>> mne.datasets.sample.data_path(verbose=True)
Contents of the data set¶
The sample data set contains two main directories: MEG/sample
(the MEG/EEG
data) and subjects/sample
(the MRI reconstructions).
An overview of the data provided is given in Tables Contents of the MEG/sample directory. and Overview of the contents of the subjects/sample directory.. In addition to
subject sample , the MRI surface
reconstructions from another subject, morph ,
are provided to demonstrate the morphing capabilities of the MNE software.
File |
Contents |
|---|---|
sample/audvis_raw.fif |
The raw MEG/EEG data |
audvis.ave |
A template script for off-line averaging |
auvis.cov |
A template script for the computation of a noise-covariance matrix |
File / directory |
Contents |
|---|---|
bem |
Directory for the forward modelling data |
bem/watershed |
BEM surface segmentation data computed with the watershed algorithm |
bem/inner_skull.surf |
Inner skull surface for BEM |
bem/outer_skull.surf |
Outer skull surface for BEM |
bem/outer_skin.surf |
Skin surface for BEM |
sample-head.fif |
Skin surface in fif format for mne_analyze visualizations |
surf |
Surface reconstructions |
mri/T1 |
The T1-weighted MRI data employed in visualizations |
The following preprocessing steps have been already accomplished in the sample data set:
The MRI surface reconstructions have been computed using the FreeSurfer software.
The BEM surfaces have been created with the watershed algorithm, see Using the watershed algorithm.
The MEG/EEG raw data file has been checked with the utilities described in Cleaning the digital trigger channel and Fixing channel information.
Setting up subject-specific data¶
Structural MRIs¶
To set up the structural MRIs for processing with the Neuromag MRI viewer, MRIlab, say
mne_setup_mri
This command sets up the directories subjects/sample/mri/T1-neuromag
and subjects/sample/mri/brain-neuromag
.
For more information, see Setting up anatomical MR images for MRIlab.
Source space¶
The source space with a 5-mm grid spacing is set up by saying:
mne_setup_source_space --ico -6
This command sets up the source-space related files in directory subjects/sample/bem
as
described in Setting up the source space.
Boundary-element models¶
The geometry calculations for the single-layer boundary-element model are accomplished with the command:
mne_setup_forward_model --homog --surf --ico 4
This command sets up the homogeneous BEM-model related files
in directory subjects/sample/bem
as described in Setting up the boundary-element model. In
addition to the homogeneous BEM, you also need the three-layer BEM model,
which can be used for both EEG and MEG:
mne_setup_forward_model --surf --ico 4
The above commands employ the inner_skull.surf
, outer_skull.surf
,
and outer_skin.surf
triangulation files located in subjects/sample/bem
.
The option --ico 4
will create a model with 5120 triangles
on each surface. Depending on the speed of your computer, the three-layer
model may take quite a while to set up.
Setting up a custom EEG layout¶
A data specific EEG layout will facilitate viewing of the
EEG data. The MNE programs mne_browse_raw and mne_analyze look
for user-specific layouts in $HOME/.mne/lout
. Thus,
you can create an EEG layout for the sample data set with the following
commands:
mkdir -p $HOME/.mne/lout
cd $SAMPLE/MEG/sample
mne_make_eeg_layout --fif sample_audvis_raw.fif --lout $HOME/.mne/lout/sample-EEG.lout
Please refer to mne_make_eeg_layout for more information on mne_make_eeg_layout .
Note
It is usually sufficient to create one EEG layout for each electrode cap you are using in your experiment rather than using a different layout file for each data file generated using the same cap.
Previewing the data¶
Previewing your raw data before proceeding to averaging and computation of the current estimates is most important to avoid unintentional errors caused by noisy or dysfunctional channels, frequent eye blinks, inappropriate bandpass filtering etc.
One possible routemap for the preview session is outlined below:
Go to the MEG/EEG data directory:
cd $SAMPLE/MEG/sample
.Launch mne_browse_raw .
Open the raw data file
sample_audvis_raw.fif
from File/Open… .Switch all SSP vectors off from Adjust/Projection… .
Set the lowpass filter corner to a high value, e.g., 150 Hz from Adjust/Filter… .
Browse through all channels using the selections available under Adjust/Selection… and look for very noisy or flat channels. You should be able to readily identify two such channels among all MEG and EEG channels. You may need to click Remove DC to reliably associate the noisy or flat waveform with the channel name on the left. Also, experiment with switching the EEG average reference projection on and off and you will notice that the EEG bad channel cannot be seen after the projection.
Mark the channels you identified in step 6. bad for this viewing session by clicking on their channel names on the left. You can save the bad channel selection to the file from File/Apply bad channels . Bad channel marking can be removed by clicking on their channel names again and selecting File/Apply bad channels . Alternatively, you can use the utility mne_mark_bad_channels to set a bad channel selection, see mne_mark_bad_channels.
Switch the projections back on and change filter to a 40-Hz lowpass.
Compute a preliminary average for the left-ear auditory stimulus:
Open the averaging preferences dialog (Adjust/Averaging preferences… .
Set the time scale to -100…300 ms.
Click on the text next to Average: in the main window and press return. After a while, a topographical display appears with the averaged responses. Notice that the bad channels are not displayed.
Change to different layouts from Adjust/Full view layout… . Inspect both the MEG and EEG waveforms.
Compute a preliminary average for the right-ear auditory stimulus:
Open the averaging preferences.
Click on the Trace color… button and change the trace color to something different from the default yellow.
Change the text next to Average: to 2 and press return. Average to the right-ear tones will be computed. Compare the to sets of averages and verify that all channels show reasonable data.
Go to Windows/Manage averages… and delete the preliminary averages just computed.
After these steps, you are ready to proceed to the actual analysis.
Off-line averaging¶
Go to directory $SAMPLE/MEG/sample
. With help
of Description files for off-line averaging, familiarize yourself with the averaging
script audvis.ave
.
Using the averaging script interactively¶
You can invoke an averaging script in mne_browse_raw from Process/Average… .
Select the audvis.ave
script from the file selection
box that appears. Once averaging is complete, you can inspect the
details of the averaged responses in the Averages window,
which appears automatically. You can redisplay it from Windows/Show averages… . The window, which appears when you
select Adjust/Manage averages… allows
you to:
Select which conditions (categories) are displayed.
Change the trace colors.
Inspect the averaging log.
Save the averaged data.
Delete this set of averages.
Note
If you decide to save the averages in the interactive mode, use the name sample_audvis-ave.fif
for the result.
Using the averaging script in batch mode¶
The batch-mode version of mne_browse_raw , mne_process_raw can be used for averaging as well. Batch mode averaging can be done with the command:
mne_process_raw --raw sample_audvis_raw.fif `` ``--lowpass 40 --projoff `` ``--saveavetag -ave --ave audvis.ave
See mne_process_raw for command-line options.
As a result of running the averaging script a file called sample_audvis-ave.fif
is
created. It contains averages to the left and right ear auditory
as well as to the left and right visual field stimuli.
Viewing the off-line average¶
The average file computed in the previous section can be viewed in mne_browse_raw .
To view the averaged signals, invoke mne_browse_raw :
cd $SAMPLE/MEG/sample
mne_browse_raw &
This Section gives only very basic information about the use of mne_browse_raw for viewing evoked-response data. Please consult Browsing raw data with mne_browse_raw for more comprehensive information.
Loading the averages¶
mne_browse_raw loads all the available data from an average file at once:
Select Open evoked… from the File menu.
Select the average file
sample_audvis-ave.fif
file from the list and click OK .A topographical display of the waveforms with gradiometer channels included appears.
Inspecting the auditory data¶
Select the left and right ear auditory stimulus responses for display:
Select Manage averages… from the Adjust menu.
Click off all other conditions except the auditory ones.
Set the time scale and baseline:
Select Scales… from the Adjust menu.
Switch off Autoscale time range and set the Average time range from -200 to 500 ms.
Switch on Use average display baseline and set Average display baseline from -200 to 0 ms.
Click OK .
You can display a subset of responses from the topographical display by holding the shift key down and dragging with the mouse, left button down. When you drag on the response with just the left button down, the signal timing, and channel name are displayed at the bottom. If the left mouse button is down and you press shift down the time is give both in absolute units and relative to the point where shift was pressed down.
Observe the following:
The main deflection occurs around 100 ms over the left and right temporal areas.
The left-ear response (shown in yellow) is stronger on the right than on the left. The opposite is true for the right-ear response, shown in red.
Inspecting the visual data¶
Go back to the Manage averages… dialog and switch all other conditions except the visual ones.
Observe the following:
The left and right visual field responses are quite different in spatial distribution in the occipital area.
There is a later response in the right parietal area, almost identical to both visual stimuli.
Note
If you have the Neuromag software available, the averaged data can be also viewed in the Neuromag data plotter (xplotter ). See Using Neuromag software for instructions on how to use the Neuromag software at the MGH Martinos Center.
Computing the noise-covariance matrix¶
Another piece of information derived from the raw data file is the estimate for the noise-covariance matrix, which can be computed with the command:
mne_process_raw --raw sample_audvis_raw.fif --lowpass 40 --projon --savecovtag -cov --cov audvis.cov
Using the definitions in audvis.cov
, this command
will create the noise-covariance matrix file sample_audvis-cov.fif
.
In this case the projections are set on. The projection information
is then attached to the noise-covariance matrix and will be automatically
loaded when the inverse-operator decomposition is computed.
Note
You can study the contents of the covariance matrix computation description file audvis.cov
with the help of Description files for covariance matrix estimation.
MEG-MRI coordinate system alignment¶
The mne_analyze module of the MNE is one option for the coordinate alignment. It uses a triangulated scalp surface to facilitate the alignment.
Initial alignment¶
Follow these steps to make an initial approximation for the coordinate alignment.
Go to directory
MEG/sample
.Launch mne_analyze
Select File/Load digitizer data… and load the digitizer data from
sample_audvis_raw.fif
.Load an inflated surface for subject sample from File/Load surface…
Bring up the viewer window from View/Show viewer…
Click Options… in the viewer window. Make the following selections:
Switch left and right cortical surface display off.
Make the scalp transparent.
Switch Digitizer data on.
After a while, the digitizer points will be shown. The color of the circles indicates whether the point is inside (blue) or outside (red) of the scalp. The HPI coils are shown in green and the landmark locations in light blue or light red color. The initial alignment is way off!
Switch the Digitizer data off to get the big circles out of the way.
Bring up the coordinate alignment window from Adjust/Coordinate alignment…
Click on the RAP (Right Auricular Point) button. It turns red, indicating that you should select the point from the viewer window. Click at the approximate location of this point in the viewer. The button jumps up, turns to normal color, and the MRI coordinates of the point appear in the text fields next to the button.
Proceed similarly for the other two landmark points: Nasion and LAP (Left Auricular Point).
Press Align using fiducials . Notice that the coordinate transformation changes from a unit transformation (no rotation, no origin translation) to a one determined by the identified landmark locations. The rotation matrix (upper left 3 x 3 part of the transformation) should have positive values close to one on the diagonal. Three is a significant rotation around the x axis as indicated by elements (3,2) and (2,3) of the rotation matrix. The x and y values of the translation should be small and the z value should be negative, around -50 mm. An example of an initial coordinate transformation is shown in Example of an initial coordinate alignment..
Make the Digitizer data again visible from the options of the viewer window. Note that the points are now much closer to the scalp surface.
Refining the coordinate transformation¶
Before proceeding to the refinement procedure, it is useful to remove outlier digitizer points. When you rotate the image in the viewer window, you will notice that there is at least one such point over the right cheek. To discard this point:
Click on Discard in the Adjust coordinate alignment window.
Enter 10 for the distance of the points to be discarded.
Click done. The outlier point disappears.
The coordinate transformation can be adjusted manually with the arrow buttons in the middle part of the Adjust coordinate alignment dialog. These buttons move the digitizer points in the directions indicated by the amount listed next to each of the buttons.
An automatic iterative procedure, Iterative Closest Point (ICP) matching is also provided. At each iteration step
For each digitizer point, transformed from MEG to the MRI coordinate frame, the closest point on the triangulated surface is determined.
The best coordinate transformation aligning the digitizer points with the closest points on the head surface is computed.
In step 2 of the iteration, the nasion is assigned five times the weight of the other points since it can be assumed that the nasion is the easiest point to identify reliably from the surface image.
The ICP alignment can be invoked by entering the desired number of iterations next to the ICP align button followed by return or simply pressing the ICP align button. The iteration will converge in 10 to 20 steps.
Warning
Use the ICP alignment option in mne_analyze with caution. The iteration will not converge to a reasonable solution unless and initial alignment is performed first according to Initial alignment. Outlier points should be excluded as described above. No attempt is made to compensate for the possible distance of the digitized EEG electrode locations from the scalp.
Saving the transformation¶
To create a MRI fif description file which incorporates the
coordinate transformation click Save MRI set in
the Adjust coordinate alignment dialog.
This will create the MRI set file in the $SUBJECTS_DIR/sample/mri/T1-neuromag/sets
directory,
which was created by mne_setup_mri_data ,
see Structural MRIs. The file will be called
COR-
<username>- <date>- <time> .fif
where <username> is your login name.
You can also save transformation to a fif file through the Save… button. If the file does not exist, it will only contain the coordinate transformation. If the file exists it will be inserted to the appropriate context. An existing transformation will not be replaced unless Overwrite existing transform is checked in the save dialog.
Once you have saved the coordinate transformation, press Done and quit mne_analyze (File/Quit ).
Note
If you dismiss the alignment dialog before saving the transformation, it will be lost.
The forward solution¶
To compute the forward solution, say:
cd $SAMPLE/MEG/sample
mne_do_forward_solution --mindist 5 --spacing oct-6 --bem sample-5120-5120-5120 --meas sample_audvis-ave.fif
This produces an EEG and MEG forward solution with source
space points closer than 5 mm to the inner skull surface omitted.
The source space created in Source space will be employed.
As the output from this command will indicate The forward solution
will be stored in file sample_audvis-ave-oct-6-fwd.fif
.
This command uses the three-layer BEM model sample-5120-5120-5120-bem-sol.fif
created
in Boundary-element models. If you want to use the single-compartment
BEM sample-5120-bem-sol.fif
usable for MEG data only
say:
cd $SAMPLE/MEG/sample
mne_do_forward_solution --mindist 5 --spacing oct-6 --meas sample_audvis-ave.fif --bem sample-5120 --megonly
The inverse operator decomposition¶
The inverse operator information, necessary for the computation of the MNEs and dSPMs is accomplished by the command:
mne_do_inverse_operator --fwd sample_audvis-ave-oct-6-fwd.fif --depth --loose 0.2 --meg --eeg
This produces a depth-weighted inverse operator decomposition with ‘loose’ orientation constraint applied. More details on the convenience script mne_do_inverse_operator are provided in Calculating the inverse operator.
The above command employs both EEG and MEG data. To create separate solution for EEG and MEG, run the commands:
mne_do_inverse_operator --fwd sample_audvis-ave-oct-6-fwd.fif --depth --loose 0.2 --meg
and
mne_do_inverse_operator --fwd sample_audvis-ave-oct-6-fwd.fif --depth --loose 0.2 --eeg
Note
If you were using a single-compartment BEM to compute the forward solution, you can only compute the MEG inverse operator.
Interactive analysis¶
The most exciting part of this exercise is to explore the data and the current estimates in mne_analyze . This section contains some useful steps to get you started. A lot of information about the capabilities of mne_analyze is given in Interactive analysis with mne_analyze. Batch-mode processing with mne_make_movie is discussed in Producing movies and snapshots. Cross-subject averaging is covered in Morphing and averaging.
Before launching mne_analyze it
is advisable to go to the directory MEG/sample
. The
current working directory can be also changed from mne_analyze .
Getting started¶
Launch mne_analyze . Select Help/On GLX… , which brings up a window containing Open GL rendering context information. If first line in the information dialog that pops up says Nondirect rendering context instead of Direct rendering context you will experience slow graphics performance. To fix this, your system software, graphics adapter or both need to be updated. Consult a computer support person for further information.
Load surfaces¶
It is reasonable to start the analysis by loading the display surfaces: choose the inflated surface for subject sample from the dialog that appears when you select File/Load surface… .
Load the data¶
Select File/Open… . Select sample_audvis-ave.fif
as
your data file and select the Left auditory data
set. Select the inverse operator sample_audvis-ave-oct-6-meg-eeg-inv.fif
and
press OK . After a while the signals
appear in the sample waveform and topographical displays. Click
on the N100m peak in the auditory response. A dSPM map appears in
the main surface display.
Show field and potential maps¶
Select Windows/Show viewer… . After a while the viewer window appears. Click on the N100m peak again. Once the field map preparation computations are complete, the magnetic field and potential maps appear. Investigate the viewer window options with help of The viewer.
Show current estimates¶
The options affecting the current estimates are accessible from Adjust/Estimate parameters… . With help of Working with current estimates, investigate the effects of the parameter settings.
Labels and timecourses¶
While in directory MEG/sample
, create a directory
called label
:
mkdir label
Using the information in Creating new label files, create two
labels A-lh.label
and A-rh.label
in the
approximate location of the left and right auditory cortices. Save
these labels in the newly created label
directory.
Load all labels from the label
directory and
investigate the timecourses in these two labels as well as at individual
vertices. Information on label processing can be found from Inquiring timecourses.
Morphing¶
Goto to $SUBJECTS_DIR
and create the directory morph-maps
.
Load the inflated surface for subject morph as
the morphing surfaces. Try switching between the original and morphing
surfaces. More information about morphing is available in Morphing and
in Morphing and averaging.
There is also a left-hemisphere occipital patch file available for subject morph . Load a righ-hemifield visual response instead of the auditory one and investigate mapping of the current estimates on the patch.


South African trade minister in Cairo for Africa 2019 Conference
by MENACAIRO - 22 November 2019: South African Minister of Trade and Industry Ebrahim Patel arrived here on Friday to participate in the Africa 2019 Conference, to kick off today under the auspices of President Abdel Fattah El Sisi.
The two-day event, organized by the Ministry of Investment and International Cooperation in cooperation with the foreign and trade ministries, is set to be attended by more than 66 figures.
The participants include Prime Minister Mostafa Madbouli, Foreign Minister Sameh Shoukry, Investment Minister Sahar Nasr, Electricity Minister Mohamed Shaker, Public Business Sector Minister Hisham Tawfiq and Trade Minister Amr Nassar.
The event is scheduled to be attended by some 2,000 local, African and foreign businesspersons and investors


Krystian Kuzyk
Computer Programmer/Analyst
Objectives
To use my analytical and problem-solving skills and knowledge in an organization geared towards designing and implementing innovative and efficient technical solutions for personal and business use
Key Skills and Competencies
- Detail-oriented database programmer and professional front end web developer with excellent technical communication and strong analytical skills.
- Key skills include C#, SQL, Oracle, ASP.Net, JavaScript, TypeScript, HTML, PHP, and jQuery
- Capable of writing technical and business documents clearly and concisely, including: user manuals, memos, reports, proposals and instructions
- Exceptional software understanding in Visual Studio, MySQL, Oracle Database, GitHub, Eclipse, NetBeans, WebStorm, and Google analytics
General Competencies:
- Collaboration and team building leading to high team performance
- Project Management, connecting system design and development to business objectives
- Systematic and analytical thinking and problem solving
Technical Competencies:
- Database Design
- Object-oriented Programming Methodologies
- Algorithm Design and Development
- Technology Standards and Procedures
Education
Computer Programmer/Analyst Program
Conestoga College, Kitchener, Ontario
Studies included:
- Programming in Dynamic Websites, Microsoft Enterprise Applications, Software Quality Assurance, Mobile Applications, Java Enterprise Applications
- Database expertise in Application Development and S.Q.L
- Systems Development related to Computer Security, Information Technology Management
- Networking Technology Infrastructure
Work Experience
Project Team Lead – Walmart Canada
- Led store renovations to meet corporate blueprint standard
- Understanding of logistics and management of offsite warehouses, incoming and outgoing freight
- Responsible for renovation coordination with minimal disruption to store operations
Fulfillment Department Manager – Walmart Canada
- Team leader for warehouse logistics team, focused on daily completion of inventory restocking
- Maintained thorough understanding of store operations and logistics
- Responsible for team performance and efficiency
Sales Associate – The Source
- Customer service focused role, providing information and guidance for customer purchases, maintaining a positive and helpful attitude
- Responsibilities included inventory integrity and store shelf presentation