One of the activities we have done with our faculty, staff and students is what we call “mini design sprints.” A design sprint is an activity that takes place over the course of a week, and involves a group of participants (see sidebar); we are calling these mini-design sprints because they can be completed in under an hour, and while they might be done in a group setting, they can also work one-on-one.
Our first mini design sprints were with colleagues in the library. We set up meetings with different groups across the libraries, and invited anyone to attend; we generally had four to six people show up. After a brief introduction, they are given a piece of paper with four mobile phone templates on it (downloaded from Sneakpeekit) and asked to sketch a design in response to a question. For example:
Design your department page in mobile - show the most important content/functions for you or your patrons in the visible area of the screen. You can test out more than one idea.
We project the question on the screen so people could easily refer to it. The participants are given six or eight minutes to complete their sketches. (We started with eight minutes then discovered that was a bit too long.)
Design Sprints… In 100 Words
On Day 1, the group (designers and non-designers) gets together to go over a scenario or problem needing a solution. They discuss the who, what and why. On Day 2, the group sketches possible solutions to the problem. The process may take anywhere between 5-20 minutes. On Day 3, the group reviews the sketches and votes on the solution to implement. On Day 4, the design team produces a low-fi working prototype or proof of concept to illustrate the solution. Finally on Day 5, the prototype is tested with actual users and feedback is collected.
Once the sketches are completed, one of the facilitators goes around the room and takes a picture of each template sheet with their phone and uploads it to Box (the campus’s shared document storage system). We then navigate to that Box folder on the projected screen, and all look at each template in turn. The creator quickly describes what they have done and others may ask questions or give feedback. Uploading to Box is also useful if you have people teleconferencing in - they can share their sketches and view the other sketches easily.
Keen readers of this blog will know that we produced a Master Discovery Report with findings from our earlier discovery activities, and a series of recommendations based on this research.
After the participants have put down their pencils, and discussed their sketches, we put up a new note on the screen:
Would the following recommendations from our UX research make you modify your design?
We then bring up, slide by slide, a series of recommendations that we thought might inspire conversation. Each recommendation is followed, in parentheses, by its source. For example, again from our internal departmental sessions:
Associate people with services on second level or departmental pages (Staff Focus Groups).
Provide easy ways for students to communicate with library staff on the website (User Testing: One on One).
The answers to these questions can be quite different from department to department, depending on how regularly they interact with the public. That is, a cataloger in our Metadata & Discovery Services department might have relatively minimal interactions with the public, while a member of Learning and Research Services, would have regular contact. In each case, it’s worth discussing what is the best way of providing service to the public via the web.
Another recommendation we put up, again during the departmental design sprint:
Make sure popular tasks and resources are easily available from the homepage (User Testing: One on One).
This recommendation was from looking at the overall Libraries’ website home page, but we were curious how it might translate to each department’s splash page. It also led to discussion about what exactly are your department’s most popular tasks (from a web perspective) and then, how do you know that they are popular?
Overall, we found that mini design sprints structured in this way worked quite well. Even if people were not accomplished artists, the subsequent discussion questions gave them a chance to participate and think a bit more about what they wanted the new website to accomplish. We chose to use a mobile view because it forces users to focus on the most important tasks. We also discovered with a trial run-through of a desktop template that there was just too much room to fill. In mobile, the participants always had the option of adding additional content below the fold–i.e., in one of the other three squares provided on the print out.
For our student and faculty sprints, we did things slightly differently because of scheduling issues. It’s challenging enough scheduling people who work together, but finding a time and a room for a diverse group of students or faculty is next to impossible, so we chose instead to do them one-on-one. With faculty, we asked librarians to reach out to their faculty to find willing participants; for students, we set up our usual guerilla testing table, complete with free coffee, and acquired participants that way.
With the first round of design sprints done, we now have more ideas to help with prototyping, we have raised awareness of the redesign, and we have given more people an opportunity to participate in the process. Those are the three things we hoped to achieve with these mini design sprints, and we feel that this process was successful in achieving them. We found referring back to recommendations from our report was an excellent way of generating discussion. In terms of things that might be improved, it would be nice to find a better way to get broader faculty participation - but this is true of all our of UX activities.
Using our UX Research
We have spent a good deal of time on our UX and research activities, so we want to be sure we make good use of them. As such, we are trying to refer back to the recommendations from the Master Discovery Report whenever possible. In the case of these mini design sprints, it was to focus the conversation. As we build out prototypes, we want to refer back to research for why we have made certain decisions. And then as we unveil the new site, we hope to have a key that can explain certain aspects of the new design. There is always going to be a significant component of our new site that relies on industry best practices or the years of experience of the Web & Application Development team, or that is just trying something new; but we want to ground as many decisions as possible in UX research.


|
XPMP2
X-Plane multiplayer library 2 - using instancing
|
The XPMP2 Library and the [XPMP2-Sample plugin]/https://github.com/TwinFan/XPMP2-Sample) are now two separate GitHub repositories.
It is recommended that you include XPMP2
as a submodule in your project.
The XPMP2-Sample
repo is configured as a Public Template, so you can immediately base your own project on it. Please note that XPMP2-Sample
includes XPMP2
as a submodule, so you need to checkout those, too, e.g. on the command line by doing
Both repositories share many similarities when it comes to building. There are four options to build from sources:
| Options | Windows | MacOS (universal) | Linux |
|---|---|---|---|
| IDE | Visual Studio 2022 | XCode 12 | - |
| Docker | Mingw64 | clang, SDK 12 | Focal and Bionic |
| CMake | VS 2022 / NMAKE | XCode 12 / ninja | Focal and Bionic / ninja |
| Github Actions | Visual Studio 2022 | XCode 12 | Focal |
Results are in build-win
.
My development environment is Mac OS, so expect the XCode environment to be maintained best. Open XPMP2.xcodeproj
resp. XPMP2-Sample.xcodeproj
in XCode.
In the XPMP2-Sample
XCode Build Settings you may want to change the definition of the User-Defined build macro XPLANE11_ROOT
: Put in the path to your X-Plane 11 installation's root path, then the XPMP2 binaries will be installed right there in the appropriate Resources/plugins
sub-folder structure.
Docker environments based on Ubuntu 20.04 and 18.04 are used, which can build all 3 platforms, Linux even in two flavors.
cd
to the project's docker
folder, and enter make
for all XPMP2 library targets on all platforms.The following make
targets are available:
lin
builds Linux on Ubuntu 20.04lin-bionic
builds Linux on Ubuntu 18.04mac-arm
builds MacOS for Apple Silicon using clang
as cross compilermac-x86
builds MacOS for x86 using clang
as cross compilermac
builds mac-arm
and mac-x86
and then combines the results into a univeral binarywin
builds Windows using a Mingw64 cross compiler setupbash_focal
starts a bash prompt in the Ubuntu 20.04 docker containerbash_bionic
starts a bash prompt in the Ubuntu 18.04 docker containerdoc
builds the documentation based on Doxygen, will probably only work on a Mac with Doxygen provided in Applications/Doxygen.app
clean
removes all build-<platform>
foldersFind results in the respective build-<platform>
folder, the XPMP2
library right there, the Sample plugins in their proper <platform>_x64
subfolder.
For more details and background information on the provided Docker environments see the docker/README.md
.
Given a proper local setup with a suitable compiler, CMake, and Ninja installed, you can just locally build the sources from the CMakeList.txt
file, e.g. like this:
This is precicely how the Mac and Linux builds are done in Github Actions.
The GitHub workflow .github/workflows/build.yml
builds the plugin in GitHubs CD/CI environment. build.yml
calls a number of custom composite actions available in .github/actions
, each coming with its own README.md
.
The workflow builds Linux, MacOS, and Windows plugin binaries and provides them as artifacts, so you can download the result from the Actions tab on GitHub.
The Apple build of the XPMP2-Sample
plugin can be signed and notarized, provided that the following Repository Secrets are defined in the repository's settings (Settings > Secrets > Actions):
MACOS_CERTIFICATE
: Base64-encoded .p12 certificate as explained hereMACOS_CERT_PWD
: The password for the above .p12 certificate file exportNOTARIZATION_USERNAME
: Apple ID for notarization service (parameter --apple-id
to notarytool
)NOTARIZATION_TEAM
: Team ID for notarization service (parameter --team-id
to notarytool
)NOTARIZATION_PASSWORD
: App-specific password for notarization service (parameter --password
to notarytool
)You can avoid separate builds and instead include XPMP2
directly into your project. Recommended steps are:
In your
CMakeLists.txt` file include XPMP2 using something like the following in appropriate places:


VIRTUAL SEDUCTION (1995) A "Turkey of the Week" film review by Justin Felix. Copyright 1998 Justin Felix.
Rating: ** (out of five)
Story by Michelle Gamble-Risley and William Widmaier. Screenplay by Michelle Gamble-Risley, William Widmaier, and Paul Ziller. Directed by Paul Ziller. Starring Jeff Fahey, Ami Dolenz, Carrie Genzel, Meshach Taylor. Rated R (contains nudity, violence, and profanity) 89 mins.
Synopsis: A man whose lover, Paris, was murdered agrees to test out an experimental virtual reality home unit system. The subject escapes from the real world and his current girlfriend, Laura, and becomes addicted to virtual reality, which, due to a design flaw in his unit, recreates the dead Paris.
Comments: VIRTUAL SEDUCTION, executive produced by Roger Corman and Lance H. Robbins, serves as a cheaply-made precursor to STRANGE DAYS, a far superior film. Both movies deal with desperate men who have trouble relating to their current lovers because they are (ab)using technology to be with former lovers (in STRANGE DAYS, the technology utilized recorded dreams rather than virtual reality). Interestingly, both films also take place a couple of years from now during the turn of the new millenium, though STRANGE DAYS uses the setting far more effectively. This exemplifies the problem with VIRTUAL SEDUCTION. It's not bad for what it is: low-budget science fiction concerning the psychological dangers of virtual reality. Unfortunately, it's been done before and since in much better films, a fact which ultimately leaves the sci-fi fan bored by this movie.
VIRTUAL SEDUCTION has many faults (one of them is the fact that the video inexplicably has its own trailer before it begins). The film's script explores the possibilities of virtual reality interestingly at first, but its treatment of the subject matter gets heavy-handed and wooden as the movie progresses. Many important scenes seem too dark; the lighting could have been improved significantly. The cast, a collection of veteran B-movie actors and sitcom regulars, do only a mediocre job in their roles. Jeff Fahey, of the original LAWNMOWER MAN, convincingly, though unenergetically, plays the lead character. Carrie Genzel plays Paris, the VR lover, but Ami Dolenz, as the current love interest, seems like a much more interesting and attractive character with a caring personality, which doesn't lend credence to the film's premise. Meschach Taylor, of the once popular DESIGNING WOMEN sitcom, adequately plays a scientist working on the project, but his performance isn't something to write home about either.
VIRTUAL SEDUCTION is one of those harmless movies to which you could do some light manual labor and not mind having it on in the background. In other words, one could fold laundry while glancing up at it every now and then, but it's rather boring to just sit and watch. The movie is surprisingly not as violent as one expects from B-movies in this genre, but it is still an adult R-rated film due to sexual situations and a suicide attempt. This turkey, ultimately, isn't awful, but it's not particularly interesting or unique either. Don't be seduced into watching this movie unless you've got several loads of laundry and nothing else to watch.
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


Pre-processor processes our program before going to the compiler. You may not get it right now but will soon understand what it means.
How to Declare
Pre-processor directives begin with a hash symbol #. Preprocessor directives are preprocessor commands.
The most common preprocessor directive is
#include
Here, #include is a preprocessor directive and it makes header file like iostream available for us i.e. include header file in our program.
Let's take another example of a pre-processor directive.
#define PI 3.14
Here, #define is a pre-processor directive. It is used to define something like here we have defined that PI is 3.14. So, before going to the compiler, if PI comes anywhere in the program, it will be replaced by 3.14.
Following is a C++ program to find the area of a circle.
#include <iostream>
#define PI 3.14
using namespace std;
int main(){
int radius;
float area;
cout << "Enter radius of circle" << endl;
cin >> radius;
area = PI*radius*radius;
cout << "Area of circle is " << area << endl;
return 0;
}
4
Area of circle is 50.24
The only thing that you should understand here is that in our program, PI is replaced by 3.14 whenever it came in the program even before compiling. So, PI*radius*radius - will be 3.14*radius*radius.
Macros with Arguments
#define can be used to write macro definitions as well as shown below. Macros are also like functions but are a bit different from that. They can also take arguments. Let's see an example to understand how to use these.
#define area(r) (3.14*r*r)
Let's see an example to print the area of a circle using macros
#include <iostream>
#define area(r) (3.14*r*r)
using namespace std;
int main(){
int radius;
float area;
cout << "Enter radius of circle" << endl;
cin >> radius;
area = area(radius);
cout << "Area of circle is " << area << endl;
return 0;
}
4
Area of circle is 50.24
We have defined a macro 'area' which takes one argument that is 'r'. So when we called area(radius), it got replaced by 3.14*radius*radius.
It is like we have defined something and whenever it will appear in our program, will be replaced by that definition.
Let's Compare Macro with Function
We have just seen an example to print the area of a circle using macros. Now let's see the same example using function.
#include <iostream>
using namespace std;
float CircleArea(int r)
{
float a;
a = 3.14*r*r;
int radius;
return a;
}
int main(){
int radius;
float area;
cout <<; "Enter radius of circle" << endl;
cin >> radius;
area = CircleArea(radius);
cout << "Area of circle is " << area << endl;
return 0;
}
4
Area of circle is 50.24
Let's have a look at the basic differences between a macro and a function.
The first difference is that macros replace codes by their value ( as it replaced area(r) with (3.14*r*r) ). So, every time code will be allocated some space. This means that every time area(r) will appear, it will allocate space in memory. But this is not the case with function.
Secondly, function call takes some time but macro is defined before the actual program. So, macro is faster.
First of all, convince yourself that you are the best because rest of your life is going to go proving this to others
-Wasim Akram


Hello!
My name is Valentyn Bilousov. I am Front End Developer in New York city. I love working with web technologies, studying them and tackling challenging problems.
Over the past months, I've honed my skills in order to be full-stack-developer at web development industry. Before that, I finished my education in Kharkov, Ukraine. So I can also speak in Russian and Ukrainian languages at a professional level.
I'm currently looking for opportunities to write production quality code every day in order to improve my abilities and skills. I'm hoping to work on projects that can positively impact the lives of other people. If my work can make at least one other person happy, it was worth it.
This position includes working with PHP, MySQL, CodeIgniter, jQuery, JavaScript, HTML and CSS.
My roles and responsibilites:
We developed a range of projects, from small corporate websites to large platforms. Mostly NYDVS working with marketing agencies.
My roles and responsibilites:
Kharkov Region, Ukraine
Some highlights:
This simple page web site. This site is fully responsive and can be using as a Photo Portfolio or Photo Gallery
Built using Skeleton, JQuery, Google fonts, Magnificant Popup plugin, fontawesome.io.
View ProjectWeb site for creating a single page business card and then convert it to PDF format. Also this site is using a Google sign-in method and firebase. So, after you created a business card, page send all your data to firebase and then redirect your to another page and this page read data from firebase.
Built using Bootstrap, jQuery, JavaScript, Underscore.js, bootsnip.com, pdflayer API.
View ProjectFind essential life elements on the go in NYC: WiFi hotspots, subway entrances, and restrooms. Via Google Maps API, display the places of interest in a given area. Detecting the current location, indicate the accesses nearest to the user. User can search by address or/and zip code for planning trips in advance.
Built using JavaScript, Google Maps API and NYC Open Data API.
View ProjectThis Site shows news from four different sources (Reddit, Digg, Mashable and BuzzFeed). All data received throw the API.
Built using JavaScript and news APIs.
View Project


Files CCore/inc/InstanceLock.h CCore/src/InstanceLock.cpp
This class can be used to prevent a creation of multiple objects of the given class. The class is thread-safe.
template <class T,ulen Count=1>
class InstanceLock : NoCopy
{
ulen index;
public:
explicit InstanceLock(StrLen name,ulen index=0); // index<Count
~InstanceLock();
ulen getInstanceIndex() const { return index; }
};
The class constructor will throw an exception if an object with the same index has already being created. So up to the Count objects of this type can exist simultaneously each with a unique instance index. The argument name is used in the exception message. It should name the class.
getInstanceIndex() returns the instance index.
Here is a typical usage example:
class SomeClass : InstanceLock<SomeClass> { .... };
This will prevent the creation of multiple objects of the class SomeClass.


We maintain one of the largest inventory in the United States and have a wide product selection.
We Offer Same Day Shipping For Orders Placed Before 12 Noon CST.
We will contact you within 24 hours for a free quote.
Lorem
Our innovative products are produced utilizing state-of-the-art manufacturing techniques and materials. Universal's Total Quality Management system ensures we manufacture consistently high-quality products. Our commitment to customer service, is unmatched - our customers come first. We take a hands-on approach to customer service, and our knowledgeable sales staff and product engineers are always available to answer general inquiries and address technical issues. We have the capability and experience in manufacturing custom products for our customers. Outsourced manufacturing is our core competency and our process-oriented approach enables Universal to provide customers with a turnkey solution from value-added product evaluation, design and engineering to logistics, warehousing and distribution.
Universal Scaffolding & Equipment has a broad range of manufacturing capabilities, including casting, extruding, forging, machining, and stamping.We also offer a broad range of finishing techniques, including hot-dip galvanizing, porcelain enamel coating, powder coating, and zinc plating. Our engineering department specifies all raw materials procured for the manufacturing process. We maintain our own tool and die shop to expedite sample production and help meet customer delivery requirements.
Universal Scaffolding & Equipment's extensive engineering and design knowledge allows our engineering team to develop efficient designs for all industrial and commercial applications, from complex to simple. Our engineering team regularly assists our customers with the design of both interior and exterior scaffolding solutions for all types of construction projects, shoring designs, and complex industrial applications, using systems such as our Uni-Lock and our Cup-Lock product lines. Our engineers have the ability to provide our customers with stamped, engineered design drawings, material lists, and underlying load calculations.


{% extends "_layout/base.html" %} {% block content %}
Are you sure you wish to delete cabinet "{{cabinet.name}}". This action cannot be undone.


BRBeaconAdvertiser Class Reference
| Inherits from | NSObject |
|---|---|
| Conforms to | CBPeripheralManagerDelegate |
| Declared in | BRBeaconAdvertiser.h BRBeaconAdvertiser.m |
Other Methods
– startAdvertising:
Starts advertising {@code advertisementData}
- (void)startAdvertising:(NSDictionary *)advertisementData
Parameters
advertisementData |
A dictionary holding the data to be transmitted. |
|---|
Discussion
Starts advertising {@code advertisementData}
Declared In
BRBeaconAdvertiser.h
– startAdvertisingDiscoveryMessage
Starts sending advertising messages with a list of UUIDs.
- (void)startAdvertisingDiscoveryMessage
Discussion
Starts sending advertising messages with a list of UUIDs.
Declared In
BRBeaconAdvertiser.h
– stopAdvertising
Stops advertising data.
- (void)stopAdvertising
Discussion
Stops advertising data.
Declared In
BRBeaconAdvertiser.h
Other Methods
– peripheralManagerDidUpdateState:
- (void)peripheralManagerDidUpdateState:(CBPeripheralManager *)peripheral
– peripheralManagerDidStartAdvertising:error:
- (void)peripheralManagerDidStartAdvertising:(CBPeripheralManager *)peripheral error:(NSError *)error


|
| class | FactoryGenerator |
| | Prototype for coroutine-like iterators that generate elements such as combinations. More...
|
| |
| class | PermutationGenerator |
| | Generates all permutations on a number of letters. More...
|
| |
| class | CombinationGenerator |
| | Generates all combinations on a number of letters making a number of choices. More...
|
| |
| struct | ArrayVectorWrapper |
| | Wrapping array and vector in the same interface. More...
|
| |
| struct | HalfIdempotentVariables |
| | Variables \(x_1,...,x_n,y_1,...,y_n\) with \(y_i^2=y_i\) and \(|x_i|=1\), \(|y_i|=0\). More...
|
| |
| struct | TwistedChernVariables |
| | The twisted Chern generators as variables \(\gamma_{s,j}\). More...
|
| |
| class | TwistedChernBasis |
| | Class for half-idempotent symmetric polynomials. More...
|
| |
| class | BaseContainer |
| | The base of all monomial containers. More...
|
| |
| class | DefaultContainer |
| | The default ordered/unordered monomial container. More...
|
| |
| class | Polynomial |
| | Class for polynomials in multiple variables with relations. More...
|
| |
| struct | StandardVariables |
| | The standard variables \(x_i\) in a polynomial, with \(|x_i|=1\) and no relations. More...
|
| |
| struct | ElementarySymmetricVariables |
| | Variables \(e_1,...,e_n\) of degrees \(|e_i|=i\). More...
|
| |
| class | PolynomialBasis |
| | Factory class that provides the general interface of a generating basis for a subring of a polynomial ring. More...
|
| |
| class | SymmetricBasis |
| | Class for symmetric polynomials with no relations, allowing transformation from \(x_i\) variables to \(e_i\) variables and vice-versa. More...
|
| |
|
| template<typename T , typename hasher = boost_hash> |
| size_t | generic_hasher (const T &v) |
| | A generic hashing function that calls other hashing functions. More...
|
| |
| template<typename R , typename T , typename S > |
| R | general_compute_degree (const T &exp, const S &dim) |
| | Degree computation given exponent and dimensions (grading). More...
|
| |
| template<class T > |
| std::vector< std::vector< T > > | all_permutations (T n) |
| | Returns vector of all permutations on n letters. More...
|
| |
| template<class T > |
| std::vector< std::vector< T > > | all_combinations (T n, T m) |
| | Returns vector of all combinations on n letters choosing m many. More...
|
| |
| template<class xy_poly_t , class chern_poly_t > |
| void | print_half_idempotent_relations (int n, bool print=1, bool verify=1, bool verify_verbose=1) |
| | Prints the relations of \(\Big(\mathbf Z[x_1,...,x_n,y_1,...,y_n]/(y_i^2=y_i)\Big)^{\Sigma_n}\). More...
|
| |
| template<class container_t > |
| std::ostream & | operator<< (std::ostream &os, const Polynomial< container_t > &a) |
| | Prints polynomial to output stream. More...
|
| |
The namespace which contains every method and class in the library.
| void symmp::print_half_idempotent_relations |
( |
int |
n, |
|
|
bool |
print = 1 , |
|
|
bool |
verify = 1 , |
|
|
bool |
verify_verbose = 1 |
|
) |
| |
Prints the relations of \(\Big(\mathbf Z[x_1,...,x_n,y_1,...,y_n]/(y_i^2=y_i)\Big)^{\Sigma_n}\).
The generators \(\alpha_i, c_i, \gamma_{s,j}\) are printed as a_i, c_i, c_{s,j}
in the console.
- Template Parameters
-
| xy_poly_t | The type of polynomial on the \(x_i,y_i\) variables |
| chern_poly_t | The type of polynomial on the \(\gamma_{s,j}\) variables |
- Parameters
-
| n | Half the number of variables (the \(n\)) |
| print | Whether we want to print the relations to the console |
| verify | Whether to verify the relations |
| verify_verbose | Whether to verify and print the verification to the console |


Opensdfsdf me!
Largesdf modal
Small modal
Toggle Animation ({{ animationsEnabled }})
Selection from a modal: {{ selected }}


Ipass project Natan Houwaart
Related Pages
Here is a list of all related documentation pages:
readme
readme
Use
Buffering
Rationale
Acknowledgements
readme
readme
readme
readme
readme
readme
readme
readme
readme
readme
readme
readme
Pins
Ports
Character I/O
Graphics
Peripherals
Targets
i2c
Timing
Analog interfaces
Notes
readme
readme
readme
readme
readme
readme
readme
readme
readme
readme
readme
Generated by
1.8.13


Logs the specified message at the debug
level.
logger.debug( "debug message" );
Logs the specified message at the error
level.
logger.error( "error message" );
Returns the log level.
logger.getLevel();
the log level
Logs the specified message at the info
level.
logger.info( "infomation message" );
Logs the specified message at the log
level.
logger.log( "log message" );
Sets the log level. The log level must be one of the following:
The order of levels is log
> error
> warn
> info
> debug
.
Logs which are higher than or equals to the log level are logged.
Setting the log level to warn
, for instance, logs of the levels error
and warn
are logged.
The default log level is debug
.
logger.setLevel( "debug" );
the log level
this;
Logs the specified message at the info
level.
logger.warn( "warning message" );
Generated using TypeDoc
Provides configurable logging functions. Please note that the default log level is
debug
.logger.log( "log message" );


This is the most basic example of cropper
implementation. By default cropping area is centered and takes 80% of image space. The image is
resizable, but should be wrapped in
block element with fixed height.
This example demonstrates default options, but with hidden black modal layer above the cropper. To hide the modal set modal
option to false
.
If visible, modal color
can be easily changed in css.
This example demonstrates cropped area that has fixed position
and can't be moved. Although it isn't movable, other options remain available:
resize, dragging, callbacks, aspect
ratios, modal etc.
This example demonstrates cropped area that has fixed size
and can't be resized. Although it isn't resizable, other options remain available:
moving, dragging, callbacks, aspect
ratios, modal etc.
In this example cropping zone is not rendered automatically when initialize and available only on a new drag. By default, cropping zone is always visible
and can be hidden by
setting autoCrop
option to false
.
In this example the user can't drag the image within container, but can drag cropping area.. By default, this feature is disabled and can be enabled by setting
movable
option
to false
.
Thix example demonstrates fixed 16:9
dragging (selection) ratio. By default, aspect ratio isn't specified and is free. Optional aspect ratios are
also available and can be specified
using aspectRatio
option.
Thix example demonstrates fixed 4:3
dragging (selection) ratio. By default, aspect ratio isn't specified and is free. Optional aspect ratios are
also available and can be specified
using aspectRatio
option.
This example demonstrates the minimum
width and height (px of original image) of the cropping zone. Better use this option only when you are sure
that the image has this minimum
width and height. By default, both values aren't specified.
This example demonstrates the ability to disable zoom
feature, it works in both options: disables zoom on scroll and zoom on touch. By default,
image cropper is zoomable, to
disable zooming set zoomable
option to false
.


Tari Protocol Discussion 13
Thursday’s Tari protocol architecture discussion covered Tari’s second layer network and how it will handle digital assets. From previous discussions, the community believes Tari’s second layer should be fast and cheap. The slow, secure, and decentralized base layer can be referenced when necessary to settle disputes.
Thursday’s discussion examined:
- How second layer validator nodes might earn fees for their work
- How the base and second layers might achieve consensus with each other using merkle-root checkpoints
- The benefits of non-Turing complete digital asset contracts (smaller attack surface, ease of use, no halting problem)
The full discussion set the stage for a Monday discussion on how various block times and block sizes might support the second layer ‘digital assets network’.
Join us for our next discussion on Freenode in #tari-dev.
Discussion times proposed by the Tari community:
Mondays: 8pm CAT (1pm EST)
Thursdays: 11am CAT (4am EST)
To keep up with the latest Tari developments, you can follow the project on Twitter.
Transcript of Thursday’s discussion
4:04 AM <@cjs77> I think it’s time to share some ideas around how Digital Assets in Tari might be handled
4:04 AM <@cjs77> We’ve covered the bases on the Base Layer (and please comment on the PRs in Github), so let’s start felshing out some thoughts on the 2nd layer
4:10 AM <@cjs77> The main idea is that we have a 2nd layer that is fast and cheap to handle Digital Assets (DA)
4:11 AM <@cjs77> The second layer network (let’s call it the Digital Asset Network, or DAN) is made up of Validator Nodes — nodes that manage all the state and execute instructions related to DAs that they manage
4:26 AM <@cjs77> A key ideas is that Scalability is achieved by sacrificing decentralisation. Not *all* VNs manage *every* asset. Assets are managed by small sets of validator node committees. These committees reach consensus on DA state amongst themselves. But we potentially have a “slow” and “expensive” base layer to fall back on in case of dispute,
4:27 AM <@cjs77> A key ideas is that Scalability is achieved by sacrificing decentralisation. Not *all* VNs manage *every* asset. Assets are managed by small sets of validator node committees. These committees reach consensus on DA state amongst themselves. But we potentially have a “slow” and “expensive”, but very secure and decentralised base layer to fall back on in case of dispute
4:28 AM <@cjs77> VNs earn fees for their efforts.
4:29 AM <@cjs77> or, they should. And finally, we have the idea that Digital asset contracts are not Turing complete, but are instantiated using Digital Asset templates that are defined in the DAN protocol code.
4:32 AM <@fluffypony> how do they earn fees?
4:32 AM <neonknight> I think non-turing complete digital asset contracts are a great idea as the cost of executing and storing that contract is basically “fixed”
4:32 AM <@fluffypony> or rather, how are fees paid, on the base layer
4:33 AM <@fluffypony> question mark
4:35 AM <simian_za> periodically the validated state of an asset will be commited to the base-layer as a merkle-root checkpoint that summarizes what happened between the last checkpoint and this checkpoint. At that stage the committee of validator nodes will come to a consensus on what fees are owed and between them and the asset issuer the fee payment transactions will be signed
4:35 AM <simian_za> is how I feel it will happen
4:36 AM <@cjs77> ya, if we agree that VNs should earn fees, we can debate the various ways of how that could happen, but simian_za’s idea largely reflects my thinking
4:38 AM <@cjs77> neonknight: The other benfits of non-Turing complete are:
4:38 AM <@cjs77> * smaller attack surface
4:38 AM <@cjs77> * no halting problem nonsense
4:38 AM <@cjs77> * ease of use! You don’t have to be a developer to issue assets.  You only need to store the type of contract and the variable parameters of that contract.
4:42 AM <@cjs77> +1. Good point
4:52 AM <Hansie> An interesting viewpoint from https://chain.com/docs/1.2/protocol/papers/whitepaper. “The Chain Virtual Machine (CVM) instruction set is Turing complete. To prevent unbounded use of computational resources, the protocol allows networks to set a run limit that a program is not allowed to exceed.”


|
| Local Properties | ||
| Managed Object Types | Data Object Types | All Properties | All Methods |
Properties
| Name | Type | Description |
|---|---|---|
| key | ManagedObjectReference
to a VirtualMachine |
Virtual machine to power on or power off.
|
| startAction | xsd:string |
How to start the virtual machine. Valid settings are none or powerOn.
If set to none, then the virtual machine does not participate in auto-start.
|
| startDelay | xsd:int |
Delay in seconds before continuing with the next virtual machine in the order
of machines to be started. If the delay is specified as -1, then the system
default is used.
|
| startOrder | xsd:int |
The autostart priority of this virtual machine. Virtual machines with a lower
number are powered on first. On host shutdown, the virtual machines are
shut down in reverse order, meaning those with a higher number are powered off
first.
Positive values indicate a start order and -1 indicates the machine can be powered on at any time. Machines with a -1 value are typically powered on and off after all virtual machines with positive startOrder values. Failure to meet the following requirements results in an InvalidArgument exception:
If a newly established or changed startOrder value for a virtual machine matches an existing startOrder value, the newly applied value takes precedence, and the existing value is incremented by one. The incremented startOrder value is checked for collisions, and the same rule is applied if one is found. This simple system ensures no two virtual machines ever have the same order number.
For example, consider the case where there are three virtual machines with
different startOrder values. Virtual machine A has not yet established a
startOrder, virtual machine B has a startOrder value of 1 and Virtual Machine
C has a startOrder value of 2. If virtual machine A's startOrder is set to 1,
then virtual machine B's startOrder is incremented to 2. This creates a
conflict with virtual machine C's startOrder value, which is also incremented,
this time to 3.
|
| stopAction | xsd:string |
Defines the stop action for the virtual machine. Can be set to none,
systemDefault, powerOff, or suspend. If set to none, then the virtual machine
does not participate in auto-stop.
|
| stopDelay | xsd:int |
Delay in seconds before continuing with the next virtual machine in the order
sequence. If the delay is -1, then the system default is used.
|
| waitForHeartbeat | AutoStartWaitHeartbeatSetting |
|
| Properties inherited from DynamicData | ||
| None |
| Top of page | Local Properties | ||
| Managed Object Types | Data Object Types | All Properties | All Methods |


--- title: Student Server Space Projects special: projects permalink: /projects/ ---
{% include head.html %} {% include header.html %}Paleta is a set of style guides for UCC organisations and projects to make design easy.
The latest student-made projects on SSS.


Agendas and Minutes for past meetings not listed on this page are available upon request.
| 04/03/19 | Agenda |
| 03/20/19 | Agenda |
| 03/06/19 | Agenda Minutes |
| 02/20/19 | Agenda Minutes |
| 02/06/19 | Agenda Minutes |
| 01/23/19 | Agenda Minutes |
| 01/09/19 | Agenda Minutes |
| 12/19/18 | Agenda Minutes |
| 12/05/18 | Agenda Minutes |
| 11/07/18 | Agenda Minutes |
| 10/24/18 | Agenda Minutes |
| 10/03/18 | Agenda Minutes |
| 09/19/18 | Agenda Minutes |
| 09/05/18 | Agenda Minutes |
| 08/15/18 | Agenda Minutes |
| 08/01/18 | Agenda Minutes |
| 07/18/18 | Agenda Minutes |
| 07/03/18 | Agenda Minutes |
| 06/20/18 | Agenda Minutes |
| 06/06/18 | Agenda Minutes |
| 05/16/18 | Agenda Minutes |
| 05/02/18 | Agenda Minutes |
| 04/18/18 | Agenda Minutes |
| 04/04/18 | Agenda Minutes |
| 03/21/18 | Agenda Minutes |
| 03/07/18 | Agenda Minutes |
| 02/21/18 | Agenda Minutes |
| 02/07/18 | Agenda Minutes |
| 01/17/18 | Agenda Minutes |
| 01/03/18 | Agenda Minutes |
| 12/06/17 | Agenda Minutes |
| 11/29/17 | Agenda Minutes |
| 11/15/17 | Agenda Minutes |
| 11/01/17 | Agenda Minutes |
| 10/18/17 | Agenda Minutes |
| 10/04/17 | Agenda Minutes |
| 09/20/17 | Agenda Minutes |
| 09/06/17 | Agenda Minutes |
| 09/06/17 | Agenda Minutes |
| 08/30/17 | Agenda Minutes |
| 08/16/17 | Minutes |
| 08/02/17 | Agenda Minutes |
| 07/19/17 | Agenda Minutes |
| 07/05/17 | Agenda Minutes |
| 06/21/17 | Agenda Minutes |
| 06/07/17 | Agenda Minutes |
| 05/31/17 | Agenda Minutes |
| 05/17/17 | Agenda Minutes |
| 05/03/17 | Agenda Minutes |
| 04/19/17 | Agenda Minutes |
| 04/05/17 | Agenda Minutes |
| 03/29/17 | Agenda Minutes |
| 03/15/17 | Agenda Minutes |
| 03/01/17 | Agenda Minutes |
| 02/15/17 | Agenda Minutes |
| 02/01/17 | Agenda Minutes |
| 01/18/17 | Agenda Minutes |
| 01/04/17 | Agenda Minutes |
| 12/21/16 | Agenda Minutes |
| 12/07/16 | Agenda Minutes |
| 11/30/16 | Agenda Minutes |
| 11/16/16 | Agenda Minutes |
| 11/02/16 | Agenda Minutes |
| 10/19/16 | Minutes |
| 10/05/16 | Agenda Minutes |
| 09/21/16 | Agenda Minutes |
| 09/07/16 | Agenda Minutes |
| 08/31/16 | Agenda Minutes |
| 08/17/16 | Agenda Minutes |
| 08/03/16 | Agenda Minutes |
| 07/20/16 | Agenda Minutes |
| 07/06/16 | Agenda Minutes |
| 06/17/16 | Agenda Minutes |
| 06/01/16 | Agenda Minutes |
| 05/18/16 | Agenda Minutes |
| 05/04/16 | Agenda Minutes |
| 04/20/16 | Agenda Minutes |
| 04/06/16 | Agenda Minutes |
| 03/16/16 | Agenda Minutes |
| 03/09/16 | Agenda Minutes |
| 03/02/16 | Agenda Minutes |
| 02/24/16 | Agenda Minutes |
| 02/10/16 | Agenda Minutes |
| 02/03/16 | Agenda Minutes |
| 01/27/16 | Agenda Minutes |
| 01/20/16 | Agenda Minutes |
| 01/20/16 | Agenda Minutes |
| 01/06/16 | Agenda Minutes |


The Authors and Coders are given below.
Use the buttons on the left to choose a story.
Field Trip
Author: Willam Muse
Coded by: Kerry Calkins and Mario Ochoa
Cavs Game
Author: Brandon Steffes
Coded by: Anthony Piazza, Tommy Ungrady and Sean Ruziev
Haunted Forest
Author: Malik Johnson
Coded by: Tristan Netherly and Michael Ribovich
Zombie
Author: Vincent Larson
Coded by: Andrew Clark, August Vullo, Michael Lake
Dark and Gloomy Night...
Author: Anthony Lipovecs
Coded by: Lindsay Sterle and Katie McCandless
Beach Day
Author: Jimmy Coyne
Coded by: Katie Gressley and Sweta Patel
War Zone
Author: Nina LeRoy
Coded by: ...
Desert Encounter
Author: Nathan Lipovecs
Coded by: ...


The specified file was not found on this website. Please check the URL for mistakes and try again.
This page was generated by the Firebase Command-Line Interface. To modify it, edit the 404.html
file in your project's configured public
directory.


Heaps is a cross platform graphics engine designed for high performance games.
Heaps has been designed to leverage modern GPU that are now commonly available on both desktop and mobile devices.
Heaps currently supports HTML5 WebGL, Flash Stage3D, native Mobile (iOS and Android) and Desktop with OpenGL.
Heaps consists in several top level packages, which are:
h2d
used for 2D display on screen (for 2D games and user interface)h3d
used for rendering 3D modelshxd
contains cross platform classes such as Bitmaps, and a complete resource loading and management frameworkhxsl
is the Heaps Shader Language implementationIn order to get started with Heaps, you need first to:
haxelib install heaps
You should then be ready to run your first example:
class Main extends hxd.App { var bmp : h2d.Bitmap; override function initialize() { var tile = h2d.Tile.fromColor(0xFF0000, 100, 100); bmp = new h2d.Bitmap(tile, s2d); bmp.x = s2d.width * 0.5; bmp.y = s2d.height * 0.5; } override function update(dt:Float) { bmp.rotation += 0.1; } static function main() { new Main(); } }
In order to compile, make sure you have included the Heaps library or have added -lib heaps
to your compilation parameters.
index.html
that includes your .js
haxe output-swf-version 11.8
) which is required for HeapsYou should now be able to compile and display the example. It will show you a rotating red square.
Several examples for both 2D and 3D are available in the heaps samples directory.
Before entering into the details of h2d, let's introduce a few concepts that we will use in the documentation:
hxd.Bitmap
type) is a picture stored in local memory which you can modify and access its individual pixels. In Heaps, before being displayed, a Bitmap need to be turned into a Textureh3d.mat.Texture
type) is a picture that is allocated into the GPU memory. You can no longer access its pixels or modify it in an efficient way. But it can be used to display 3D models or 2D pictures.h2d.Tile
) is a sub part of a Texture. For instance a 256x256 Texture might contain several graphics, such as different the frames of an animated sprite. A Tile will be a part of this texture, it has a (x,y) position and a (width,height) size in pixels. It can also have a pivot position (dx,dy).(-tile.width,-tile.height)
, it will now be at the bottom right of the Tile. Changing the pivot affects the way Bitmap Sprites are displayed and the way local transformations (such as rotations) are performed.h2d.Sprite
) is the base class of all of H2D displayable objects. A Sprite has a position (x,y), a scale (scaleX,scaleY), a rotation. It can contain other Sprites which will inherit its transformations, creating a scene treeh2d.Scene
) is a special Sprite which is at the root of the scene tree. In hxd.App
is it accessible with the s2d
variable. You will need to add your Sprites to the scene before they can be displayed. The Scene also handles events such as clicks, touch, and keyboard keys.h2d.Bitmap
) is a Sprite that allows you to display an unique Tile at the sprite position, such as in the previous example.Now that the basic concepts have been introduced, let's get back to our previous example, this time with comments:
class Main extends hxd.App { var bmp : h2d.Bitmap; override function initialize() { // allocate a Texture with red color and creates a 100x100 Tile from it var tile = h2d.Tile.fromColor(0xFF0000, 100, 100); // create a Bitmap sprite, which will display the tile // and will be added to our 2D scene (s2d) bmp = new h2d.Bitmap(tile, s2d); // modify the display position of the Bitmap sprite bmp.x = s2d.width * 0.5; bmp.y = s2d.height * 0.5; } // on each frame override function update(dt:Float) { // increment the display bitmap rotation by 0.1 radians bmp.rotation += 0.1; } static function main() { new Main(); } }
We can easily make the Bitmap rotate around its center by changing the tile pivot, by adding the following lines:
bmp.tile.dx = -50; bmp.tile.dy = -50;
The following properties and methods can be accessed on any Sprite:
x
and y
: the position in pixels relative to the parent Sprite (or in the Scene)rotation
: the rotation of the sprite in radiansscaleX
and scaleY
: the horizontal and vertical scaling values for this Sprite (default to (1,1)). You can uniformaly increase the current scales by calling sprite.scale(1.1)
or set them to give value by using sprite.setScale(value)
.visible
: when visible is set to false
, a sprite is still updated (position is calculated and animation still plays) but the sprite and all its children are not displayedparent
: the current parent Sprite, or null
if it has not been addedremove()
: remove the sprite from its parent. This will prevent it from being updated and displayedaddChild(s)
: adds the specified sprite to the children listfor( s in sprite ) {...}
: iterates over all the current children
Sprite have other properties and methods which can be discovered by visiting the h2d.Sprite
API section.
H2D classes that can display something on screen usually extends the h2d.Drawable
class.
Each Drawable (including h2d.Bitmap
) has then several properties that can be manipulated:
alpha
: this will change the amount of transparency your drawable is displayed with. For instance a value of 0.5 will display a Tile with 50% opacity.color
: color is the color multiplier of the drawable. You can access its individual channels with (r,g,b,a)
components. It is initialy set to white (all components are set to 1.). Setting for instance the (r,g,b) components to 0.5 will make the tile appear more dark.
blendMode
: the blend mode tells how the drawable gets composited with the background color when its drawn on the screen.
The background color refers to the screen content at the time the sprite is being drawn. This can be another sprite content if it was drawn before at the same position.
The following blend mode values are available :Alpha
(default) : the drawable blends itself with the background using its alpha value. An opaque pixel will erase the background, a fully transparent one will be ignored.None
: this disable the blending with the background. Alpha channel is ignored and the color is written as-it. This offers the best display performances for large backgrounds that have nothing showing behind themAdd
: the drawable color will be added to the background, useful for creating explosions effects or particles for instance.SoftAdd
: similar to Add but will prevent over saturationMultiply
: the sprite color is multiplied by the background colorErase
: the sprite color is substracted to the background colorfilter
: when a sprite is scaled (upscaled or downscaled), by default Heaps will use the nearest pixel in the Tile to display it. This will create a nice pixelated effect for some games, but might not looks good on your game. You can try to set the filter
value to true, which will enable bilinear filtering on the sprite, making it looks less sharp and more smooth/blurry.shaders
: each Drawable can have shaders added to modify their display. Shaders will be introduced later in this manual.
Drawable have other properties which can be discovered by visiting the h2d.Drawable
API section.
Creating an animated sprite in H2D is quite easy.
Instead of using h2d.Bitmap to display a single Tile, you can use h2d.Anim to display a list of tiles that will automatically be played:
// creates three tiles with different color var t1 = h2d.Tile.fromColor(0xFF0000, 30, 30); var t2 = h2d.Tile.fromColor(0x00FF00, 30, 40); var t3 = h2d.Tile.fromColor(0x0000FF, 30, 50); // creates an animation for these tiles var anim = new h2d.Anim([t1,t2,t3],s2d);
The following properties and methods can be accessed on h2d.Anim:
speed
: changes the playback speed of the animation, in frames per seconds.loop
: tells if the animation will loop after it reaches the last frame.onAnimEnd
: this dynamic method can be set to be informed when we have reached the end of the animation :
anim.onAnimEnd = function() { trace("END!"); }
Anim have other properties which can be discovered by visiting the h2d.Anim
API section.
Before start with text manipulation, we must know the h2d.Font
class:
h2d.Font
is a manager who links each character with his h2d.Tile
: it is used to display each letter of a text;h2d.Font
;h2d.Font
we must have:
Do not forget to add to your compilation parameters the location of your resource files -D resourcesPath=yourPath
Copy the two font files in your resources directory:
You can use h2d.Font
like this:
// compilation parameter: -D resourcesPath=res // location of the files: res/customFont.fnt and res/customFont.png // load a bitmap font Resource: var font = hxd.Res.customFont.toFont();
h2d.Text
extends h2d.Drawable
to display text with H2D.
h2d.Text
is a text field whose you can easily change the textual content with its property text
.
To manipulate easily h2d.Text
you can use the following properties:
text
: change the textual content of the text field.textColor
: the color in hexadecimal format. This property also modify the color
property (see h2d.Drawable
).maxWidth
: width limit of the text field. The text field is multi line: the textual content length exceeding the maxWidth
is added with a new line. The wordwrap does not cut the words: if the length of a word exceed the maxWidth
, it does not cut the word.font
: the font used to display the text. See h2d.Font
to use it.letterSpacing
: integer in pixels representing the amount of space that is distributed between all characters. Default value is letterSpacing = 0;
lineSpacing
: integer in pixels representing the amount of vertical space between lines. Default value is lineSpacing = 0;
, it corresponds to the basic spacing between lines.dropShadow
: a solid drop shadow of your text. To disable it, use the value dropShadow = null;
.
To configure dropShadow
you can use a Typedef with these properties:
dx
and dy
: define the distance in pixel between the text and his drop shadow. For instance the values : dx = 2.5;
and dy = 5.0;
moves the shadow from the text to 2.5 pixel to the right and 5 pixel to the bottom.color
: the hexadecimal color of the shadow (like color = 0x111133;
).alpha
: this will change the amount of transparency of your drop shadow. For instance a value of alpha = 0.25;
will display a drop shadow with 25% opacity.textWidth
and textHeight
: get the size of the text field in pixel. You can't edit it. If you would change the width, use the maxWidth
property.You should then be ready to display your first text:
// load a bitmap font Resource var font = hxd.Res.customFont.toFont(); // adds a red shadow tf.dropShadow = { dx : 3, dy : 3, color : 0xFF0000, alpha : 0.8 }; // creates a text field with this font var tf = new h2d.Text(font, s2d); tf.text = "Hello h2d!";


Recipes
The following recipes are offered free of charge, commentary, ads, life stories, pictures, or
promises.
Cheeseburger Pie
| Ingredient |
Quantity |
Notes |
| Crescent rolls |
2 tubes |
|
| Ground Beef |
2 lbs |
|
| Tomato Sauce |
8 oz |
|
| Sloppy Joe Mix |
1 envelope |
|
| Oregano |
|
|
| Shredded Mozzarella |
2 cups |
|
| Shredded Cheddar |
2 cups |
|
- Lay one package of crescent roll dough in a 9-by-13 pan.
- Brown and drain ground beef
- Add tomato sauce, sloppy joe mix, and oregano to taste. Spread over dough.
- Cover beef mixture with cheese, and top with second package of crescent roll dough
- Bake at 350 for 25 minutes. Serves 4
Bean Pie
| Ingredient |
Quantity |
Notes |
| Ground beef |
1 lb |
|
| Garlic |
2-3 cloves |
|
| Condensed bean and bacon soup |
12 oz |
|
| Picante Sauce |
1 cup |
|
| Cornstarch |
1/4 cup |
|
| Chopped parsely |
1 tbsp |
|
| Salt |
1 tsp |
|
| Pepper |
1/4 tsp |
|
| Kidney beans |
16 oz |
rinsed, drained |
| Black beans |
15 oz |
rinsed, drained |
| Shredded cheddar cheese |
2 cups |
divided |
| Green onions |
3/4 cup |
sliced, divided |
| Pie pastry |
2x 10in |
|
| Egg |
1 |
beaten |
- Brown and drain beef and garlic
- In large bowl, mix soup, picante sauce, cornstarch, and spices
- Add beans, 1 1/4 cup cheese, 1/2 cup green onions, and beef to bean soup mixture
-
Line deep pie pan with bottom pastry, and fill with bean mixture. Top with remaining pastry
- Seal and flute edges, and cut slits in top crust.
- Brush top crust with egg
- Bake at 425 for 30-35 minutes, or until golden brown. Cool for 5 minutes.
- Garnish with sour cream, and remaining cheese and onions. Serves 6
French Meat Pie
| Ingredient |
Quantity |
Notes |
| Ground beef |
1 lb |
|
| Ground sausage |
1 lb |
|
| Mashed potatoes |
1 cup |
|
| Allspice |
2 tsp |
|
| Salt |
1 tsp |
|
| Pepper |
1/4 tsp |
|
| Pie crust |
2x 10in |
|
| Egg |
1 |
beaten |
- Brown and drain meat
- Combine meat, potatos, and spices
- Line pie pan with bottom pastry
- Fill with meat mixture and top with remaining pastry
- Seal and flute edges, cut slits in top crust
- Brush top crust with egg
-
Bake at 375 for 30-35 minutes or until golden brown. Cool for 5 minutes before slicing.
Serves 6.
Tamale Pie
| Ingredient |
Quantity |
Notes |
| Corn muffin mix |
1 box |
|
| Egg |
1 |
|
| Sour cream |
1/2 cup |
|
| Creamed Corn |
1/2 cup |
canned |
| Ground cumin |
1 tsp |
|
| chili powder |
1 tsp |
|
| Garlic |
2 cloves |
minced |
| Ground beef |
1 lb |
|
| Red enchlada sauce |
1/3 cup |
|
| Shredded cheddar |
1 cup |
|
| Shredded monterey jack |
1 cup |
|
- In large bowl, mix muffin mix, egg, source cream, and creamed corn.
-
Transfer to greased dish, and back for 20 minutes at 400 degrees or until golden. Let cool
- Brown and drain beef
- Poke surface of cornbread with fork, and pour enchilada sauce
- Add beef, and cover with cheese
- Cover with foil and back for 20 minutes at 400 degrees, until cheese is melty
-
Switch oven to broil, remove foil, and broil for 15 minutes, until cheese turns golden.
Serves 8
Enchilada Sloppy Joe Pie
| Ingredient |
Quantity |
Notes |
| Ground beef |
1 lb |
|
| Chopped green chiles |
4 oz |
|
| Green enchilada sauce |
10 oz |
|
| Shredded cheddar |
1 1/2 cup |
|
| Bisquick mix |
1 cup |
|
| Milk |
1/2 cup |
|
| Egg |
1 |
|
- Brown and drain ground beef. Add to greased pan
- Stir in green chiles and enchilada sauce. Top with cheese
- In bowl, combine Bisquick mix, milk, and egg. Pour over cheese
- Bake at 400 for 30 minutes or until crust is golden brown. Serves 4
Stuffed Hamburger Roll
| Ingredient |
Quantity |
Notes |
| French bread |
1 loaf |
|
| Ground beef |
1 lb |
|
| Cream of chicken/mushroom soup |
2 cans |
|
| Velveeta cheese |
1 cup |
cubed |
- Cut bread lengthwise.
- Scoop out inside of both pieces and break into small pieces
- Brown and drain ground beef
- Mix soup, cheese, and bread pieces into the beef
- Place filling into both sides of the loaf
- Wrap in tin foil and bake at 350 for 35 minutes
Sausage Bread
| Ingredient |
Quantity |
Notes |
| Frozen white bread dough |
2 loaves |
|
| Ground sausage |
1 lb |
|
| Egg |
3 |
divided |
| Shredded mozzarella |
2 1/2 cup |
|
| Dried basil |
1 tsp |
|
| Parsely flakes |
1 tsp |
|
| Crushed rosemary |
1 tsp |
|
| Garlic powder |
1 tsp |
|
- Cover dough, and let rise in warm place until doubled in size
- Flatten each loaf into a 16-by-12 rectangle
- Brown and drain sausage
- Stir in two eggs, cheese, seasonings
- Spread mixutre over both dough sheets, leaving a 1 inch gap around the edges
- Start with short side and roll up the dough sheets
- Pinch seams and place on greased baking sheet
- Whisk remaining egg, and brush over top of loaves
- Bake at 350 for 24-30 minutes, or until golden brown
Sausage and Spinach Pizza Bread
| Ingredient |
Quantity |
Notes |
| Ground sausage |
1 lb |
add pepperoni or other pizza-compatible meats |
| Spinach leaves |
2 cups |
chopped |
| Pizza sauce |
1/2 cup |
|
| Pillsbury dough |
1 tube |
|
| Shredded mozzarella |
1 cup |
|
| Butter |
1 tbsp |
|
| Italian seasoning |
1/4 tsp |
|
- Brown and drain sausage
- Stir in spinach leaves and cook until just starting to wilt. Remove from heat
- Mix in pizza sauce
- Unroll dough onto greased baking sheet into a 13-by-8 rectangle
- Sprinkle half the cheese in a 4 inch strip down the middle
- Top with sausage mixture and cover with remaining cheese
- Make cuts 1 inch apart on each side of rectangle just to edge of filling
-
Alternating from side to side, fold strips across filling, slightly overlapping the ends
- Melt butter and seasoning. Brush onto dough
- Bake at 375 for 20-25 minutes or until deep golden brown
Lasagna
| Ingredient |
Quantity |
Notes |
| Ground beef and sausage |
3 lbs |
any more won't fit in a 3-by-13 pan |
| Tomato sauce |
15 oz |
|
| Water |
1/2 cup |
|
| Brown sugar |
2 tsp |
|
| Salt |
1 1/2 tsp |
|
| Oregano |
1 tsp |
|
| Garlic powder |
1/2 tsp |
|
| Pepper |
1/4 tsp |
|
| Lasagna noodles |
8 oz |
|
| Cottage cheese |
32 oz |
can't straight substitute ricotta |
| Shredded mozzarella |
4 cups |
|
- Brown and drain ground beef, sausage
- Add tomato sauce, water, and spices to meat. Simmer for 30 minutes, stirring often
- Cook noodles as directed. Drain
- Beat egg and combine with cottage cheese
- Place half of noodles in 9-by-13 pan
- Cover with half of the meat sauce
- Spoon half of the cottage cheese mixture, and follow with half of the mozzarella
- Repeat
- Bake at 375 for 45 minutes. Let sit for 10 minutes before serving
Carbonara
| Ingredient |
Quantity |
Notes |
| Egg |
2 |
|
| Egg yolk |
2 |
|
| Pasta water |
small bit |
|
| Pepper |
|
|
| Fried pancetta cubes |
Some |
|
| Pasta |
Enough |
|
| Parmesan |
|
the real stuff you heathen |
- Whisk eggs, yolks, paster water, and pepper together to form sauce
- Mix sauce with paster, and stir until thickened
- Top with parmesan
Italian Bean and Sausage Pasta
| Ingredient |
Quantity |
Notes |
| Olive oil |
1 tbsp |
|
| Italian sausage links |
16 oz |
what kind of sausage makes a difference |
| Pasta |
8 oz |
|
| Chicken broth |
2 cups |
|
| Tomato paste |
2 tbsp |
|
| Salt |
1/2 tsp |
|
| Cannellini beans |
1 large can |
|
| Parmesan |
1/2 cup |
the real stuff you heathen |
- Head oil over medium heat. Brown sausages
-
Add uncooked pasta to broth, sauce, and salt. Heat to boiling, cover, and reduce heat. Cook
for 9 to 11 minutes, stirring occasionally
- Add beans, and cook for 3 to 4 more minutes
- Stir in parmesan cheese and serve
Sausage and Penne Casserole
| Ingredient |
Quantity |
Notes |
| Pasta |
8 oz |
|
| Andouille sausage |
16 oz |
thinly sliced |
| Butter |
2 tbsp |
|
| Flour |
2 tbsp |
|
| Milk |
1 1/2 cup |
|
| Creole seasoning |
1 tsp |
|
| Shredded cheddar |
2 cups |
|
| Fine bread crumbs |
1 cup |
tossed with 2 tsp melted butter |
- Cook and drain pasta
- Cook sausage, set aside
-
In same skillet over medium heat, melt mitter and mix with flour. Gradually add milk and
Creole seasoning. Cook until thickened, stirring constantly
- Add cheese, and stir until melted
- Add pasta and sausage
- Mix and add to greased pan
- Bake at 350 for 30 minutes
Andouille Mac & Cheese
| Ingredient |
Quantity |
Notes |
| Pasta |
8 oz |
|
| Olive oil |
1 tbsp |
|
| Andouille sausage |
16 oz |
thinly sliced |
| Green onions |
6 |
thinly sliced |
| Garlic |
2 cloves |
minced |
| Butter |
4 tbsp |
|
| Flour |
1/4 cup |
|
| Cajun seasoning |
1 tsp |
can be liberally applied |
| Pepper |
1 tsp |
|
| Milk |
2 1/3 cup |
|
| Shredded cheddar |
3 cups |
divided |
- Cook and drain pasta
- Heat oil, and brown sausage with green onions and garlic. Set aside
-
Make a light roux. Melt butter in same skillet, add flour and stir until smooth. Cook for 2
minutes, continually stirring
- Add seasoning, gradually add milk. Cook until thickened, continually stirring
- Add 2 cups of the cheese, stirring until melted.
- Add pasta to greased pan, and mix in sauce
- Top with remaining cheese
- Bake at 350 for 20-25 minutes. Serves 4
Mac & Cheese
| Ingredient |
Quantity |
Notes |
| Bacon |
|
thick, cooked, chunked |
| Onion |
1 medium |
minced |
| Bay leaves |
2 |
|
| Paprika |
1 tbsp |
|
| Cayenne |
1/2 tsp |
|
| Flour |
1/3 cup |
|
| Milk |
6 cups |
|
| Patsta |
1 lb |
undercooked |
| Shredded cheddar |
5 cups |
divided |
- Cook onion and bay leaves until softened.
- Add paprika and cayenne, and cook until fragrant
- Stir in flour until smooth
- Gradually add milk and whisk until smooth
- Bring to boil and cook until thickened
- Simmer for 30 minutes, wisking frequently
- Discard the bay leaves
- Stir in 4 cups of cheddar, and add cooked bacon chunks
- Mix pasta and sauce, and add to greased 9-by-13 baking dish
- Top with remaining cheese
- Bake at 350 for 30 minutes, until golden brown and bubbling
- Let stand for 10 minutes
Slow Cooker BBQ Pork Mac & Cheese
The pulled pork doesn't taste like root beer until you drink the rest of the 12-pack afterwards.
| Ingredient |
Quantity |
Notes |
| Pork tenderloin, butt, or shoulder |
2 lbs |
more also works |
| Root beer |
1 can |
add more if adding more pork |
| BBQ sauce |
3/4 cup |
|
| Evaporated milk |
24 oz |
|
| Condensed cheddar soup |
22 oz |
|
| Water |
2 1/2 cup |
|
| Dry mustard |
1 tsp |
|
| Cayenne |
1/2 tsp |
|
| Shredded cheddar |
4 cups |
|
| Pasta |
1 lb |
|
-
Cook pork in crock pot with root beer until shreddable. Roughly 4 hours on high, or 6-7 on
low
- Shred pork and drain slow cooker
- Mix pork with BBQ sauce
- Heat evaporated milk, soup, water, and spices to a simmer
- Add shredded cheese and stir until melted
- Add uncooked pasta to crock pot, and stir in sauce
- Top with pulled pork
- Cook on high for 1 1/2 hours
Baked Spaghetti
| Ingredient |
Quantity |
Notes |
| Spaghetti |
1 lb |
cooked |
| Ground beef or sausage |
1 lb |
| Onion |
1 |
minced |
| Spaghetti sauce |
32 oz |
|
| Salt |
1/2 tsp |
|
| Egg |
2 |
|
| Parmesan |
1/3 cup |
the real stuff you heathen |
| Butter |
5 tbsp |
melted |
| Cottage cheese |
2 cups |
divided |
| Shredded mozzarella |
4 cups |
divided |
- Brown meat and onion
- Add spaghetti sauce and salt
- Whisk eggs, parmesan, and butter
- Add cooked spaghetti and toss to coat
- Spoon half of the spaghetti into greased 9-by-13 pan
- Top with half the cottage cheese, mozzarella and meat sauce
- Repeat and cover with foil
- Bake at 350 for 40 minutes
- Remove foil and bake 20-25 minutes longer, until cheese is melted and lightly browned
Chorizo Tomato Rotini
| Ingredient |
Quantity |
Notes |
| Olive oil |
1 tbsp |
|
| Chorizo |
4 oz |
|
| Onion |
1/2 |
minced |
| Ground beef |
1 lb |
|
| Salt |
2 tsp |
|
| Pepper |
2 tsp |
|
| Tomato sauce |
3 cups |
|
| Pasta |
1 1/4 cup |
cooked |
| Parmesan |
1/2 cup |
the real stuff you heathen |
| Fresh basil |
1/2 cup |
chopped |
- Heat oil on pan, and cook chorizo until slightly crispy
- Add onions and cook until translucent
- Add beef, salt, and pepper, cook until done
- Add tomato sauce, and cook until thickened
- Add cooked pasta, parmesane, and basil
Baked Ziti
| Ingredient |
Quantity |
Notes |
| Pasta |
1 lb |
ziti, penne |
| Olive oil |
|
|
| Italian sausage |
1 lb |
|
| Yello onion |
1 |
minced |
| Garlic |
3-4 cloves |
minced |
| Rosemary |
1 tbsp |
fresh, mined. Can substitute basil |
| Italian seasoning |
1 tbsp |
|
| Red pepper flakes |
1/2 tsp |
|
| Marinara sauce |
32 oz |
|
| Shredded mozzarella |
1/2 lb |
|
| Ricotta cheese |
1 heaping cup |
|
| Parmesan |
1 cup |
the real stuff you heathen |
- Cook pasta al dente, drain, and toss with olive oil
- Brown sausage
- Add onions and saute until beginning to brown
- Add spices, add tomato sauce, and simmer
- Spread thin layer of sauce in 9-by-13 pan, and dot with half the ricotta cheese
- Ladle a spoonful of sauce into the pasta, stir, and add pasta to dish
- Top with rest of sauce
- Dot with remaining ricotta, and top with mozzarella and parmesan
- Bake at 350 for 20-25 minutes, until lightly browned and cheese melted
Southwest Casserole
| Ingredient |
Quantity |
Notes |
| Ground beef |
1 lb |
|
| Cream of chicken soup |
11 oz |
|
| Milk |
1/2 cup |
|
| Green chiles |
4 oz |
|
| Small flour tortillas |
12 |
cut into 2 inch strips |
| Green enchilada sauce |
20 oz |
|
| Shredded cheddar |
1 cup |
|
- Brown and drain ground beef
- Add soup, milk, and green chiles. Simmer for 3 minutes
- Arrange half the tortilla strips in the bottom of a greased 9-by-13 pan
- Cover with half of the enchilada sauce and half of the beef mixture
- Repeat layer and cover with cheese
- Bake at 375 for 25 minutes
Effie Chicken
| Ingredient |
Quantity |
Notes |
| Chicken |
3 cups |
chopped, cooked |
| Cream of chicken soup |
11 oz |
|
| Sour cream |
16 oz |
|
| Poppy seeds |
3 tsp |
|
| Lemon juice |
|
discovery requires experimentation |
| Ritz crackers |
1 tube |
crushed |
| Butter |
1/4 cup |
melted |
- Combine chicken, soup, sour cream, poppy seeds, and lemon juice
- Spread mixture into lightly greased 11-by-7 pan
- Mix crumbs and butter. Spread over chicken mixture
- Bake at 350 for 35 to 40 minutes, or until bubbly
Ham and Potato Chowder
| Ingredient |
Quantity |
Notes |
| Bacon |
|
thick, cooked, chunked |
| Yellow onion |
1 |
minced |
| Carrot |
2 medium |
peeled and thinly sliced |
| Flour |
3 tbsp |
|
| Milk |
3 cups |
|
| Water |
1 1/2 cups |
|
| Better than Bouillon |
2 tsp |
|
| Pepper |
1/2 tsp |
|
| Garlic powder |
1/2 tsp |
|
| Potatoes |
3 medium |
diced |
| Ham |
2 cups |
diced |
| Shredded cheddar |
2 cups |
|
- Cook onion and carrots in backon grease until soft
- Add flour, stir, and cook for 1 minute
- Gradually stir in milk and water
-
Add potatoes and spices and bring to a simmer for 15-20 minutes or until potatoes are soft
- Add ham and cheese. Stir until cheese is melted. Sprinkle bacon
Pollo Chico
| Ingredient |
Quantity |
Notes |
| Vegetable oil |
1 qt |
|
| Green chiles |
4 oz |
|
| Chicken |
3 breasts |
|
| Tortillas |
1 package |
|
| Cream cheese |
2 packages |
|
| Shredded cheddar |
2 cups |
|
| Rice |
1 cup |
|
| Chicken broth |
enough? |
optional |
| Black beans |
1 can |
|
| Rotella |
1 can |
|
| Cilantro |
1 bunch |
|
- Cook chicken with salsa and rotella in crock pot on high, until shreddable (1/2 day)
- Cook black beans and rice, optionally in chicken broth
- Soften cream cheese
- Soften tortillas by microwaving 2-to-3 at a time for 15-20 seconds
- Add equal parts rice and chicken to tortilla
- Add cheese
- Roll and wrap
- Heat oil. To test, drop small piece of tortilla. If it bubbles, it's ready
- Place burrito into oil, and fry until golden brown. Turn
- Drain oil from burrito and place on baking sheet
- Spread with cream cheese and sprinkle with shredded cheese
- Bake at 350 until cheese is melted
Chicken Tortilla Soup
| Ingredient |
Quantity |
Notes |
| Vegetable oil |
2 tbsp |
|
| Onion |
1 small |
minced |
| Garlic |
3 cloves |
minced |
| Jalepenos |
2 |
finely diced |
| Chicken Broth |
6 cups |
|
| Fire roasted diced tomatoes |
14.5oz can |
|
| Black beans |
1 can |
|
| Corn |
1 can |
|
| Chicken |
3 breats |
|
| Lime |
2+ |
2 juiced, more for garnish |
| salt and pepper |
|
|
| Cilantro |
1 cup |
roughly chopped |
| Tortilla |
4 |
grilled or browed in additional vegetable oil |
| Avacado |
1 |
sliced |
| Monterrey Cheese |
1 cup |
|
- Heat vegatable oil in skillet
- Cook onions until translucent
- Add garlic and jalepenos. Cook another minute
- Add chicken broth, tomatoes, beans to pot and bring to boil
- Once boiling, reduce heat, add chicken, and simmer for 20-25 minutes
- Shred chicken when finished
- Add lime juice and cilantro to broth
- Serve shredded chicken and ladle soup over top
- Garnish with tortilla strips, avacado, lime, and cheese


In case you're not all up to speed on the theory, here's a quick recap of the most important bits.
Bézier curves are defined by at least 3 control points where the start and end point are exact and the others are approximated.
De Casteljau's algorithm can be used to approximate curve segments. Mathematically, the following recursive equation describes the process:


Insomnia? Nightmares? Stress? That's usually some of the symptoms in developers that are not using continuous integration systems. In this talk you will learn how to create a healthy life-cycle in your development process.
11 Jul 2017 18:30
"The Shuttle" - Innovation Lab @ Zalando Tech
Mollstr.1, 10178 Berlin
Starts from 500 DKK
Insomnia? Nightmares? Stress? That's usually some of the symptoms in developers that are not using continuous integration systems. In this talk you will learn how to create a healthy life-cycle in your development process.
11 Jul 2017 18:30
"The Shuttle" - Innovation Lab @ Zalando Tech
Mollstr.1, 10178 Berlin
Starts from 500 DKK
Insomnia? Nightmares? Stress? That's usually some of the symptoms in developers that are not using continuous integration systems. In this talk you will learn how to create a healthy life-cycle in your development process.
11 Jul 2017 18:30
"The Shuttle" - Innovation Lab @ Zalando Tech
Mollstr.1, 10178 Berlin
Starts from 500 DKK
Name: Anna
Surname: Porofijeva
Login: anna
Password: anna1
<EMAIL_ADDRESS>Name: Joana
Surname:Mezonute
Login: mezo
Password: mezo1
<EMAIL_ADDRESS>Name: Zygi
Surname:Butas
Login: zygi
Password:zygi1
E-mail:zygi@techevents.com


Max Yeamans
About
|
Portfolio
|
Contact
Portfolio
Hangman
RPG Game
Triva Game
Rutgers Info Widget
Rock Paper Scissors


LHC to hear Maryam Nawaz's petition for removal of name from ECL today
December 09: Prime Minister Imran Khan, while reiterating commitment to the Charter of South Asian Association for Regional Cooperation on Sunday, said that Pakistan was a firm believer in the strength and potential of regional cooperation for individual, national and regional development.


At the top of the world-famous hackers list is Kevin Mitnick. The US Department of Justice called him the "most wanted computer criminal in US history". Kevin Mitnick's story is so wild that it was even the basis for a featured film called Track Down. After serving a year in prison for hacking into the Digital Equipment Corporation's network, he was let out for three years of..... read more
They promised us a world where geography wouldn’t matter. As everything in our lives moved online, the best and brightest would scatter to the hinterlands, leaving only decaying urban wastelands in their wake. One of the most enthusiastic technophiles of the early age of the internet, George Gilder, announced in 1995 that the communications revolution would bring nothing less than "the death of distance"......read more
It's been over a year since the pandemic struck us. Over the initial days, everyone enjoyed quality time with family and loved ones. But as time.....read more
It is very important to come up with a way to eliminate waste in the current world, where waste is being generated on a scale comparable to ...... read more
According to Einstein’s general theory of relativity .....read more
Cancer is one of the most dreaded diseases affecting human beings and is a major cause of life loss for mankind. The innovative developing technology can ..... read more
A Padrone ring is a magic ring that gives the user the power to control a PC. This stunning ..... read more
New device that not only helps in sensing the various odors of chemicals, environmental hazard..... read more
Cyberpsychology is the ﬁeld of study that deals with the mental as well as emotional effects on users because of the web..... read more
The new addition of the Information Rules 2021 to the existing cyber laws would benefit or beleaguer our privacy? As the tranche of easing up locating the source of cyber-crimes, the new player has been introduced into the field. As this new act recommends the social media platforms to delegate intermediaries to act as a watch guard of its users. This act will be enacted as a...... read more


Sign Up
Home
Registration Form
Enter Details
Student Name
School /College
Branch
Select Branch
Electronics Engineering
Computer Science and Engineering
Electrical and Electronics Engineering
Bio-Medical Engineering
Mechanical Engineering
Address
Contact
E-mail


Go to: Yahoo! Google Oracle Your Message:
Let us try showing a confirmation window.
Let us try showing an alert.
Let us try showing current date in the satus bar


Before Change
elif platform.system() in ["Linux", "Darwin"]:
file_dir = project_dir + "/backtest.py"
shutil.copy(file_dir, now_path)
QA_util_log_info(
"Successfully generate a example strategy in : " + now_path)
After Change
//project_dir = os.path.dirname(os.path.abspath(__file__))
data=requests.get("https://codeload.github.com/yutiansut/QADemo/zip/master")
with open("{}{}QADEMO.zip".format(now_path,os.sep), "wb") as code:
code.write(data.content)
QA_util_log_info(


Complex phenomena are different from models like Boltzmann lattice model because of the lager scale of the space that they take into account, like lava flow simulation models that evolve on a topographical mountain region map 79. CA, as defined in the previous chapter are already suitable for this kind of modeling but, an extension was introduced by [@Gregorio1999] to better fit the problem of complex phenomena modellation.


7z.dll, or 7-Zip, is a well-known archive library which Slips7ream uses to extract ISO and Update data.
For more information, visit the 7-Zip website .
Slips7ream 3.2 uses 7z.dll v18.05.


Artist Savor is a play on words from one of the collaborators; he is a jazz musician.
Developed using Node js Sequelize, Passport, Express, Express-handlebars, Axios,
Chart.js, dotenv, MySql, Mysql2, models, API routing and external API calls, Deployed to Heroku using
JawsDB
Connect with Me


First Name
Last Name
Male Female Other
Preferred contact method: Email Phone
Email
Phone
Age
Programming language
I agree the Terms and Conditions


Applied Data Science & ML | UC Berkeley Master's Candidate of Information Management & Systems
A challenge-driven data scientist primarily interested in applied science and insights-oriented research. My programming experience is mainly in Python, R, and MATLAB, spanning the full-stack from data mining to algorithm development. I also love reading, environmental science, and telling stories with data!


I have always been happy with the company of animals. Rescuing and taking care of an animal (especially a dog) has always been a dream of mine which is yet to be fulfilled!
Keeping a healthy diet with regular exercise is sometimes difficult yet very rewarding. I would like to inspire and also spread my knowledge on maintaining a healthy life to others.
I love taking photos of nature scenes and portraits of others to capture moments in time. I believe pictures can bring out powerful messages which is why I am very interested in photography.
I wrote many various articles on nutrition and fitness. Writitng comes naturally to me and I love writing about things I am passionate about. I also believe that writing 5-10 minutes a day about anything you like can relieve stress which is very important in this fast moving era.
I became a student at UCSC where I joined various clubs such as Cognitive Science Students Association, ACM (Association for Computing Machinery), and Banana Slugs for Animals. I attend weekly meetings and also engage in discussions and presentations given by Professors and Grad Students.
I was given the great opportunity to work with my professor and others in the Human-Computer Interaction Lab. Currently we are studying self-presentation, trust, and privacy online.
I have also been given the opportunity to work at a fresh new start-up company called WeSnap. Based in San Francisco, WeSnap is a new social media photography mobile app that has been growing slowly. I have the great pleasure of leading my own HR campaign! I get to talk to awesome people around the world and learn more about their interests and passions which drives and inspires me. I also get to give my User experience feedback about the mobile app so it can be improved!
Cognitive Science/Human-Computer Interaction
Feel free to follow or connect with me!


Want a leave? Just follow along these simple steps to apply for an officially
acceptable leave application.
Discuss your leave plan ( prior by 1 week ) & seek Verbal Approval from :
Client side Manager
Riflexions Manager
Fill up the Leave application form & select "send me a copy of my responses".
Forward the copy of response to all the stakeholders including your Managers
& team members.


--- layout: post status: publish published: true title: Rails on Rails author: display_name: Geoff Lane login: admin email<EMAIL_ADDRESS>url: http://www.zorched.net author_login: admin author_email<EMAIL_ADDRESS>author_url: http://www.zorched.net date: '2006-08-09 21:49:52 -0400' date_gmt: '2006-08-10 03:49:52 -0400' categories: - Web - Ruby tags: - rails - ruby-on-rails - mkerb comments: [] ---
If Ruby on Rails is all about optimizing the development of web applications, then what would happen if you optimized Rails?
Well, it would get streamlined. Streamlined is a generator for Rails that can be used to easily create sites that are much better looking and much easier to use than the standard scaffold generated views. Even if you wouldn't want to use it to create the full site, it might be useful to generate an administrative section that would have a much more limited audience.
The other interesting thing about Streamlined is that it does for views what Rails already has for the Model objects. In Rails Model objects, you can use a declarative syntax to decorate the object to define relationships and to override behavior. With Streamlined you can do the same thing with views. You don't have to edit HTML or rHTML templates, you can just decorate some generated classes to override the default behavior.
In the spirt of Rails, there's a great screencast available at the site showing off some of these really interesting features. Check it out...
(Thanks to the Milwaukee Ruby User's Group for showing the screencast.)


Harry Potter is a series of seven fantasy novels written by author J. K. Rowling. The novels chronicle the lives of a young wizard, Harry Potter, and his friends Hermione Granger and Ron Weasley, all of whom are students at School of Witchcraft and Wizardry. The main story arc concerns Harry's struggle against Lord Voldemort, a dark wizard who intends to become immortal, overthrow the wizard governing body known as the Ministry of Magic and subjugate all wizards and Muggles (non-magical people).
Since the release of the first novel, Harry Potter and the Philosopher's Stone, on 26 June 1997, the books have found immense popularity, positive reviews, and commercial success worldwide. They have attracted a wide adult audience as well as younger readers and are often considered cornerstones of modern young adult literature. As of February 2018, the books have sold more than 500 million copies worldwide, making them the best-selling book series in history, and have been translated into eighty languages.The last four books consecutively set records as the fastest-selling books in history, with the final instalment selling roughly eleven million copies in the United States within twenty-four hours of its release.
The series was originally published in English by two major publishers, Bloomsbury in the United Kingdom and Scholastic Press in the United States. A play, Harry Potter and the Cursed Child, based on a story co-written by Rowling, premiered in London on 30 July 2016 at the Palace Theatre, and its script was published by Little, Brown. The original seven books were adapted into an eight-part namesake film series by Warner Bros. Pictures, which is the third highest-grossing film series of all time as of February 2020. In 2016, the total value of the Harry Potter franchise was estimated at $25 billion, making Harry Potter one of the highest-grossing media franchises of all time.
A series of many genres, including fantasy, drama, coming of age, and the British school story (which includes elements of mystery, thriller, adventure, horror, and romance), the world of Harry Potter explores numerous themes and includes many cultural meanings and references. According to Rowling, the main theme is death. Other major themes in the series include prejudice, corruption, and madness.
The success of the books and films has allowed the Harry Potter franchise to expand with numerous derivative works, a travelling exhibition that premiered in Chicago in 2009, a studio tour in London that opened in 2012, a digital platform on which J. K. Rowling updates the series with new information and insight, and a pentalogy of spin-off films premiering in November 2016 with Fantastic Beasts and Where to Find Them, among many other developments. Most recently, themed attractions, collectively known as The Wizarding World of Harry Potter, have been built at several Universal Parks & Resorts amusement parks around the world.


MorScout
All Matches
Team List
Settings
MorTeam
Profile
Log out
Scout Captain
Assignments
Statistics
Match Reports Made:
Pit Reports Made:
Unique Teams Scouted:
Assigned Matches Completed:
Assigned Matches Not Completed:
Assignment Completion:
Assign Task
From Match
To
Red Alliance
Blue Alliance
Team:
1
2
3


All Items
Classes
API
Dataset
NotFoundException
OperationStatus
Report
RequestException
UnauthorizedException
User


Click On The Generate Button To Generate A Random Password
or Click resize to resize the length
Generate
Resize


Seer Moira:
I've watched you, young Orc...
You learned the Language of Flame from the Hestui Totem Spirit and the wisdom of souls from the Gandi Totem Spirit.
You're now a legitimate Orc Shaman! I'll give you this Mask of Shaman as proof.
Take it to the High Prefect and you'll be able to transfer class. Again, congratulations, Tazakar Oroca!


QPython
0.9
QPython Getting started
Programming Guide
What can QPython do?
Are there more efficient way for developing?
How to program from my cellphone
How to program from my pc
Python builtin Libraries
Python 3rd Libraries
Android APIs
SL4A APIs
How to call QPython script in your application?
How to build an independt APK from QPython scripts?
QPython Hackers’ Guide
Contributors’ Guide
中文用户向导
QPython
Docs
»
QPython Getting started
»
Are there more efficient way for developing?
View page source
Are there more efficient way for developing?
¶
How to program from my cellphone
¶
What editor should I use?
How to program from my pc
¶


{% extends "base.html" %} {% block activepage_history %} class="active"{% endblock %} {% block title %}SoCraTes History{% endblock %} {% block content %}
Image courtesy of Christoph Pater
Starting in 2011, the first “Software Craftsmanship and Testing (un)conference” took place in Germany. Since then, the community and therefore the event grew larger.
Markus Gärtner has written a nice blog post which sums up some details why and how SoCraTes was established. He graciously allowed us to quote the following parts of it:
The Beginning
Andreas Leidig and Nicole Rauch started the whole thing way back in late 2010. They wanted to get a discussion going regarding a conference on Software Craftsmanship in Germany. We decided to meet up during XP Days Germany in 2010, and see what we could do. We quickly agreed on an unconference format, two days, somewhere laid back. Some folks had organized the German Agile Coach Camp and Play4Agile in Rückersbach close to Frankfurt. We decided on that spot as well, and organized everything for 2011.
Early on, we figured that we will need outside support. That was when we started to reach out to other craftsmen, like Micah Martin, Adewale Oshineye, Sandro Mancuso, and many, many more. We had around 10-20 participants from outside Germany with us at the first SoCraTes. All the tales they told us on how they were running things in London, Israel, Finland, you-name-it engaged us. It felt good to be around so many like-minded folks, and receive outside inspiration.
First year - 2011
The first SoCraTes - Software Craftsmanship and Testing (un)conference - was a success. We had some track sessions back then, and a full day of Open Space. During the Open Space I joined a session that took a look on how to continue. With all the energy in the place, we put ourselves on a virtual map of Germany.  That was also when we decided that we needed to keep that spirit going. We talked to folks in our neighborhood, and found soon some company for local user groups to keep on spreading the word.
Second year - 2012
One year later, we came back for SoCraTes 2012. Since the first conference we had established 10 user groups all over Germany on Software Craftsmanship, all organized under the banner of Softwerkskammer. There was one in Hamburg, one in Karlsruhe, one in Munich, one in Nürnberg, one in Berlin, one in Frankfurt, one in Dortmund, one in Düsseldorf, and one shared around Münster, Osnabrück, and Bielefeld. We created a timeline of events that had happened in the various local communities since our first get-together.
We were amazed about the various events, code retreats, user group meetings, and so on.
We still adhered to reserve space for foreign inspirations at that time. We had 10-20 people from outside Germany with us. However, Rückersbach had just 70 beds overall available. With ten local user groups potentially joining our unconference, we faced a serious problem. From each location just around 5 people would be able to join. So, with such a large community, we already excluded many potential attendees.
The format of the conference had shifted though. We had abandoned previously-set track sessions all-together. Instead we focused on two full days of Open Space. That provided the freedom necessary. In the end, we decided to run the conference again in Rückersbach, but have it organized by a different group of people. We explicitly decided to pass over the organizing responsibility to one of the local groups from year to year.
Third year - 2013
In 2013, the limited amount of beds became a problem. We discussed again what to do about it, and asked the organizers to seek a location that may scale up to 200 participants.
Moving on - 2014
Rückersbach had an advantage: it was close to Frankfurt airport (about a one hour ride by car). That made it easy for people from other countries to attend, since Frankfurt is the largest airport in Germany. It would be hard to find such a spot with more beds in such a good position.
The spot we found, looks promising according to the folks that have been there to inspect the place. The spot has 200 beds (with close-by hotels for expansion), and is located in Soltau. That's about a one hour ride by car outside from Hamburg. There are ten meeting rooms all set up with video projectors, flipcharts, and so on, one central place where everyone meets, one large room for the Open Space opening, a bar with space for 170 people in the evening, a swimming pool, decent space outside close to nature. We are convinced that this is a fitting place to scale SoCraTes to a larger audience.
Please visit the following wiki pages to review the history of SoCraTes.
Note: you need an user account on softwerkskammer.org to access the wiki pages.


Knockout is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user’s actions or when an external data source changes), KO can help you implement it more simply and maintainably.
Knockout is built around three core features:
On this page, you’ll learn about the first of these three. But before that, let’s examine the MVVM pattern and the concept of a view model.
Model-View-View Model (MVVM) is a design pattern for building user interfaces. It describes how you can keep a potentially sophisticated UI simple by splitting it into three parts:
A model: your application’s stored data. This data represents objects and operations in your business domain (e.g., bank accounts that can perform money transfers) and is independent of any UI. When using KO, you will usually make Ajax calls to some server-side code to read and write this stored model data.
A view model: a pure-code representation of the data and operations on a UI. For example, if you’re implementing a list editor, your view model would be an object holding a list of items, and exposing methods to add and remove items.
Note that this is not the UI itself: it doesn’t have any concept of buttons or display styles. It’s not the persisted data model either - it holds the unsaved data the user is working with. When using KO, your view models are pure JavaScript objects that hold no knowledge of HTML. Keeping the view model abstract in this way lets it stay simple, so you can manage more sophisticated behaviors without getting lost.
A view: a visible, interactive UI representing the state of the view model. It displays information from the view model, sends commands to the view model (e.g., when the user clicks buttons), and updates whenever the state of the view model changes.
When using KO, your view is simply your HTML document with declarative bindings to link it to the view model. Alternatively, you can use templates that generate HTML using data from your view model.
To create a view model with KO, just declare any JavaScript object. For example,
var myViewModel = {
personName: 'Bob',
personAge: 123
};
You can then create a very simple view of this view model using a
declarative binding. For example, the following markup displays the
personName
value:
The name is
The data-bind
attribute isn’t native to HTML, though it is
perfectly OK (it’s strictly compliant in HTML 5, and causes no problems
with HTML 4 even though a validator will point out that it’s an
unrecognized attribute). But since the browser doesn’t know what it means,
you need to activate Knockout to make it take effect.
To activate Knockout, add the following line to a


| MATLAB 文件帮助: cv.calcBackProject | 查看 cv.calcBackProject 的代码 | Index |
calcBackProject Calculates the back projection of a histogram
backProject = cv.calcBackProject(images, H, ranges)
backProject = cv.calcBackProject(..., 'OptionName',optionValue, ...)
uint8
, uint16
,
or single
) and the same row/column size. Each of them can have an
arbitrary number of channels.images
(if numeric)
or images{1}
(if images
is a cell array). Out of uint8
,
uint16
, or single
classes. Pay attention to the data type of the
back projection array, where integer types are clamped to the maximum
intmax
if a value exceeds the largest possible integer of the type.0
to
size(images{1},3)-1
, the second array channels are counted from
size(images{1},3)
to size(images{1},3) + size(images{2},3)-1
, and
so on. By default, all channels from all images are used, i.e default
is 0:sum(cellfun(@(im)size(im,3), images))-1
when input images
is
a cell array, and 0:(size(images,3)-1)
when input images
is a
numeric array.The function cv.calcBackProject calculates the back project of the
histogram. That is, similarly to cv.calcHist, at each location (x, y) the
function collects the values from the selected channels in the input images
and finds the corresponding histogram bin. But instead of incrementing it,
the function reads the bin value, scales it by scale, and stores in
backProject(x,y)
. In terms of statistics, the function computes
probability of each element value in respect with the empirical probability
distribution represented by the histogram. See how, for example, you can
find and track a bright-colored object in a scene:
This is an approximate algorithm of the cv.CamShift color object tracker.


/* Copyright (c) 2017 FIRST. All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted (subject to the limitations in the disclaimer below) provided that * the following conditions are met: * * Redistributions of source code must retain the above copyright notice, this list * of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright notice, this * list of conditions and the following disclaimer in the documentation and/or * other materials provided with the distribution. * * Neither the name of FIRST nor the names of its contributors may be used to endorse or * promote products derived from this software without specific prior written permission. * * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY THIS * LICENSE.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ package org.firstinspires.ftc.teamcode; import com.qualcomm.robotcore.eventloop.opmode.Disabled; import com.qualcomm.robotcore.eventloop.opmode.OpMode; import com.qualcomm.robotcore.eventloop.opmode.TeleOp; import com.qualcomm.robotcore.hardware.DcMotor; import com.qualcomm.robotcore.hardware.DcMotorSimple; import com.qualcomm.robotcore.hardware.Servo; import com.qualcomm.robotcore.util.ElapsedTime; import com.qualcomm.robotcore.util.Range; @TeleOp(name="teleop", group="Iterative Opmode") public class test extends OpMode { public DcMotor wheel; public DcMotor wheel2; public Servo intake1; public Servo intake2; public DcMotor leftfront; public DcMotor leftback; public DcMotor rightfront; public DcMotor rightback; public DcMotor pulley; @Override public void init() { wheel = hardwareMap.dcMotor.get("wheel"); wheel2 = hardwareMap.dcMotor.get("wheel2"); intake2 = hardwareMap.servo.get("intake1"); intake1 = hardwareMap.servo.get("intake2"); pulley = hardwareMap.dcMotor.get("pulley"); leftfront = hardwareMap.dcMotor.get("leftfront"); leftback = hardwareMap.dcMotor.get("leftback"); rightback = hardwareMap.dcMotor.get("rightback"); rightfront = hardwareMap.dcMotor.get("rightfront"); rightback.setDirection(DcMotorSimple.Direction.REVERSE); rightfront.setDirection(DcMotorSimple.Direction.REVERSE); } @Override public void loop() { float x; float y; float z; if (Math.abs(gamepad2.left_stick_x) > .1) { x = gamepad2.left_stick_x; } else { x = 0; } if (Math.abs(gamepad2.left_stick_y) > .1) { y = -gamepad2.left_stick_y; } else { y = 0; } if (Math.abs(gamepad2.right_stick_x) > .1) { z = -gamepad2.right_stick_x; } else { z = 0; } if (gamepad1.x) { wheel.setPower(1); wheel2.setPower(1); } else { wheel.setPower(0.0); wheel2.setPower(0.0); } if((gamepad1.right_trigger) >0.1) { intake1.setPosition(intake1.getPosition() + 0.1); } else if ((gamepad1.left_trigger) >0.1) { intake1.setPosition(intake1.getPosition() - 0.1); } else { intake1.setPosition(0.5); } if((gamepad1.right_trigger) >0.1) { intake2.setPosition(intake2.getPosition() + 0.1); } else if ((gamepad1.left_trigger) >0.1) { intake2.setPosition(intake2.getPosition() - 0.1); } else { intake2.setPosition(0.5); } pulley.setPower(gamepad1.right_stick_x/2); leftback.setPower((x - y - z)*.75); leftfront.setPower((-x - y -z)*.75); rightback.setPower((-x - y + z)*.75); rightfront.setPower((x - y + z)*.75); } }