#include <stMemoryPageManager.h>
Public Member Functions | |
| stMemoryPageManager (stSize pagesize) | |
| ~stMemoryPageManager () | |
| stSize | GetPageSize () |
| virtual bool | IsEmpty () |
| virtual stPage * | GetHeaderPage () |
| virtual stPage * | GetPage (stPageID pageid) |
| virtual void | ReleasePage (stPage *page) |
| virtual stPage * | GetNewPage () |
| virtual void | WritePage (stPage *page) |
| virtual void | DisposePage (stPage *page) |
| virtual stSize | GetMinimumPageSize () |
| Public Member Functions inherited from stPageManager | |
| virtual | ~stPageManager () |
| virtual void | WriteHeaderPage (stPage *headerpage) |
| virtual void | ResetStatistics () |
| long int | GetReadCount () |
| long int | GetWriteCount () |
| long int | GetAccessCount () |
Additional Inherited Members | |
| Protected Member Functions inherited from stPageManager | |
| void | UpdateReadCounter (unsigned long count=1) |
| void | UpdateWriteCounter (unsigned long count=1) |
This class implements a stPageManager that holds the pages in the main memory.
Definition at line 105 of file stMemoryPageManager.h.
| stMemoryPageManager::stMemoryPageManager | ( | stSize | pagesize | ) |
Creates a new stMemoryPageManager.
| pagesize | The size of each page. |
| stMemoryPageManager::~stMemoryPageManager | ( | ) |
Dispose this page and all allocated resoureces.
|
virtual |
Disposes the given page. This method will make the page available (not allocated) for the next calls of GetNewPage().
Since this page will not be used anymore, this method will release the lock for this page instance.
| page | The page to be disposed. |
Implements stPageManager.
|
virtual |
Returns the header page. This method will return a special page that will be used by SlimTree to write some information about the tree itself.
Since this page must always exist, this method will always return a valid page for reading/writing. Use WritePage() to write this page.
The returning instance of stPage will be locked to prevent its reuse by this page manager. Use ReleasePage() to unlock this instance.
Implements stPageManager.
|
inlinevirtual |
Returns the minimum size of a page. The size of the header page is always ignored since it may be smaller than others.
Implements stPageManager.
Definition at line 227 of file stMemoryPageManager.h.
|
virtual |
Allocates a new page for use. As GetPage() and GetHeaderPage(), the returning instance will be locked to prevent reuse by this page manager.
To dispose this page (make it free), use DisposePage().
Implements stPageManager.
Returns the page with the given page ID. This method will return a valid page for reading/writing. Use WritePage() to write this page.
The returning instance of stPage will be locked to prevent its reuse by this page manager. Use ReleasePage() to unlock this instance.
| pageid | The desired page id. |
Implements stPageManager.
|
inline |
Returns the size of each page.
Definition at line 122 of file stMemoryPageManager.h.
|
virtual |
This method will checks if this page manager is empty. If this method returns true, the stSlimTree will create a new tree otherwise it will continue to use the existing tree.
Implements stPageManager.
|
virtual |
Releases this instace for reuse by this page manager. Since some implementations of page manager will reuse instances of stPage to avoid unnecessary resource reallocations, each page instance must be locked until it becomes unecessary.
The stSlimTree will always call this method when a stPage instance will not be used in a near future.
| page | The locked page. |
Implements stPageManager.
|
virtual |
Writes the given page to the disk. This method will write the page but will not release it. Use ReleasePage() to do it.
| page | The page to be written. |
Implements stPageManager.


CDN Connect API Ruby Client, v0.4.1
CDN Connect makes it easier to manage production assets for teams of developers and designers, all while serving files from a fast content delivery network. Features include image optimization, resizing, cropping, filters, changing output formats, convert to WebP image format, etc. The CDN Connect API Ruby Client makes it easier to upload files and interact with the API with only a few lines of code.
View the full CDN Connect API documentation
Install
$ gem install cdnconnect-api
Setup the API Client
First step is to create an api client instance which will be used to connect to your CDN Connect app. The required options are app_host
and api_key
.
App Host
The CDN Connect App host includes your app subdomain and the cdnconnect.com
domain. For example, demo.cdnconnect.com
is a CDN Connect app host. The app host should not include https://
, http://
or a URL path such as /images
.
API Key
Most interactions with CDN Connect APIs require users to authorize applications via OAuth 2.0. An API Key can be created for a specific app within your CDN Connect's account. Sign into your account and go to the "API Key" tab for the app you want to interact with. Next click "Add API Key" and use this value when creating a new API client within the code. The API Key can be revoked by you at any time and numerous keys can be created.
Example API Client
require 'cdnconnect_api'
api_client = CDNConnect::APIClient.new(:app_host => 'YOUR_APP.cdnconnect.com',
:api_key => 'YOUR_API_KEY')
Upload Files
Upload a file or multiple files from a local machine to a folder within a CDN Connect app. The upload
method provides numerous ways to upload files or files, to include recursively drilling down through local folders and uploading only files that match your chosen extensions. If any of the folders within the upload path do not already exist then they will be created automatically.
Below are the possible parameters for the upload
method. You must set destination_path
and use one of the options to select where the source files are uploaded from.
destination_path
: The URL of the CDN Connect folder to upload to. If the destination folder does not already exist it will automatically be created.source_file_path
: A string of a source file's local path to upload to the destination folder. If you have more than one file to upload it'd be better to usesource_file_paths
orsource_folder_path
instead.source_file_paths
: A list of a source file's local paths to upload. This option uploads all of the files to the destination folder. If you want to upload files in a local folder thensource_folder_path
option may would be easier than listing out files manually.source_folder_path
: A string of a source folder's local path to upload. This will upload all of the files in this source folder to the destination url. By using thevalid_extensions
parameter you can also restrict which files should be uploaded according to extension.valid_extensions
: An array of valid extensions which should be uploaded. This is only applied when thesource_folder_path
options is used. If nothing is provided, which is the default, all files within the folder are uploaded. The extensions should be in all lower case, and they should not contain a period or asterisks. Examplevalid_extensions => ['js', 'css', 'jpg', jpeg', 'png', 'gif', 'webp']
recursive_local_folders
: A true or false value indicating if this call should recursively upload all of the local folder's sub-folders, and their sub-folders, etc. This option is only used when thesource_folder_path
option is used.destination_file_name
: The name which the uploaded file should be renamed to. By default the file name will be the same as the file being uploaded. Thedestination_file_name
option is only used for a single file upload, it does not work for multiple file requests.queue_processing
: A true or false value indicating if the processing of the data should be queued or processed immediately. A response with "queued_processing" will be faster because the resposne doesn't wait on the system to complete processing the data. However, because an queued processing response does not wait for the data to complete processing then the response will not contain any information about the data which was just uploaded. Use queued processing only if you do not need to know the details of the upload. Additionally you can use thewebhook_url
to post back the uploads details once it's processed. Default is true.webhook_url
: A URL which the system shouldPOST
the response to. This works for both immediate processing or queued processing calls. The data sent to thewebhook_url
will be the same as the data that is responded in a synchronous response, and is sent within thedata
parameter. The format sent can be in eitherjson
orxml
by using thewebhook_format
parameter. By default there is no webhook URL.webhook_format
: When awebhook_url
is provided, you can have the data formatted as eitherjson
orxml
. The defautl format isjson
.
Upload One File: source_file_path
Use this option if you simply want to upload just one file. If you have many files to upload we recommend using either source_file_paths
or source_folder_path
.
response = api_client.upload(:destination_path => '/images',
:source_file_path => '/Users/Ellie/Pictures/meowzers.jpg')
Upload A List Of Files: source_file_paths
Specify a list of local files that should be uploaded to an app folder. Use this option if you want to manually select which files should be uploaded. Use the source_folder_path
option if you want to easily upload all of the files
in a folder.
response = api_client.upload(:destination_path => '/images/kitty',
:source_file_paths => [
'/Users/Ellie/Pictures/furball.jpg',
'/Users/Ellie/Pictures/smuckers.jpg',
'/Users/Ellie/Pictures/socks.jpg'
])
Upload All Of The Files In The Folder: source_folder_path
All files within the local Pictures
folder will be uploaded. Additionally, by default all files within its subfolders will also be uploaded. Refer to the recursive_local_folders
parameter if you do not want to recursively upload files in subfolders.
response = api_client.upload(:destination_path => '/images/',
:source_folder_path => '/Users/Ellie/Pictures/')
Get File or Folder Information
Both files and folders are considered "objects", and object data contains information stating if it is a file or a folder. A folder can contain many sub-folders, and many files, and a file is contained by a folder. The concept of files and folders is no different than how your computer handles them, and their hierarchy is what builds the URL. Getting information about a file or a folder both use get_object
.
Get File Information
response = api_client.get_object(:path => '/images/spacewalk.jpg')
Get Folder's Basic Information
response = api_client.get_object(:path => '/images')
Get Folder's Sub-Files and Sub-Folders
response = api_client.get_object(:path => '/images', :files => true, :folders => true)
Rename File or Folder
Renames a file or folder, which are both also known as an object.
response = api_client.rename_object(:path => '/images/tv-shows/night-rider.jpeg',
:new_name => 'knight-rider.jpg')
Create A Folder Path
Creates a folder structure according to the path provided. If any of the folders do not already exist they will be created. The response contains data for every folder in the path, new and existing. The feature of creating the path automatically is also available when uploading files.
In the example below, if the folders images
or movies
did not already exist with the CDN Conenct app then they would automatically be created.
response = api_client.create_path(:path => '/images/movies')
API Response
HTTP responses will be formatted in json, but the library takes the HTTP response and decodes into a hash for the APIResponse
class. The APIResponse
class is used to simpilfy things by using helper functions to read response data. Responses from the API are all structured the same way, and this class is used as a small wrapper to make it easier to get data from it. Note: Be sure to set the :queue_processing => false upload option if you would like to get the upload info the upload's response.
files
:array
: A list of all the files that were uploaded. Each file in the array is a hash.object
:hash
: Can be either a file or folder, or the first file in thefiles
array.msgs
:array
: An array of messages, and each message is a hash. Example message within themsgs
array:{"text" => "info about the message", "status" => "error"}
is_success
:bool
: Successful API call, the response should contain the data your looking for.is_error
:bool
: Unsuccessful API call. Could be a client error (400) or a server error (500).is_client_error
:bool
: Unsuccessful API call due to a client error. Review themsgs
array for more info.is_bad_request
:bool
: Unsuccessful API call due to sending invalid data. Review themsgs
array for more info.is_unauthorized
:bool
: Unsuccessful API call due to not being authorized.is_not_found
:bool
: Unsuccessful API call because the resource does not exist.is_server_error
:bool
: Unsuccessful API call because server is having issues (its also possible, but hopefully you'll never see this).
Example Upload Response
if response.is_success
# Be sure to set the :queue_processing => false upload option if you would like to get the upload info like the response below
for file in response.files
puts "Uploaded " + file["name"]
end
end
Example Get Object Response
if response.is_success
puts "Got object " + response.object["name"]
end
Example Error Response
if response.is_error
puts "CDN Connect Error"
for msg in response.msgs
puts msg["status"] + ": " + msg["text"]
end
end
Note that this HTTP response will be parsed and can be easily read using the APIResponse. Be sure to view the API documentation describing what each response object will contain depending on the API resource.
Support
Please report any bugs on this project's issues page. Additionally, please don't hesitate to contact us and/or submit a pull request with any ideas you may have to improve the service. We will continue to improve upon and build out the API in order to bring more value to you and your projects.


Where do I start?
We've floated on the business generated by "FIP's" for far too long. What if we could be more than just "servants" (input) "Steel mill is the only thing that's keeping this place alive". EDCM: "Has done a lot of great things, but there should be more". There should be more focus on the rest of the area. "Have a broader input on this city" More than just the "area's of poverty".
"Children and the parents that raise them" "I haven't seen it"
NWI
For the things we have to learn before we can do them, we learn by doing them
Reaching for the Stars
As we got further and further away, it [the Earth] diminished in size. Finally it shrank to the size of a marble, the most beautiful you can imagine. That beautiful, warm, living object looked so fragile, so delicate, that if you touched it with a finger it would crumble and fall apart. Seeing this has to change a man.
Space, the final frontier. These are the voyages of the Starship Enterprise. Its five-year mission: to explore strange new worlds, to seek out new life and new civilizations, to boldly go where no man has gone before.
As I stand out here in the wonders of the unknown at Hadley, I sort of realize there’s a fundamental truth to our nature, Man must explore, and this is exploration at its greatest.
Placeholder text by Space Ipsum. Photographs by NASA on The Commons.


With 45,000 members in over 1,800 chapters across 25 states and Puerto Rico, BPA is a co-curricular organization that supports business and information technology educators by offering co-curricular exercises based on national standards.
The 2020 BPA National Leadership Confrence will take place in Washington, DC, on May 6th and will end on May 10th
NLC is not all about winning, It is a great place for learning! you will be surrounded by the best students from states all over america.
Business Professionals of America (BPA) is a student organization that provides students the opportunity to build professional skills through various competitions. “The Mission of Business Professionals of America is to contribute to the preparation of global professionals through the advancement of leadership, citizenship, academic, and technological skills.” BPA provides students with the resources to grow their leadership skills and creates competition to promote innovation.


Varnish Cache is a web application accelerator also known as a caching HTTP reverse proxy. You install it in front of any server that speaks HTTP and configure it to cache the contents. Varnish Cache is really, really fast. It typically speeds up delivery with a factor of 300 - 1000x, depending on your architecture.
Varnish performs really, really well. It is usually bound by the speed of the network, effectivly turning performance into a non-issue. We've seen Varnish delivering 20 Gbps on regular off-the-shelf hardware.
One of the key features of Varnish Cache, in addition to it's performance, is the flexibility of it's configuration language, VCL. VCL enables you to write policies on how incoming requests should be handled. In such a policy you can decide what content you want to serve, from where you want to get the content and how the request or response should be altered. You can read more about this in our tutorial.
Varnish is written to run on modern versions of Linux and FreeBSD and the best experience is had on those plattforms. Thanks to our contributors it also runs on NetBSD, OpenBSD and OS X.


Contact :<PHONE_NUMBER>7
Emailid<EMAIL_ADDRESS>MOVMAX is a car rental company currently handling many cars and servicing thousands of people in our fleet. With the aid of Movmax, we endeavor to provide you the best service at fair prices. MOVMAX has its branch in major cities in Tamilnadu including Chennai,Madurai,Thanjavur,Coimbatore,Tirunelveli,Kanyakumari,Hosur and Karur and extends service all over Southern India.
The organization was initiated in 2019 with a prime objective of fulfilling the needs of our users thus enabling them to move max. And now that we have arrived at your place, you will not have to look anywhere else for different varieties of cars to rent be it hatchbacks, sedans, SUVs, MUVs or luxury cars.
MOVMAX accords you to pick over from our amazing variety of cars with your choice of privacy and freedom.By providing unlimited kilometers on all bookings you make,we contribute a little towards making you rejoice your journey heartily, by focussing a bit more on counting memories, rather than kilometers.
Are your friends and family members coming over for a long holiday? Bored of driving your own car all by yourself and wanting to try a different car? Used to owning your own car?Is your car not enough to accomodate all on a family tour?Is your vehicle not in use for a long period? MOVMAX will always be your default choice to answer these questions.
Here is what makes MOVMAX your first choice for renting cars –
So what are you waiting for? Time to book and ride!


{{ body|safe|linebreaksbr|urlize }}
{{ event.event_name }}
{{ event.location }}
Start: {{ event.datetime_start }}
End: {{ event.datetime_end }}
Services: {{ event.short_services }}
Organization to be billed: {{ event.org_to_be_billed }}
See full details of this event here.


|
Neodroid
0.2.0
Machine Learning Environment Prototyping Tool
|
Public Member Functions | |
| EnvironmentState | CollectState () |
| void | React (Reaction reaction) |
| EnvironmentState | ReactAndCollectState (Reaction reaction) |
| Reaction | SampleReaction () |
| void | Tick () |
| void | PostStep () |
Properties | |
| Reaction | LastReaction [get] |
| int | CurrentFrameNumber [get] |
| bool | Terminated [get] |
| string | LastTerminationReason [get] |
| bool | IsResetting [get] |
| Properties inherited from droid.Runtime.Interfaces.IRegisterable | |
| string | Identifier [get] |
Definition at line 7 of file IEnvironment.cs.
| EnvironmentState droid.Runtime.Interfaces.IEnvironment.CollectState | ( | ) |
| void droid.Runtime.Interfaces.IEnvironment.PostStep | ( | ) |
| void droid.Runtime.Interfaces.IEnvironment.React | ( | Reaction | reaction | ) |
| reaction |
Implemented in droid.Runtime.Environments.AbstractPrototypingEnvironment, droid.Runtime.Environments.ScriptedEnvironment, and droid.Runtime.Environments.NeodroidEnvironment.
| EnvironmentState droid.Runtime.Interfaces.IEnvironment.ReactAndCollectState | ( | Reaction | reaction | ) |
| reaction |
Implemented in droid.Runtime.Environments.ScriptedEnvironment, droid.Runtime.Environments.NeodroidEnvironment, droid.Runtime.Environments.ActorisedPrototypingEnvironment, and droid.Runtime.Environments.AbstractPrototypingEnvironment.
| Reaction droid.Runtime.Interfaces.IEnvironment.SampleReaction | ( | ) |
| void droid.Runtime.Interfaces.IEnvironment.Tick | ( | ) |
|
get |
Definition at line 16 of file IEnvironment.cs.
|
get |
Definition at line 31 of file IEnvironment.cs.
|
get |
Definition at line 11 of file IEnvironment.cs.
|
get |
Definition at line 26 of file IEnvironment.cs.
|
get |
Definition at line 21 of file IEnvironment.cs.


First, you need to create a free Userbase admin account. No credit card required.
Then, you need to include the Userbase SDK into your web app.
You can either include the SDK with a <script>
tag:
Or else, you can include the SDK into your build pipeline:
npm --install --save userbase-js
In your admin account, you will find a Trial app. Get its Application ID, and initialize the Userbase SDK with it:
And you're all set. You can now proceed to the SDK section, or else you can follow our intro tutorial on how to build a very basic web app in a single HTML file.


Yeah I know, I shouldn’t be posting this, but I will just be doing this for myself as for everybody else here. I’ll just put interesting bits from different articles to be sure I have somewhere to go back to for more info. So here it goes for the Google IPO. I will update this during the day.
<!– more –>
SEC filing is here.
Another flourish involves the company’s allegiance to its geeky roots: The amount of the $2.7 billion offering contains an inside joke for the math-minded. The exact offering, $2,718,281,828, is the product of "e" and $1 billion, where "e" is the base of the natural logarithm–a logarithm especially useful in calculus–and equals 2.718281828…. source
The IPO will be auction-based!  Although Google named two investment bankers in its filing, the IPO process itself will be auction-based. […] Shares in the company held by executives and top investors as of March 31, 2004, were: Page, 38.6 million; Brin, 38.5 million; John Doerr, 24 million; Michael Moritz, 24 million; Sequoia Capital, 23.9 million; Kleiner Perkins Caufield & Byers, 23.9 million; and Schmidt, 14.8 million. source
Salaries are: Brin, president of technology, earns $150,000 with a bonus of $206,000; and Page, president of products, earns the same as Brin. Omid Kordestani, senior vice president of worldwide sales, makes $175,000 annually, with nearly $400,000 in bonuses. Wayne Rosing, vice president of engineering, earns $175,000 annually, with $150,000 extra.
Schmidt earns $250,000 annually with a bonus of $300,000. He has the right to purchase 14.3 million common shares at a purchase price of 30 cents; and another 426,000 preferred shares at $2.34. source
Here are some of the things they are saying they will do: Managing Wall Street: "Many companies are under pressure to keep their earnings in line with analysts’ forecasts. Therefore, they often accept smaller, but predictable, earnings rather than larger and more unpredictable returns. Sergey and I feel this is harmful, and we intend to steer in the opposite direction." source
Wonderful. I congratulate them, but it will be interesting to see if it works.
Dual class voting: "While this structure is unusual for technology companies, it is common in the media business and has had a profound importance there. The New York Times Company, the Washington Post Company and Dow Jones, the publisher of The Wall Street Journal, all have similar dual class ownership structures. Media observers frequently point out that dual class ownership has allowed these companies to concentrate on their core, long-term interest in serious news coverage, despite fluctuations in quarterly results. source
This will actually help them with the above point. They will retain more power and they can live with share price fluctuations if they pull it through.
Last quarter Numbers: Net Income: $64 million Net Income per Share: 42 cents Revenue $389.6 million Employees: 1907 (source)
From the SEC Filing: Shareholders Equity: $727,780,000 Cash: $454,888,000
We have regularly paid refunds related to fraudulent clicks and expect to do so in the future. If we are unable to stop this fraudulent activity, these refunds may increase. If we find new evidence of past fraudulent clicks we may have to issue refunds retroactively of amounts previously paid to our Google Network members." source
This is important to remember! The danger here is huge.
"We have never declared or paid any cash dividend on our capital stock. We currently intend to retain any future earnings and do not expect to pay any dividends in the foreseeable future." source
They better grow faster than market growth.
The company released the prices of its search appliances in the filing. The search appliances allow businesses to perform Google-like searches on their own networks. The three models cost $32,000, $230,000 and $600,000. source
Update: The sick thing is that he could have written anything in that prospectus and people would still be begging him for shares. Google Finally Files by Erick Schonfeld. Erick also has the link to the Bershire Hathaway Owner’s Manual which Google is referring too. The general yearly reports from Bershire Hathaway are a must read for a new investor by the way.
Update: John Battelle was on Talk of the Nation about the Google IPO on the 27th of April and you can listen to the show right here. source.
Also very interesting are the 10 things you didn’t know about Google from Red Herring. This includes stuff like:
Networking skills: The Google Network â€“ the collection of outside Web sites the company provides advertising and search services to â€“ is becoming more important. These sites accounted for 21 percent of Googleâ€™s revenues in the first quarter of 2004, up from 15 percent in 2003.
and
9.Â Â Â Â Â Â Mismatched?: Some partnership deals could be costing Google. Agreements with â€œa small numberâ€? of sites guarantee them a negotiated minimum fee. If Google makes less money from these partnerships than the minimum it agreed to pay, it has to eat the difference. In 2003, this cost Google $22.5 million in cost of revenues related to specific deals where it lost money.
The thing there is that Google starts to need space on other sites to make their far over 100.000 advertisers happy. They need more traffic and they need to pay for that. Other people will pay for traffic too though and on top of that, sites might be reluctant to sell their space for the money that Google is willing to pay.
10.Â Â Patent squabbles: In 2002, Overture Services (which is now owned by Yahoo) sued Google, claiming that its AdWords program infringes on certain claims of an Overture patent. The case is yet to be decided.
The Google Doubletalk article on Red Herring also talks a bit about the different voting rights shares will have. The problem with this is really that it gives a lot less rights to the owners of the business. It puts the power into managents hands, which is something that goes a little bit again the shareholder value mantra that is so common in the US. I am not saying it is bad, it will just be interesting to watch.
Ross Mayfield is thinking about whether Google will do a Direct Public Offering, which could potentially go as far as to Google being the market where the shares are traded, being quasi public, but also closed, kind of. I am not sure if Ross has gone as far in his thinking but things are still interesting out there.
Also notice the Google Blog! ;) (source)
Some interesting bits from the S-1 filing are here, which goes on mostly about problems attached to AdWords, AdSense, and the like.
A bit of stuff about the online auction model and the Google IPO is here at the NY-Times.
Also, Jeremy is talking about some questions that the SearchEngineJournal asked here, putting forward some interesting points. I commented a bit on his site.


{% extends "settings.html" %}
{% import "forms.html" as forms %}
{% import "displays.html" as displays %}
{% import "request_messages.html" as request_messages %}
{% block head %}
{{ super() }}
{% endblock %}
{% block body %}
{{ super() }}
{# Trial values input form #}
Trial Settings
{{ forms.input_trial(trial_display,time_labels) }}
{#- Messages in response to requests #}
{{ request_messages.trial_settings(
flags,
trial_display,
trial_saved_name,
loaded_trial_name,
deleted_trial_names)
}}
{# Saved Trials Display #}
Saved Trial Values:


10th grade is a difficult time, but that's okay! It's your time to shine. This page offers a plethora of resources, knowledge, and information for all Sophomores to use to their advantage.
Remember to work hard because when it comes to school, you get what you put in!
Keep your head held high-you're halfway through the journey. Now, get studying!
- "Precommit to getting 8 hours of sleep a night. It's tempting to stay up late because you have work to do, but then you get in a cycle where you can't work efficiently because you're too tired, but you can't go to sleep because you have too much work to do," by Jessica Su
- "Begin looking for scholarships. A lot of people wait until senior year but you will be happy that you started early," by Austin Mitchell


Self-awareness, Empathy & Compassion
Inteligence
The ability to recognise, differentiate and manage our emotions and the emotions of others around us
The standing definition of Emotional Intelligence is the ability to recognise, differentiate and manage our emotions and the emotions of others around us. In 1990 American Professors, Peter Salovey and John Mayer, identified Emotional Intelligence as a type of self-awareness with greater influence on human behaviour and life outcomes than just good old brain power and IQ. Journalist David Goleman expanded the concept in 1995 and noted three levels of Emotional Intelligence:
Compassion is a social emotion that enables people to live and thrive in communities. Compassion literally means to suffer together. It is what drives us to act when confronted with another’s suffering. According to The Mindful education group (https://mindfulnesseducation.nz/what-is-mindfulness/), mindfulness is the art of giving your full, open-hearted attention to what is immediately occurring, physically and mentally, within and around you. It’s about being present and in the moment with kindness and curiosity. This short animation by Happify illustrats how mindfulness is a superpower. Watch animtation video Mindfulness is the antidote that helps us stay in the flow or in alignment with yourself. When you are in alignment with yourself you are completely absolved in what you are doing, you are fully present. When we are not fully present, we lark compassion. People who are emotionally intelligent have high self-awareness, manage their emotions effectively, are self-motivated, show empathy to others and create strong connections, relationships. Emotionally intelligent individuals are also good active listeners and are therefore able to connect with people effectively. The art of being a good listener involves; being fully present, empathy. Active listening and curiosity. Good listeners see every conversation as a lesson and therefore are present on conversations, actively listening, not preparing a response. Great listeners step out of themselves ad try to understand why another person may be thinking or feeling a certain way. They let the speaker know that they are paying attention and understand. Curious people take all conversations as learning opportunities, and when we are curious about something, we tend to listen more closely. Everyone has a desire to be heard. Practice emotional hygiene through self-reflection, marshalling your positive emotions, managing the negative and shoeing compassion to others.


IDF Downs Gaza Drone in Southern Israel
by Hana Levi JulianThe IDF said Saturday night that soldiers shot down an unmanned aerial vehicle (UAV) on Saturday that infiltrated Israeli territory from Gaza.
It is not yet clear which terrorist organization launched the drone, nor whether or not it was armed.


| bgtest | Breusch-Godfrey Test |
| bondyield | Bond Yield |
| bptest | Breusch-Pagan Test |
| ChickEgg | Chickens, Eggs, and Causality |
| coef.coeftest | Inference for Estimated Coefficients |
| coefci | Inference for Estimated Coefficients |
| coefci.default | Inference for Estimated Coefficients |
| coefci.glm | Inference for Estimated Coefficients |
| coefci.mlm | Inference for Estimated Coefficients |
| coefci.survreg | Inference for Estimated Coefficients |
| coeftest | Inference for Estimated Coefficients |
| coeftest.breakpointsfull | Inference for Estimated Coefficients |
| coeftest.default | Inference for Estimated Coefficients |
| coeftest.glm | Inference for Estimated Coefficients |
| coeftest.mlm | Inference for Estimated Coefficients |
| coeftest.survreg | Inference for Estimated Coefficients |
| confint.coeftest | Inference for Estimated Coefficients |
| coxtest | Cox Test for Comparing Non-Nested Models |
| currencysubstitution | Currency Substitution |
| df.residual.bgtest | Breusch-Godfrey Test |
| df.residual.coeftest | Inference for Estimated Coefficients |
| dwtest | Durbin-Watson Test |
| encomptest | Encompassing Test for Comparing Non-Nested Models |
| ftemp | Femal Temperature Data |
| fyff | U.S. Macroeconomic Time Series |
| gmdc | U.S. Macroeconomic Time Series |
| gqtest | Goldfeld-Quandt Test |
| grangertest | Test for Granger Causality |
| grangertest.default | Test for Granger Causality |
| grangertest.formula | Test for Granger Causality |
| growthofmoney | Growth of Money Supply |
| harvtest | Harvey-Collier Test |
| hmctest | Harrison-McCabe test |
| ip | U.S. Macroeconomic Time Series |
| jocci | U.S. Macroeconomic Time Series |
| jtest | J Test for Comparing Non-Nested Models |
| lhur | U.S. Macroeconomic Time Series |
| logLik.coeftest | Inference for Estimated Coefficients |
| lrtest | Likelihood Ratio Test of Nested Models |
| lrtest.default | Likelihood Ratio Test of Nested Models |
| lrtest.formula | Likelihood Ratio Test of Nested Models |
| Mandible | Mandible Data |
| moneydemand | Money Demand |
| nobs.coeftest | Inference for Estimated Coefficients |
| petest | PE Test for Linear vs. Log-Linear Specifications |
| print.coeftest | Inference for Estimated Coefficients |
| pw561 | U.S. Macroeconomic Time Series |
| raintest | Rainbow Test |
| reset | RESET Test |
| resettest | RESET Test |
| unemployment | Unemployment Data |
| USDistLag | US Macroeconomic Data |
| valueofstocks | Value of Stocks |
| vcov.bgtest | Breusch-Godfrey Test |
| wages | Wages |
| waldtest | Wald Test of Nested Models |
| waldtest.default | Wald Test of Nested Models |
| waldtest.formula | Wald Test of Nested Models |
| waldtest.lm | Wald Test of Nested Models |


Tipsy Cook
Sign In
Mood Quiz
Feeling Lucky
About
Tipsy Cook
Plan a perfect night in, with bespoke food, drink and movie selections
Sign in
Feeling Lucky
Sign in
×
Please enter your first name.
Please enter your last name.
Please enter a valid email address.
Let's get started
Previous
Next


This inspection lists modules which depend on other modules with higher language level.
Such dependencies should be broken off or current module language level should be increased.
Because this inspection requires global code analysis it is only available for Analyze|Inspect Code or
Analyze|Run Inspection by Name and it will not report in the editor.


It's Nice to Meet You!
Science Faculty is the most diverse faculty at McMaster University;
8 departments covering everything from music cognition to theoretical physics. A group of us saw this diversity and lack of communication platforms between programs. We also saw great opportunities in bringing scientists from diverse fields together to make a difference in graduate student life at McMaster.
Do you want to know what’s happening in other science departments at the opposite side of the campus?
Do you want to see more options for your scientific career opportunities?
Have you found yourself walking down a hallway saying "Who was that?"
SAM helps us all connect with each other through fun social events that are full of opportunities to meet science grads of own&other departments, alumni and potential employers in industry.
You will be invited to all events; fun social at the Phoenix, wine & cheese with alumni, to name a few. You will be surprised how much opportunities you have as a Science grad at McMaster.
Check our next event here, step out and have fun socializing!
Register our current event! The eventbrite link is: http://sam-labcoatsocial-2015.eventbrite.ca
Discover the diversity and depth of research and people in the Science Faculty!
If you would like us to showcase your research, let us know via Contact us or directly by e-mail (samexec@scientistassociation.com).


Version 1.1.0
I finally figured out the file format of the method files. Once I figure out a good way to save them back in that format I will update this editor. Based on what I've been seeing, this editor probably doesn't save the files exactly correctly, so for the time being I consider this editor broken.


Bayelsa PDP candidate, Diri wins LGA - The Nation Newspaper
By Mike Odiegwu, Yenagoa
The Peoples Democratic Party (PDP), Senator Douye Diri has won his Kolokuma-Opokuma Local Government Area, Bayelsa State scoring 15,360 to win his counterpart in the All Progressives Congress (APC), David Lyon, who polled 8,934.
Read Also: BREAKING: No loss of life in Bayelsa, INEC
The margin of difference was unimpressive as most voters from the LGA stayed away from the polling units as indicated by the difference between number of accredited voters and registered voters.


In the last few years we have seen a shift in the way web applications are built from JavaScript being a complementary tool to augment in functionality toward it being the main language in which an autonomous client side application is developed. Browsers have also helped the single page application paradigm with the introduction of the history API in HTML5. This means many recent web applications have been developed to only make a single page request and then subsequently make ajax calls back to the server to update the application. This gives users a much more responsive experience using web applications.
Problems with single page applications
Building applications which render content from JavaScript introduces some interesting problems.
Initial load flickering
Traditionally when we browse web pages we get most of the content on the page immediately (with the notable exception of images). This is because a full HTML document complete with all of the content has been sent down from the server. Single page applications tend to send down a skeleton document on initial load and then pull in the correct bits for the actual page via JavaScript. This introduces a lot of movement on the page during initial load while the DOM changes structure as different parts are loaded. This can produce a disconcerting experience for a user watching this happen. There are of course many techniques which can be used to mitigate this effect.
SEO and search engines
While in recent years developers have been building JavaScript heavy applications, many search engine webcrawlers do not execute javascript when indexing sites. This is a bit of a problem if you have a single page application and want the content to be indexed by Google.
Server-side rendering
As I posted last week I have just started on my own project which I will be working on for the next year. My site is going to be heavily reliant on SEO but I don’t want to constrain the user experience because search engines wont execute JavaScript. Enter server-side rendering (SSR).
The principal behind SSR is to take a JavaScript enabled page and optimistically execute the JavaScript required to reach the initial page state and then send down that generated DOM to the client rather than our skeleton page. This is actually pretty similar to what web technologies have been doing for years with server code generating the DOM and sending that down to users, but our language isn’t ASP.Net, Rails or PHP its JavaScript that would normally execute in the browser.
The net effect of this optimistic generation of the DOM is that the page that has been sent to the client doesn’t need to change at until user performs some actions. This means that it will render quickly in the browser rather than needing to wait for JS or possibly AJAX to complete. As a result search crawlers without JS will see complete content. Once that initial DOM is rendered in the browser our single page application can take over and register all the necessary JS events required.
ReactJS.NET
While I’m sure there are several tools which will enable you to do SSR, I love React (made by Facebook) as a front-end rendering technology and Daniel Lo Nigro (@daniel15 who also works at Facebook) has done a great job building a server side rendering engine for React in .NET. This takes your react components and allows you to render them onto the page with some props passed in via c#.
@Html.React("CommentsBox", new { initialComments = Model.Comments })
That’s pretty tidy! What this will do is to generate the react DOM for this control and props and insert it into the page. You can then point react at that piece of DOM on the client-side and it will detect its already rendered, not modify the DOM and attach any additional JS bits it needs. I’m not going to go into any more detail about the actual server-side rendering code as there are plenty of details on the ReactJS.NET site.
Using SSR to build a single page app
That’s all great and useful functionality and allows you to render your react controls onto a single page but it isn’t really a single page app just yet. For that to happen we need to have a couple of pages rigged to a router. In my example we will build a little application which has a list and a separate page for the detail of each list item.
Our app will have:
- a mini router
- a list view
- a detail view
- a controller
When we load the page in our server side view we will use the ReactJS.NET helper to render out our react view.
For our detail page we will make the router pass enough information from the list to display the detail page, so there’s no need to ajax back to the server, however when we use the router to go back to our list page we wont pass in enough details to render the page instead we will go back to the server.
The net effect of this will be that we will have a single page app feel where we click an item in the list and immediately have our data available. All we need to do is re-render client side the specific section of the page that’s relevant. This happens really fast. When we go back to the list page we show a loading message while the page goes back and retrieves data from the server. We still don’t need to wait for very much here, only a small section of DOM being rendered and an ajax request, this is faster than doing a whole page request back to the server and re-rendering the entire DOM to the browser.
The app
Have a play with the sample app with JS on and off, and check out the net tab to see requests going back to the server. (note: the back button isn’t implemented properly and just forces a page refresh. In a real app you would use a proper router to help here)
The source
As you can see this is pretty easy to do and gives a great result with JS on or off so its good for search engines too.
gotchas
There are a few things to note when doing SSR with a router:
- ReactJS.NET wont do ajax requests or provide access to any browser variables so your initial page state cant call anything like window.
- You need to have routing on both the server and client, the server must respond to all URLs the browser router creates.
- If the user middle clicks a link, bypass the router completely as you want them to open the link in a new tab.
This tech is pretty cool, its great that we can build applications that get the best of both worlds when it comes to server vs client side rendering. Keep an eye on my blog over the next few weeks to hear more about my project.


Trailcast
Browse
Present
Join
Leave
Show Subtitle
Livestream Community
Please sign in
Channel Visibility
Public
Private
Your Name
This will be your name for chat
Channel Name
Enter a name for channel you want to create
Start Chating


|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |
| Packages that use ontopoly.model | |
|---|---|
| ontopoly | |
| ontopoly.components | |
| ontopoly.conversion | |
| ontopoly.fileupload | |
| ontopoly.model | |
| ontopoly.models | |
| ontopoly.pages | |
| ontopoly.pojos | |
| ontopoly.utils |
| Classes in ontopoly.model used by ontopoly | |
|---|---|
| FieldInstance
Represents a populated field attached to an instance topic. |
|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
| Classes in ontopoly.model used by ontopoly.components | |
|---|---|
| AssociationType
Represents an association type. |
|
| LifeCycleListener
|
|
| RoleField
Represents a role field. |
|
| RoleField.ValueIF
Interface. |
|
| RoleType
Represents a role type. |
|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
|
| TopicType
INTERNAL: Represents a topic type. |
| Classes in ontopoly.model used by ontopoly.conversion | |
|---|---|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
| Classes in ontopoly.model used by ontopoly.fileupload | |
|---|---|
| LifeCycleListener
|
| Classes in ontopoly.model used by ontopoly.model | |
|---|---|
| AbstractTypingTopic
INTERNAL: Common superclass for all typing topics, like association types, topic types, role types, etc. |
|
| AssociationField
Represents an association field. |
|
| AssociationType
Represents an association type. |
|
| Cardinality
Represents a cardinality that can be assigned to a field. |
|
| CreateAction
Represents the edit mode of a field. |
|
| DataType
Represents a datatype which can be assigned to an occurrence type. |
|
| EditMode
Represents the edit mode of a field. |
|
| FieldAssignment
Represents a field as assigned to a topic type. |
|
| FieldDefinition
Represents a field type, which may be a name type, an occurrence type, an identity field, or a combination of an association role and an association type. |
|
| FieldInstance
Represents a populated field attached to an instance topic. |
|
| FieldsView
Represents a fields view. |
|
| IdentityField
Represents an identify field. |
|
| IdentityType
Represents an identity type. |
|
| InterfaceControl
Represents a datatype which can be assigned to an association field. |
|
| LifeCycleListener
|
|
| NameField
Represents a name field. |
|
| NameType
Represents a name type. |
|
| OccurrenceField
Represents an occurrence field. |
|
| OccurrenceType
Represents an occurrence type. |
|
| QueryField
Represents a query field. |
|
| QueryMapper
|
|
| RoleField
Represents a role field. |
|
| RoleField.ValueIF
Interface. |
|
| RoleType
Represents a role type. |
|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
|
| TopicType
INTERNAL: Represents a topic type. |
|
| ViewModes
|
| Classes in ontopoly.model used by ontopoly.models | |
|---|---|
| AssociationType
Represents an association type. |
|
| FieldAssignment
Represents a field as assigned to a topic type. |
|
| FieldDefinition
Represents a field type, which may be a name type, an occurrence type, an identity field, or a combination of an association role and an association type. |
|
| FieldInstance
Represents a populated field attached to an instance topic. |
|
| FieldsView
Represents a fields view. |
|
| NameType
Represents a name type. |
|
| OccurrenceType
Represents an occurrence type. |
|
| RoleField
Represents a role field. |
|
| RoleField.ValueIF
Interface. |
|
| RoleType
Represents a role type. |
|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
|
| TopicType
INTERNAL: Represents a topic type. |
| Classes in ontopoly.model used by ontopoly.pages | |
|---|---|
| AssociationType
Represents an association type. |
|
| FieldDefinition
Represents a field type, which may be a name type, an occurrence type, an identity field, or a combination of an association role and an association type. |
|
| FieldsView
Represents a fields view. |
|
| LifeCycleListener
|
|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
|
| TopicType
INTERNAL: Represents a topic type. |
| Classes in ontopoly.model used by ontopoly.pojos | |
|---|---|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
| Classes in ontopoly.model used by ontopoly.utils | |
|---|---|
| FieldAssignment
Represents a field as assigned to a topic type. |
|
| Topic
INTERNAL: Common superclass for all topics, like instances, association types, topic types, role types, etc. |
|
| TopicMap
INTERNAL: Represents an Ontopoly topic map. |
|
| TopicType
INTERNAL: Represents a topic type. |
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES |


Amistad (1997) 3 1/2 stars out of 4. Starring Djimon Hounsou, Matthew McConaughey, Anthony Hopkins and Morgan Freeman. Directed by Steven Spielberg.
The first scene is an extreme close-up of a man's sweaty face as he struggles mightily to loosen a bolt.
You neither know who the man is nor the reason for his actions.
In quick succession, the man successfully loosens the bolt, frees himself from shackles and then frees others, who gather weapons, attack the crew of the ship on which they are being held and capture the ship after a short, but bloody, skirmish.
These are the opening images of Amistad, Steven Spielberg's film based on a little-known event in American history.
The year is 1839 and 53 kidnapped Africans are being transported from Cuba to begin lives as slaves in America.
After their shipboard revolt, the Africans spare two crew members and order them to turn the ship east and head back to Africa. During the day, the sailors steer into the sun, but at night, when their captors sleep, the sailors turn the ship toward North America.
Eventually, the ship winds up off the coast of Long Island, where a U.S. naval vessel captures the Africans.
Brought to trial in the United States, the Africans are charged with murder. However, the situation becomes a political tinderbox as the Spanish government claims them as property and wants them returned.
The whirlwind that surrounds this event eventually lands at the doorstep of the U.S. Supreme Court, and involves an incumbent president, Martin Van Buren, and a former chief executive, John Quincy Adams.
Amistad is an earnest examination of one race's fight for their rights and their freedom. Led by Cinque (Djimon Hounsou), the Africans are confused and frightened by the international uproar they have unwittingly created. Yet, they only want one thing - to go home.
Coming to their defense is a property lawyer, Roger Baldwin (Matthew McConaughey), whose initial success in winning the Africans their freedom is sabotaged for political expediency by President Van Buren's minions.
A reluctant and retired Adams (Anthony Hopkins) must then present their case before the Supreme Court, seven of whose nine justices are Southerners.
This sounds like rather dry material for movie fare, but Spielberg gives it a deep emotional core. He makes you care about these uprooted people and their wretched plight. You do more than pity them - you root and pray for their success.
The heart of the picture is Cinque. Newcomer Hounsou, a former model whose previous acting experience includes a Janet Jackson music video, gives a towering performance.
A man of great strength and dignity, Cinque finds it difficult to grasp the various complications and ramifications being woven around him and his fellow Africans. To Cinque, there is only right or wrong, justice and injustice.
Hounsou learned the Mende dialect of West Africa for his role. And though he speaks an unfamiliar tongue, Hounsou is able to display Cinque's courage, as well as his vulnerability.
McConaughey is adequate as Baldwin. Even though his New England accent comes and goes, he captures the lawyer's passion and fire to do his best for his clients.
Hopkins, as Adams, buried under old-man makeup, reveals the spark and righteousness that age could not dim.
Morgan Freeman, however, is given little to do as leader of the abolitionists who adopt the Africans' cause as their own.
Spielberg's strength, as it was in Schindler's List, is showing the cruelty one human being can inflict upon another. His recreation of the Middle Passage, the deadly journey that transported captured Africans from their homeland across the Atlantic, is as harrowing and horrifying a series of images as ever put on film.
 Most of the story and much of the action is told and shown through the eyes of Cinque and his people.
In a film in which the lines between right and wrong, good and evil, seem defined, Spielberg and screenwriter David Franzoni do not stoop to stereotypical villains to further their cause.
His antagonists are not villains, per se, but rather flawed men who value political expediency above morality. They are amoral politicians who feel they are doing what they must to preserve their country.
Amistad has its slow moments.  But it makes a powerful statement about the value of freedom.
Bob Bloom is the film critic at the Journal and Courier in Lafayette, Ind. He can be reached by e-mail at<EMAIL_ADDRESS>or<EMAIL_ADDRESS>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


SingleCellTK (SCTK) is equipped with a generic heatmap plotting function called plotSCEHeatmap()
, which takes an SingleCellExperiment
(SCE) object as the primary input. This generic function is a wrapper of ComplexHeatmap::Heatmap
(Zuguang Gu and et. al., 2016). Similar to many heatmap plotting functions in other packages, we allow flexible legend strategies. Meanwhile, we support the direct use of information already saved in colData
and rowData
.
To present the usage of plotSCEHeatmap()
, we would like to use a small example provided with SCTK.
## class: SingleCellExperiment
## dim: 200 390
## metadata(0):
## assays(1): counts
## rownames(200): ENSG00000251562 ENSG00000205542 ... ENSG00000204472
## ENSG00000133872
## rowData names(2): feature_ID feature_name
## colnames(390): pbmc_4k_GACCAATTCCTAGAAC-1 pbmc_4k_AAATGCCGTTTCGCTC-1
## ... pbmc_4k_CTGAAGTTCCACTCCA-1 pbmc_4k_CATCGAACAGCCAGAA-1
## colData names(4): cell_barcode column_name sample type
## reducedDimNames(0):
## spikeNames(0):
## altExpNames(0):
The minimum setting for plotSCEHeatmap()
is the input SCE object and the data matrix to plot (default "logcounts"
though). In this way, all cells and features will be presented while no annotation or legend (except the main color scheme) will be shown.
plotSCEHeatmap(sce, useAssay = "counts")
The first way to subset the heatmap is to directly use an index vector that can subset the input SCE object to featureIndex
and cellIndex
, including numeric
, and logical
vectors, which are widely used, and character
vector containing the row/col names. Of course, user can directly use a subsetted SCE object as input.
# Make up random downsampling numeric vector featureSubset <- sample(nrow(sce), 50) cellSubset <- sample(ncol(sce), 50) plotSCEHeatmap(inSCE = sce, useAssay = "counts", featureIndex = featureSubset, cellIndex = cellSubset)
In a more complexed situation, where users might only have a set of identifiers which are not inside the row/col names (i.e. unable to directly subset the SCE object), we provide another approach. The subset, in this situation, can be accessed via specifying a vector that contains the identifiers users have, to featureIndexBy
or cellIndexBy
. This specification allows directly giving one column name of rowData
or colData
.
subsetFeatureName <- sample(rowData(sce)$feature_name, 50) subsetCellBarcode <- sample(sce$cell_barcode, 50) plotSCEHeatmap(inSCE = sce, useAssay = "counts", featureIndex = subsetFeatureName, featureIndexBy = "feature_name", cellIndex = subsetCellBarcode, cellIndexBy = "cell_barcode")
As introduced before, we allow directly using column names of rowData
or colData
to attach color bar annotations. To make use of this functionality, pass a character
vector to rowDataName
or colDataName
.
# Make up arbitrary annotation, rowRandLabel <- c(rep('aa', 100), rep('bb', 100)) rowData(sce)$randLabel <- rowRandLabel colRandLabel <- c(rep('cc', 195), rep('dd', 195)) colData(sce)$randLabel <- colRandLabel plotSCEHeatmap(inSCE = sce, useAssay = "counts", featureIndex = featureSubset, cellIndex = cellSubset, rowDataName = "randLabel", colDataName = c("type", "randLabel"))
Fully customized annotation is also supported, though it can be complexed for users. For the labeling, it is more recommanded to insert the information into rowData
or colData
and then make use. For coloring, information should be passed to featureAnnotationColor
or cellAnnotationColor
. The argument must be a list
object with names matching the annotation classes (such as "randLabel"
and "type"
); each inner object under a name must be a named vector, with colors as the values and existing categories as the names. The working instance looks like this:
## [1] "For row annotation"
## $randLabel
## aa bb
## "#FF4D4D" "#4DFFFF"
## [1] "For column annotation"
## $sample
## pbmc_4k
## "#FF4D4D"
##
## $type
## Singlet Doublet EmptyDroplet
## "#4DFFFF" "#FFC04D" "#4D4DFF"
##
## $randLabel
## cc dd
## "#FFFF4D" "#BA4DFF"
In some cases, it might be better to do a semi-heatmap (i.e. split the rows/columns first and cluster them within each group) to visualize some expression pattern, such as evaluating the differential expression. For this need, use rowSplitBy
or colSplitBy
. Argument must be a character
vector included inside what are annotated.
plotSCEHeatmap(inSCE = sce, useAssay = "counts", featureIndex = featureSubset, cellIndex = cellSubset, rowDataName = "randLabel", colDataName = c("type", "randLabel"), rowSplitBy = "randLabel", colSplitBy = "type")
Text labels of features or cells can be added via rowLabel
or colLabel
. Use TRUE
or FALSE
to specify whether to show the rownames
or colnames
of the subsetted SCE object. Additionally, giving a single string of a column name of rowData
or colData
can enable the labeling of the annotation. Furthermore, users can directly throw a character vector to the parameter, with the same length of either the full SCE object or the subsetted.
The dendrograms for features or cells can be removed by passing FALSE
to rowDend
or colDend
.
The row title ("Genes"
) and column title ("Cells"
) can be changed or removed by passing a string or NULL
to rowTitle
or colTitle
, respectively.
plotSCEHeatmap(inSCE = sce, useAssay = "counts", featureIndex = featureSubset, cellIndex = cellSubset, rowLabel = "feature_name", colLabel = as.character(1:50), colDend = FALSE, rowTitle = "Downsampled features")
There are still some parameters not mentioned here, but they are not frequently used. Please refer to ?plotSCEHeatmap
as well as ?ComplexHeatmap::Heatmap
.


| PERLSYMBIAN(1) | Perl Programmers Reference Guide | PERLSYMBIAN(1) |
NOTE: this port (as of 0.4.1) does not compile into a Symbian OS GUI application, but instead it results in a Symbian DLL. The DLL includes a C++ class called CPerlBase, which one can then (derive from and) use to embed Perl into applications, see symbian/README.
The base port of Perl to Symbian only implements the basic POSIX-like functionality; it does not implement any further Symbian or Series 60, Series 80, or UIQ bindings for Perl.
It is also possible to generate Symbian executables for "miniperl" and "perl", but since there is no standard command line interface for Symbian (nor full keyboards in the devices), these are useful mainly as demonstrations.
These instructions have been tested under various Nokia Series 60 Symbian SDKs (1.2 to 2.6, 2.8 should also work, 1.2 compiles but does not work), Series 80 2.0, and Nokia 7710 (Series 90) SDK. You can get the SDKs from Forum Nokia (<http://www.forum.nokia.com/>). A very rough port ("it compiles") to UIQ 2.1 has also been made.
A prerequisite for any of the SDKs is to install ActivePerl from ActiveState, <http://www.activestate.com/Products/ActivePerl/>
Having the SDK installed also means that you need to have either the Metrowerks CodeWarrior installed (2.8 and 3.0 were used in testing) or the Microsoft Visual C++ 6.0 installed (SP3 minimum, SP5 recommended).
Note that for example the Series 60 2.0 VC SDK installation talks about ActivePerl build 518, which does no more (as of mid-2005) exist at the ActiveState website. The ActivePerl 5.8.4 build 810 was used successfully for compiling Perl on Symbian. The 5.6.x ActivePerls do not work.
Other SDKs or compilers like Visual.NET, command-line-only Visual.NET, Borland, GnuPoc, or sdk2unix have not been tried.
These instructions almost certainly won't work with older Symbian releases or other SDKs. Patches to get this port running in other releases, SDKs, compilers, platforms, or devices are naturally welcome.
(1) Get a Perl source code distribution (for example the file perl-5.9.2.tar.gz is fine) from <http://www.cpan.org/src/> and unpack it in your the C:/Symbian directory of your Windows system.
(2) Change to the perl source directory.
cd c:\Symbian\perl-5.x.x
(3) Run the following script using the perl coming with the SDK
perl symbian\config.pl
You must use the cmd.exe, the Cygwin shell will not work. The PATH must include the SDK tools, including a Perl, which should be the case under cmd.exe. If you do not have that, see the end of symbian\sdk.pl for notes of how your environment should be set up for Symbian compiles.
(4) Build the project, either by
make all
in cmd.exe or by using either the Metrowerks CodeWarrior or the Visual C++ 6.0, or the Visual Studio 8 (the Visual C++ 2005 Express Edition works fine).
If you use the VC IDE, you will have to run symbian\config.pl first using the cmd.exe, and then run 'make win.mf vc6.mf' to generate the VC6 makefiles and workspaces. "make vc6" will compile for the VC6, and "make cw" for the CodeWarrior.
The following SDK and compiler configurations and Nokia phones were tested at some point in time (+ = compiled and PerlApp run, - = not), both for Perl 5.8.x and 5.9.x:
SDK | VC | CW | --------+----+----+--- S60 1.2 | + | + | 3650 (*) S60 2.0 | + | + | 6600 S60 2.1 | - | + | 6670 S60 2.6 | + | + | 6630 S60 2.8 | + | + | (not tested in a device) S80 2.6 | - | + | 9300 S90 1.1 | + | - | 7710 UIQ 2.1 | - | + | (not tested in a device) (*) Compiles but does not work, unfortunately, a problem with Symbian.
If you are using the 'make' directly, it is the GNU make from the SDKs, and it will invoke the right make commands for the Windows emulator build and the Arm target builds ('thumb' by default) as necessary.
The build scripts assume the 'absolute style' SDK installs under C:, the 'subst style' will not work.
If using the VC IDE, to build use for example the File->Open Workspace-> C:\Symbian\8.0a\S60_2nd_FP2\epoc32\build\symbian\perl\perl\wins\perl.dsw The emulator binaries will appear in the same directory.
If using the VC IDE, you will a lot of warnings in the beginning of the build because a lot of headers mentioned by the source cannot be found, but this is not serious since those headers are not used.
The Metrowerks will give a lot of warnings about unused variables and empty declarations, you can ignore those.
When the Windows and Arm DLLs are built do not be scared by a very long messages whizzing by: it is the "export freeze" phase where the whole (rather large) API of Perl is listed.
Once the build is completed you need to create the DLL SIS file by
make perldll.sis
which will create the file perlXYZ.sis (the XYZ being the Perl version) which you can then install into your Symbian device: an easy way to do this is to send them via Bluetooth or infrared and just open the messages.
Since the total size of all Perl SIS files once installed is over 2 MB, it is recommended to do the installation into a memory card (drive E:) instead of the C: drive.
The size of the perlXYZ.SIS is about 370 kB but once it is in the device it is about one 750 kB (according to the application manager).
The perlXYZ.sis includes only the Perl DLL: to create an additional SIS file which includes some of the standard (pure) Perl libraries, issue the command
make perllib.sis
Some of the standard Perl libraries are included, but not all: see "HISTORY" or symbian\install.cfg for more details (250 kB -> 700 kB).
Some of the standard Perl XS extensions (see "HISTORY" are also available:
make perlext.sis
which will create perlXYZext.sis (290 kB -> 770 kB).
To compile the demonstration application PerlApp you need first to install the Perl headers under the SDK.
To install the Perl headers and the class CPerlBase documentation so that you no more need the Perl sources around to compile Perl applications using the SDK:
make sdkinstall
The destination directory is C:\Symbian\perl\X.Y.Z. For more details, see symbian\PerlBase.pod.
Once the headers have been installed, you can create a SIS for the PerlApp:
make perlapp.sis
The perlapp.sis (11 kB -> 16 kB) will be built in the symbian subdirectory, but a copy will also be made to the main directory.
If you want to package the Perl DLLs (one for WINS, one for ARMI), the headers, and the documentation:
make perlsdk.zip
which will create perlXYZsdk.zip that can be used in another Windows system with the SDK, without having to compile Perl in that system.
If you want to package the PerlApp sources:
make perlapp.zip
If you want to package the perl.exe and miniperl.exe, you can use the perlexe.sis and miniperlexe.sis make targets. You also probably want the perllib.sis for the libraries and maybe even the perlapp.sis for the recognizer.
The make target 'allsis' combines all the above SIS targets.
To clean up after compilation you can use either of
make clean make distclean
depending on how clean you want to be.
cat makefile.sh >makefile 'cat' is not recognized as an internal or external command, operable program or batch file.
it means you need to (re)run the symbian\config.pl.
If you get the error
'perl' is not recognized as an internal or external command, operable program or batch file.
you may need to reinstall the ActivePerl.
If you see this
ren makedef.pl nomakedef.pl The system cannot find the file specified. C:\Symbian\...\make.exe: [rename_makedef] Error 1 (ignored)
please ignore it since it is nothing serious (the build process of renames the Perl makedef.pl as nomakedef.pl to avoid confusing it with a makedef.pl of the SDK).
The PerlApp also is started when the "Perl recognizer" (also included and installed) detects a Perl file being activated through the GUI, and offers either to install it under \Perl (if the Perl file is in the inbox of the messaging application) or to run it (if the Perl file is under \Perl).
The Perl port has been done for the most part using the Symbian standard POSIX-ish STDLIB library. It is a reasonably complete library, but certain corners of such emulation libraries that tend to be left unimplemented on non-UNIX platforms have been left unimplemented also this time: fork(), signals(), user/group ids, select() working for sockets, non-blocking sockets, and so forth. See the file symbian/config.sh and look for 'undef' to find the unsupported APIs (or from Perl use Config).
The filesystem of Symbian devices uses DOSish syntax, "drives" separated from paths by a colon, and backslashes for the path. The exact assignment of the drives probably varies between platforms, but for example in Series 60 you might see C: as the (flash) main memory, D: as the RAM drive, E: as the memory card (MMC), Z: as the ROM. In Series 80 D: is the memory card. As far the devices go the NUL: is the bit bucket, the COMx: are the serial lines, IRCOMx: are the IR ports, TMP: might be C:\System\Temp. Remember to double those backslashes in doublequoted strings.
The Perl DLL is installed in \System\Libs\. The Perl libraries and extension DLLs are installed in \System\Libs\Perl\X.Y.Z\. The PerlApp is installed in \System\Apps\, and the SIS also installs a couple of demo scripts in \Perl\ (C:\Mydocs\Perl\ on Nokia 7710).
Note that the Symbian filesystem is very picky: it strongly prefers the \ instead of the /.
When doing XS / Symbian C++ programming include first the Symbian headers, then any standard C/POSIX headers, then Perl headers, and finally any application headers.
New() and Copy() are unfortunately used by both Symbian and Perl code so you'll have to play cpp games if you need them. PerlBase.h undefines the Perl definitions and redefines them as PerlNew() and PerlCopy().
Nokia is a registered trademark of Nokia Corporation. Nokia's product names are trademarks or registered trademarks of Nokia. Other product and company names mentioned herein may be trademarks or trade names of their respective owners.
Copyright (c) 2006-2007 Jarkko Hietaniemi.
(This will show as "0.01" in the Symbian Installer.)
- The console window is a very simple console indeed: one can get the newline with "000" and the "C" button is a backspace. Do not expect a terminal capable of vt100 or ANSI sequences. The console is also "ASCII", you cannot input e.g. any accented letters. Because of obvious physical constraints the console is also very small: (in Nokia 6600) 22 columns, 17 rows. - The following libraries are available: AnyDBM_File AutoLoader base Carp Config Cwd constant DynaLoader Exporter File::Spec integer lib strict Symbol vars warnings XSLoader - The following extensions are available: attributes Compress::Zlib Cwd Data::Dumper Devel::Peek Digest::MD5 DynaLoader Fcntl File::Glob Filter::Util::Call IO List::Util MIME::Base64 PerlIO::scalar PerlIO::via SDBM_File Socket Storable Time::HiRes - The following extensions are missing for various technical reasons: B ByteLoader Devel::DProf Devel::PPPort Encode GDBM_File IPC::SysV NDBM_File Opcode PerlIO::encoding POSIX re Safe Sys::Hostname Sys::Syslog threads threads::shared Unicode::Normalize - Using MakeMaker or the Module::* to build and install modules is not supported. - Building XS other than the ones in the core is not supported.
Since this is 0.something release, any future releases are almost guaranteed to be binary incompatible. As a sign of this the Symbian symbol exports are kept unfrozen and the .def files fully rebuilt every time.
- Perl 5.9.3 (patch level 25741) - Compress::Zlib and IO::Zlib supported - sisify.pl added
We maintain the binary incompatibility.
- Perl 5.9.3 (patch level 25911) - Series 80 2.0 and UIQ 2.1 support
We maintain the binary incompatibility.
- Perl 5.9.3 (patch level 26052) - adding a sample Symbian extension
We maintain the binary incompatibility.
- Perl 5.9.5-to-be (patch level 30002) - added extensions: Compress/Raw/Zlib, Digest/SHA, Hash/Util, Math/BigInt/FastCalc, Text/Soundex, Time/Piece - port to S90 1.1 by alexander smishlajev
We maintain the binary incompatibility.
- catchup with Perl 5.9.5-to-be (patch level 30812) - tested to build with Microsoft Visual C++ 2005 Express Edition (which uses Microsoft Visual C 8, instead of the old VC6), SDK used for testing S60_2nd_FP3 aka 8.1a
We maintain the binary incompatibility.
| 2019-10-21 | perl v5.30.3 |


Steps to follow:
1. In this example All area (Manhattan) will cover under google maps .
2. We alraedy created two zone and display those details in table and they are bydefault highlighted in google maps with their colors
3. For now we pick a random color for all the area and to select the zipcode will create a newzone in this example with a different color
Note : Right now it is just depicted as how different zone will display .
In real development user need to enter new zipcode title and its color
and then he need to manually select the zipcodes and click on save
or user will upload the csv for that zone in the respected format that we provide
Clicking on save will save the info to the db
In the edit mode if user need to move a zipcode to another zone then he must unselect the zipcode first and then select the new zone in the dropdown


Areas of D usage
This list highlights a selection of applications written in D from various areas.
For an overview of D's differentiating features, have a look at the
D Overview page.
Binary compatibility with existing libraries is important in large-scale
projects.
Remedy Entertainment has successfully shipped the first
AAA game to use D code for XBox One and Windows 10.
For more details, see Ethan Watson's
presentation.
Many pure-D open source projects show the rising popularity
of D among game developers.
Examples are the cross-platform 3D game engine
Dash and the D game development toolkit
gfm.
D's ability to combine low and high-level code in one language, asynchronous
features like Fibers, and compile-time function execution, makes it well suited
for high-performance asynchronous I/O, concurrency and web applications.
The
vibe.d framework is D's
flagship solution for all needs pertaining to networking and asynchronous
event handling.
For an example success story, see the DConf presentation
Mobile Game Server Backend in D.
D's high productivity is also beneficial when creating GUI applications.
Some examples are the Linux tiling terminal emulator
tilix,
the D development environment
DLangIDE, which is itself based
on the cross-platform D library
dlangui.
Thanks to binary compatibility, all existing GUI libraries written in C, C++,
and other languages can be
easily accessed.
D is used in the reference DMD compiler itself, Facebook's fast C/C++ preprocessor
warp, the Higgs JavaScript Virtual Machine, and more.
D's compile time function execution allows generating custom grammar parsers
at compile time - see e.g. Pegged
as an example.
D is a systems programming language and is well suited for bare metal
or kernel development. It's easy to write an Operating System in D, and many
project have proven so. To name a few:
- PowerNex - A kernel written in D
- XOmB - Exokernel operating system
- Trinix - Hybrid operating system for x64 PC
Using
LDC (the LLVM D compiler)
enables targeting most popular CPU architectures,
starting from ARM and MIPS-based embedded systems and smartphones,
ranging to server systems based on POWER and Sparc, and up to the "big iron" z Systems.
D is similar to popular scientific languages like Python in that it provides
the conveniences of a modern language with a friendly syntax, and is
garbage collected by default. Convenience features allow spending time on rapid prototyping,
rather than fighting memory issues that few scientific programmers need to worry about.
However, it is also a compiled, statically typed language that can produce code as fast as C,
allows easily parallelizing algorithms and pipelines,
and, as a system language, provides complete control (including manual memory management)
to get those last few extra cycles.
A few specific spotlights:
Like NumPy, D is convenient and offers the ability to bind to existing C libraries.
Unlike NumPy, D does not become slow for computations not covered by preexisting libraries,
and does not force its user to escape into another language.
Additionally, due to its compile-time introspection capabilities, D enables
further optimizations for superior performance. See Andrei's talk
Fastware on this topic.
There is excellent support for multidimensional arrays with third-party libraries
such as
mir.
For most programmers used to developing for a modern CPU,
working with GPUs for general purpose computation can appear daunting and laborious.
Even seasoned users will admit that the performance improvements are often not worth the extra effort.
Thanks to the power of D’s type system and static introspection,
GPU Programming is
safer and easier to use than traditional APIs with no compromise in performance.
D's high-level abstraction and fast execution make it well-suited for scientific
analysis. For example,
D's ranges
are a natural fit for pipes and data streams.
One can start from a small D script with a small subset of data for
an analysis, and easily switch to the full set by enabling optimizations
for superior performance.
Read Adroll's testimonial
"D is for Data Science"
on why D is a keystone language for their critical infrastructure.
eBay recently open-sourced their internal
data processing utilities
used in their large-scale data mining environment.
D's multi-paradigm (imperative, structured, object oriented, generic, functional programming
purity, and even assembly) approach allows teaching in one language and gradually
explaining new features without needing to switch to a different language.
At universities, interpreted languages are commonly taught because of their memory safety.
SafeD, a memory-safe subset of D, provides
safety and ease of use comparable to interpreted and JIT-compiled languages
while retaining the efficiency of native code.
Beginners will also benefit from garbage collection, which helps
write simple code without requiring any knowledge of explicit memory management.
More sophisticated memory management can be introduced in an advanced
learning stage.
D's blazingly fast compilation allows it to be used as a high level,
productive scripting language, but with the
advantages of static type checking.
Last but not least, there are books and tutorials freely available online
which can be used as resources.


Find hand picked coaches and teachers domain experts across multiple subjects nearby.
Spanning multiple courses, subjects , topics and sub topics giving you access to premium learning like never before.
Revision Sessions, Doubt Clearing Sessions or even Full Season classes...we have you covered.
We believe that good teachers are the soul and strength of the education system. India is facing a major crisis in quality of education. The number of students is rising much faster than the number of good teachers. So India needs a platform where good teachers are able to connect with more and more students.
We are building the largest verifiable network of good teachers in India which will be freely available to students and parents.
Our vision is to enable every student to learn from a good teacher.
Kapil Gupta holds an MBA from University of Southern California and B.Tech. in Civil Engineering from IIT, Delhi. As Vice-President of a global operations consulting firm, he worked with organizations in US, EU, India & Middle East. Kapil is passionate about making large organizations accomplish projects faster and more efficiently.
Ghanshyam Tiwari has worked in public policy, strategy consulting, and chip design. He is an MPA from Harvard University and MBA from Kellogg. He has worked for organisations that include London School of Economics, McKinsey & Co., Bluespec Inc, Intel. At present, he also advises Bill and Melinda Gates Foundation.
Jay Prakash holds PGDM from Indian Institute of Management, Ahmedabad and B.Tech in Computer Science and Technology from Indian Institute of Technology, Bombay. He has worked in areas such as big data, machine learning and web technologies in various companies including Goldman Sachs and Yahoo over the last six years.
Manish Deepak holds a Bachelor Of Engineering degree in Electronics & Communications from MIT, Manipal. Experienced in managing projects from conception to completion, he has worked in areas such as product management, production management and data analytics. He has also worked on big data projects for Innolitica. Prior to joining LERNR he was working for Pepsi in Africa.
Capt. B.N. Yadav was Chief Security Officer at IIT Delhi for 24 years. He has keen interest in education of underprivileged and has worked in villages in Rajasthan to empower students. Capt. Yadav has also been involved in counselling students since 1991.
Capt. B.N. Yadav was Chief Security Officer at IIT Delhi for 24 years. He has keen interest in education of underprivileged and has worked in villages in Rajasthan to empower students. Capt. Yadav has also been involved in counselling students since 1991.
Capt. B.N. Yadav was Chief Security Officer at IIT Delhi for 24 years. He has keen interest in education of underprivileged and has worked in villages in Rajasthan to empower students. Capt. Yadav has also been involved in counselling students since 1991.
Capt. B.N. Yadav was Chief Security Officer at IIT Delhi for 24 years. He has keen interest in education of underprivileged and has worked in villages in Rajasthan to empower students. Capt. Yadav has also been involved in counselling students since 1991.


Don't want to wait? Send us a message to register for early access.
Send Now
Teams will choose from a list of stories. They could be investigating a missing person, hunting the local ghost or playing through some other mystery.
Teams will to travel from place to place to uncover the next story text or puzzle, unravelling an adventure bit by bit.
Through reading story text, doing puzzle research and communication within their team the students in a team will learn new language.
Team up with the others, experience outdoor adventures as a team. Or you can play solo like Rambo.
Decide, with your team, on one of many adventures to play.
You will need to move to the story points, in the real world, to progress through the game. Read through the adventure prompts to find out where to travel next.
You may encounter knowledge questions, research tasks and riddles. If you get stuck, don't panic, game master can help you out with hints.


--- layout: post title: Using the Rails to impress potential employers categories: - jobs author: admin published: true date: 2005-01-06 01:13:07.000000000 +00:00 ---
Drew McLellan is looking for a job and what better way to demonstrate to potential employers than to show you’re keeping up with the field of web development:
I like to work on the edge and am frequently updating my skills. Right now I’m learning Ruby with the aim of doing some work using the Rails framework in the near future. Learning new things opens your mind to possibilities, and more possibilities lead to better solutions.
With jobs being outsourced left and right, perhaps its also time for you to demonstrate why you’re not just yet another mainstream developer chasing the same Java, .NET, or PHP jobs as everyone else. Stand out from the crowd.


model_selection
index
/media/apple/Google Drive/CHEM 547/dopedefects/dopedefects/model_selection.py
Modules
data_preprocess
numpy
Functions
model_select
(X, Y)
Returns RMSE of test and training data for different regressors
rmse_train_test
(model, X_train, X_test, y_train, y_test, scalarX, scalarY)
Reports RMSE of training and testing data given trained model


The Vert.x documentation is organised into a few different manuals.
Get Vert.x installed and execute your first Hello World Vert.x example with the installation guide.
The main manual contains an introduction to Vert.x and deals with general concepts. It's highly recommended you read this so you get a good overview of what Vert.x is useful for and how it works.
Modules are a core feature of Vert.x which you'll need to understand to write effective Vert.x applications. The modules manual tells you everything you need to know about using and creating Vert.x modules.
We provide an in-depth API reference manual that describes how to use the Vert.x to do most things.
There's a different version of the API manual for each officially supported language.
We also provide generated API documentation (e.g. JavaDoc, GroovyDoc etc) for each API
Here's a library of other useful docs
Some other Vert.x resources
Documentation for Vert.x 1.3.1-final


Webpack: Pack Your Web Assets
Sat Aug 22, 2015
I just had a presentation to introduce Webpack to our UI Guild in my company. Webpack is a module bundler to pack all kinds of web assets (JavaScript, styles, images, HTML partials, etc.) into one or more bundle JS files.
Here is my presentation.
I should have highlighted the difference between Webpack and Require JS. Some developers are confused by these two tools.
- Require JS (without using any plugin) sends a separate HTTP request to retrieve each dependency module.
- However, Webpack is a pre-processor that bundles all required modules into one file before the bundle file is downloaded to users’ browsers.
- Require JS apps load dependency on demand, but complicate apps with many dependencies tend to send a lot of requests which might impact performance.
- Webpack merges dependencies into one or more files, so the number of HTTP requests will be dramatically reduced, however, the initial download payload might be big. Webpack can be fine tuned to find a balance between the number of requests and download file size.
I love how we can use Webpack to leverage Common JS module system to encapsulate dependency declarations in their requiring modules instead of flattening the dependency graph in the index.html.
Moreover, because tasks such as packaging, minification, source mapping, and transpiling can be done in Webpack, Gulp/Grunt scripts will be greatly simplified. And, we probably don’t even need Bower since almost all JS libraries can be installed from NPM.
Something remained to be tested are:
How will Webpack solve library version conflicts? For instance, if Module A requires Angular 1.3 and Module B requires Angular 1.4, whether and how will Webpack help us solve the conflict? (Bower forces developers to manually resolve conflicts.)
UI Performance. With Webpack, style sheets will be imported through dynamically injected
<style>
tags, will this introduce flickering in UI? We have to test it.
I will come back to these questions once I run some tests.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/git.20bisecting.html ---
I have heard people (e.g. Reid) talking about bisecting. I have a problem. The schemes repo was written by @Ramon Fernandez Mir and it compiled with June mathlib but doesn't compile with master right now. He is busy doing an MSc (in Amsterdam) and has offered to fix the code but I thought it might be nice to locate the commit of mathlib which broke the repo (and then get it compiling with that commit, and then repeating the process). The code seems very well-written to me and I'm hoping that isolating the breaking commits will make fixing things up easy.
The question: can I just type one command on the command line and then go to bed tonight, and wake up tomorrow with the output saying "it was this mathlib commit wot broke it"? I am envisaging just pulling a mathlib commit, running update-mathlib or just compiling the schemes repo with uncompiled mathlib, and then choosing another commit depending on whether the compilation returns 0 or not. I can't be the first person to be in this situation (or does everyone fix all their repos immediately after they break?)
git bisect run xxx.sh
is what you need
you need to prepare a script first, let's call it compile.sh
this compile.sh returns 0 if everything compiles, return non 0 otherwise.
Well that should be easy to write -- I hadn't realised it was going to be this easy. Sorry, I should have googled. Hmm wait though, I am a bit unclear about this. Mathlib is the upstream repo which broke my repo, so I should be running git bisect in _target/deps/mathlib? And should the script change the leanpkg.toml of my repo?
@Reid Barton do you do this sort of thing on a regular basis?
sorry i forgot to mention git bisect start
, git bisect bad
and git bisect start
, those are what you need to do before git bisect run compile.sh
But are these to solve problems of the form "my repo has stopped compiling, and I want to work out which commit broke it"?
My problem is "a dependency updated and this broke my repo"
I have done it occasionally, but not in the context of a package using mathlib as a dependency. Rather I just have a standalone file (in my mathlib checkout) and I test whether it compiles after checking out each new version of mathlib.
I need to think about it, but I think it is possible
Though come to think of it, moving the contents of your package src/
alongside mathlib's src/
has a nonzero chance of just working
I can even do if for you, and you can just sleep and wait for my result :)
I just had that very same dirty thought
(about moving src)
Lemme try Reid's horrible approach first, it might work.
and yes, I agree in this case you should run git bisect in a mathlib git repo, then run some commands to: 1. delete _target/deps/mathlib, 2. copy a new mathlib from the git repo to _target/deps/mathlib 3. compile again
Reid's approach seems simpler, if you happen to be able to simplify your problem to a standalone minimal test case
But if you use leanpkg build
to build then it will go and check out the commit specified by the leanpkg.toml file. So if you try this approach be sure to run lean --make src
directly
Will it be possible to massively save time by using cache-olean somehow?
The copying in from src seems safe to me, there are no duplicate file or directory names. I want to find out when src/instances/affine-scheme.lean
stopped compiling, because this file compiles iff the repo compiles.
Okay, then you can use git bisect
with lean src/instances/affine-scheme.lean
as the command to test
what will happen with the olean files? Do I just not worry?
Should be fine
I don't know anything about using cache-olean
I'm going to go with something like lean -M6000 --make src/instances/affine-scheme.lean
. Hmm, what is a minimum safe value for this? I don't want compilation to fail because of memory issues; conversely I don't want to freeze my machine.
oh this is great, I think hardly any of mathlib got compiled. Oh I think all my problems are solved, other than which commit broke the repo. Many thanks @Qian Hong (wechat: fracting) and @Reid Barton ! I'll be back in the morning complaining that my house burnt down.
Yes, if you're lucky then you actually don't need to build much of mathlib and then it is much faster than you would otherwise expect.
And if you are unlucky, then there might be more than one commits broke the build, some of broken commits might be fixed by following commits, and then new broken commits introduced... In that case there is no guarantee git bisect
can return the "right" broken commit you want
I'm sure it's broken for multiple reasons, I just thought it might be interesting to find the first place where it broke.
You have no guarantee to find the first place, just some place
Let's assume that on no occasion did it break and then magically get fixed.
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


Alappuzha (or Alleppey) is a city on the Laccadive Sea in the southern Indian state of Kerala. It's best known for houseboat cruises along the rustic Kerala backwaters, a network of tranquil canals and lagoons. Alappuzha Beach is the site of the 19th-century Alappuzha Lighthouse. The city's Mullakkal Temple features a traditional design. Punnamada Lake's snake boat races are a well-known annual event.
The Krishnapuram Palace is a palace and museum that is located in Kayamkulam, at a distance of 47 km from Alappuzha. This magnificent palace was built during the reign of a Travancore King, Anizham Thirunal Marthanda Varma and is well known for its mural paintings and architecture. The palace is built in the traditional architectural style of Kerala, with a gabled roof, narrow corridors and dormer windows, and is close to the Krishnaswamy Temple at Krishnapuram. A major attraction of this place is that it houses is one of the biggest mural paintings that can be found in all of Kerala. Known as the 'Gajendra Moksha', this mural painting covers an area of around 53 square feet and has a rich historical value attached to it. The double-edged sword Kayamkulam Vaal can also be found here. The Krishnapuram Palace is currently maintained by the Archaeological Department of Kerala and contains a variety of exhibits that once belonged to the Palace and its former occupant.
ReadmoreVembanad Lake is a lagoon located in the district of Alleppey in the South-Indian state of Kerala. This expansive lake/ lagoon is longest lake in the country and the largest Lake in Kerala, accessible from Kottayam, Kuttanad and Kochi. Vembanad Lake is known by different names in different regions of Kerala. It is called the Kochi Lake in Kochi, the Punnamada Lake in Kuttanad and as Vembanad in Kottayam. Locals also call it Vembanad Kol or Vembanad Kayal.
ReadmoreThe Alleppey backwaters was earlier used as a mode of transportation, fishing and agriculture and have evolved over time as a tourism hotspot. The main attraction of the Alleppey backwaters is the overnight journey in the famous Kerala houseboats. These houseboats are as comfortable as any hotel room - sometimes even more luxurious, and as a bonus, you get the open deck. Sunset viewing, bird watching, village visits, stargazing, witnessing the everyday life of the farmers and fishermen along with visiting the various regions that specialise in the manufacture of certain products like toddy, coir, handicrafts - Alleppey is a handful of an experience to have.
Readmore