Tornado
问题描述 :
In summer, tornado often occurs in the place where Professor Jonathan lives. After several years of research, Wind Chaser found many formation rules and moving patterns of tornados. In the satellite image, a tornado is a circle with radius of several meters to several kilometers. And its center moves between two locations in a straight line, back and forth at a fixed speed. After observing a tornado’s movement, Wind Chaser will pick a highway, which is also a straight line, and chase the tornado along the highway at the maximum speed of his car.
The smallest distance between the Wind Chaser and the center of the tornado during the whole wind chasing process, is called “observation distance”. Observation distance is critical for the research activity. If it is too short, Wind Chaser may get killed; and if it is too far, Wind Chaser can’t observe the tornado well. After many times of risk on lives and upset miss, Wind Chaser turns to you, one of his most brilliant students, for help. The only thing he wants to know is the forthcoming wind chasing will be dangerous, successful or just a miss.
输入:
xw1 yw1 xw2 yw2 vw
xt1 yt1 xt2 yt2 vt
dl du
In the first line, (xw1, yw1) means the start position of Wind Chaser; (xw2, yw2) is another position in the highway which Wind Chaser will definitely pass through; and vw is the speed of the car. Wind chaser will drive to the end of the world along that infinite long highway.
In the second line, (xt1, yt1) is the start position of tornado; (xt2, yt2) is the turn-around position and vt is the tornado’s speed. In other words, the tornado’s center moves back and forth between (xt1, yt1) and (xt2, yt2) at speed vt .
The third line shows that if the observation distance is smaller than dl , it will be very dangerous; and if the observation distance is larger than du, it will be a miss; otherwise it will lead to a perfect observation.
All numbers in the input are floating numbers.
-2000000000 <= xw1, yw1, xw2, yw2, xt1, yt1, xt2, yt2 <=<PHONE_NUMBER>
1 <= vw, vt <= 20000
0 <= dl, du <= 2000000
Note:
1. It’s guaranteed that the observation distance won’t be very close to dl or du during the whole wind chasing process. There will be at least 10-5 of difference.
2. Wind Chaser and the tornado start to move at the same time from their start position.
输出:
xw1 yw1 xw2 yw2 vw
xt1 yt1 xt2 yt2 vt
dl du
In the first line, (xw1, yw1) means the start position of Wind Chaser; (xw2, yw2) is another position in the highway which Wind Chaser will definitely pass through; and vw is the speed of the car. Wind chaser will drive to the end of the world along that infinite long highway.
In the second line, (xt1, yt1) is the start position of tornado; (xt2, yt2) is the turn-around position and vt is the tornado’s speed. In other words, the tornado’s center moves back and forth between (xt1, yt1) and (xt2, yt2) at speed vt .
The third line shows that if the observation distance is smaller than dl , it will be very dangerous; and if the observation distance is larger than du, it will be a miss; otherwise it will lead to a perfect observation.
All numbers in the input are floating numbers.
-2000000000 <= xw1, yw1, xw2, yw2, xt1, yt1, xt2, yt2 <=<PHONE_NUMBER>
1 <= vw, vt <= 20000
0 <= dl, du <= 2000000
Note:
1. It’s guaranteed that the observation distance won’t be very close to dl or du during the whole wind chasing process. There will be at least 10-5 of difference.
2. Wind Chaser and the tornado start to move at the same time from their start position.
样例输入:
0 0 1 0 2 10 -5 12 7 4 1.3 2.7 0 0 1 0 2 10 -5 12 7 1 0.3 0.4
样例输出:
Dangerous Perfect
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; int path[88][88], vis[88][88], p, q, cnt; bool flag; int dx[8] = {-1, 1, -2, 2, -2, 2, -1, 1}; int dy[8] = {-2, -2, -1, -1, 1, 1, 2, 2}; bool judge(int x, int y) { if(x >= 1 && x <= p && y >= 1 && y <= q && !vis[x][y] && !flag) return true; return false; } void DFS(int r, int c, int step) { path[step][0] = r; path[step][1] = c; if(step == p * q) { flag = true; return ; } for(int i = 0; i < 8; i++) { int nx = r + dx[i]; int ny = c + dy[i]; if(judge(nx,ny)) { vis[nx][ny] = 1; DFS(nx,ny,step+1); vis[nx][ny] = 0; } } } int main() { int i, j, n, cas = 0; scanf("%d",&n); while(n--) { flag = 0; scanf("%d%d",&p,&q); memset(vis,0,sizeof(vis)); vis[1][1] = 1; DFS(1,1,1); printf("Scenario #%d:\n",++cas); if(flag) { for(i = 1; i <= p * q; i++) printf("%c%d",path[i][1] - 1 + 'A',path[i][0]); } else printf("impossible"); printf("\n"); if(n != 0) printf("\n"); } return 0; }
解题转自：http://blog.csdn.net/lyhvoyage/article/details/18355471
《天价皇后》很好看
真心不错，力顶作者
#include <cstdio>
int main() {
//answer must be odd
int n, u, d;
while(scanf("%d%d%d",&n,&u,&d)==3 && n>0) {
if(n<=u) { puts("1"); continue; }
n-=u; u-=d; n+=u-1; n/=u;
n<<=1, ++n;
printf("%dn",n);
}
return 0;
}
这是什么鬼，怎么多头文件
这道题这里的解法最坏情况似乎应该是指数的。回溯的时候
O(n) = O(n-1) + O(n-2) + ….
O(n-1) = O(n-2) + O(n-3)+ …
O(n) – O(n-1) = O(n-1)
O(n) = 2O(n-1)
对，算是枚举吧，已修正
DFS方法的原理还是不太清楚啊
不太懂呀，乡亲们。原理知道代码不会
Excellent Web-site! I required to ask if I might webpages and use a component of the net web website and use a number of factors for just about any faculty process. Please notify me through email regardless of whether that would be excellent. Many thanks
好厉害～
对于第一题，我的直觉告诉我换不换都一样，求指教
多谢支持！


License¶
The legal stuff.
Included projects¶
Themes used under license from the ReadTheDocs projects.
ReadTheDocs theme - View license.
Many thanks to the authors and contributors of those wonderful projects.
MkDocs License (BSD)¶
Copyright © 2014, Tom Christie. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.


#no-exist - is not for until.elementLocated
//---- #tag ----\\
#tag - is good for until.elementLocated
#tag - is good for until.elementIsVisible
#tag - is true for elem.isDisplayed()
//---- #none ----\\
#none - is good for until.elementLocated
#none - is not for until.elementIsVisible
can not click, too far
#none - is false for elem.isDisplayed()
//---- #zero ----\\
#zero - is good for until.elementLocated
#zero - is not for until.elementIsVisible
#zero - is false for elem.isDisplayed()
//---- #far ----\\
#far - is good for until.elementLocated
#far - is not for until.elementIsVisible
#far - is false for elem.isDisplayed()
I am display: none
zero dimensions
not in view
I am simple tag


Soni Razdan: Can relate to Web series more
Soni Razdan will next be seen in Hotstar's Out of Love. She portrays the role of Kamal Kapoor in the web series.
by PTIVeteran actor Soni Razdan on Thursday said working in a web series is more relatable for her than working in TV shows.
The actor, who was last seen in the Hrithik Roshan-Tiger Shroff action entertainer War, said the digital medium offers an opportunity to play “developed” characters.
“Web series are more up my street, as I can relate to them more. I haven’t been able to relate to TV shows for a while now. I recently did a TV show as I was able to relate to the character and the storyline was interesting.
“I feel that the shows that are made for the web are realistic intelligent and well written with interesting and well-developed characters. I suppose one could say that I can relate to something that I would like to watch to put it simply,” Razdan said in a statement.
The actor, who will next be seen in Out of Love, portrays the role of Kamal Kapoor in the Hotstar Special. The series, which premieres on Friday on Hotstar VIP, features Rasika Dugal and Purab Kohli in the lead.
Based on British series Doctor Foster, the story follows the life of Dr Meera Kapoor (Dugal) after she finds out that her husband (Kohli) is cheating on her.


machine
— functions related to the hardware¶
The machine
module contains specific functions related to the hardware
on a particular board. Most functions in this module allow to achieve direct
and unrestricted access to and control of hardware blocks on a system
(like CPU, timers, buses, etc.). Used incorrectly, this can lead to
malfunction, lockups, crashes of your board, and in extreme cases, hardware
damage.
A note of callbacks used by functions and class methods of machine
module:
all these callbacks should be considered as executing in an interrupt context.
This is true for both physical devices with IDs >= 0 and “virtual” devices
with negative IDs like -1 (these “virtual” devices are still thin shims on
top of real hardware and real hardware interrupts). See Writing interrupt handlers.
Memory access¶
The module exposes three objects used for raw memory access.
- machine.mem8¶
Read/write 8 bits of memory.
- machine.mem16¶
Read/write 16 bits of memory.
- machine.mem32¶
Read/write 32 bits of memory.
Use subscript notation [...]
to index these objects with the address of
interest. Note that the address is the byte address, regardless of the size of
memory being accessed.
Example use (registers are specific to an stm32 microcontroller):
import machine
from micropython import const
GPIOA = const(0x48000000)
GPIO_BSRR = const(0x18)
GPIO_IDR = const(0x10)
# set PA2 high
machine.mem32[GPIOA + GPIO_BSRR] = 1 << 2
# read PA3
value = (machine.mem32[GPIOA + GPIO_IDR] >> 3) & 1
Miscellaneous functions¶
- machine.unique_id()¶
Returns a byte string with a unique identifier of a board/SoC. It will vary from a board/SoC instance to another, if underlying hardware allows. Length varies by hardware (so use substring of a full value if you expect a short ID). In some MicroPython ports, ID corresponds to the network MAC address.
- machine.time_pulse_us(pin, pulse_level, timeout_us=1000000, /)¶
Time a pulse on the given pin, and return the duration of the pulse in microseconds. The pulse_level argument should be 0 to time a low pulse or 1 to time a high pulse.
If the current input value of the pin is different to pulse_level, the function first (*) waits until the pin input becomes equal to pulse_level, then (**) times the duration that the pin is equal to pulse_level. If the pin is already equal to pulse_level then timing starts straight away.
The function will return -2 if there was timeout waiting for condition marked (*) above, and -1 if there was timeout during the main measurement, marked (**) above. The timeout is the same for both cases and given by timeout_us (which is in microseconds).
- machine.bitstream(pin, encoding, timing, data, /)¶
Transmits data by bit-banging the specified pin. The encoding argument specifies how the bits are encoded, and timing is an encoding-specific timing specification.
The supported encodings are:
0
for “high low” pulse duration modulation. This will transmit 0 and 1 bits as timed pulses, starting with the most significant bit. The timing must be a four-tuple of nanoseconds in the format(high_time_0, low_time_0, high_time_1, low_time_1)
. For example,(400, 850, 800, 450)
is the timing specification for WS2812 RGB LEDs at 800kHz.
The accuracy of the timing varies between ports. On Cortex M0 at 48MHz, it is at best +/- 120ns, however on faster MCUs (ESP8266, ESP32, STM32, Pyboard), it will be closer to +/-30ns.
Note
For controlling WS2812 / NeoPixel strips, see the
neopixel
module for a higher-level API.
Constants¶
Classes¶
- class Pin – control I/O pins
- class Signal – control and sense external I/O devices
- class ADC – analog to digital conversion
- class ADCBlock – control ADC peripherals
- class PWM – pulse width modulation
- class UART – duplex serial communication bus
- class SPI – a Serial Peripheral Interface bus protocol (controller side)
- class I2C – a two-wire serial protocol
- class I2S – Inter-IC Sound bus protocol
- class RTC – real time clock
- class Timer – control hardware timers
- class WDT – watchdog timer


I'm a software engineer that specialise on web developments. I graduated with Bachelor's Degree in Computer Science from Universiti Malaysia Sarawak(UNIMAS). I enjoy writing codes when I'm taking a time off from playing videogame. Occasionally, I also found myself enjoy playing some sports particularly futsal or tennis.
I start to do web development in 2015 and from there I've never look back. I've devoted myself in learning about web development from HTML, CSS, JavaScript and PHP all the way to modern frameworks and technologies that are being used today like Vue.js and Node.js . As I strongly feel having a solid foundation is crucial in order to have a better understanding on how all of these modern frameworks work behind the scene.
These past few years, I've experimented and implemented many frameworks and technologies. Therefore, listed below are all the frameworks and stack I'm most comfortable with:
PokeDex Vue is a mini project that I made as a homage to the Pokemon franchise. All the data inside the app were provided by pokeapi.co. The two then connected using RESTful api via http request. PokeDex Vue allows user to search for their favorite pokemon starting from generation I pokemon all the way to gen VIII pokemon and I implement an "infinite scroll" on the app to ensure the app remain lightweight and fast.
LazaKIL is a simple PROTOTYPE Ecommerce web. The main reason it was made is to familiarize myself using a state management called Vuex along with VueJS (think of it as Redux with ReactJS). This app were designed with a simple and minimalistic approach. Feel free to browse around the app although not all of its function has been fully implement.
This is a project were mainly made using HTML5, Sass and JavaScript. All of the page layout were made using css grid and flexbox. The styles were written in Sass which then Sass will compile it into CSS. Aside from that, all of the logics were written in native JavaScript.
Stay tuned for more project soon... 🤲
Feel free to contact me through email at<EMAIL_ADDRESS>or just press the button below for a faster way of reaching my email.
Email Me


Webinar 27 Nov: Deploying synchronous condensers to boost grid quality and resilience
by Ashley TheronWebinar broadcast date: Wednesday, 27 November 2019
08h30 New York | 12h30 GMT | 12h30 London | 13h30 Paris | 14h30 Johannesburg | 18h00 New Delhi | 20h30 Singapore
The intermittent and variable nature of renewables – particularly solar and wind – reduces network stability. Synchronous condensers with their rotating inertia can help to maintain grid quality and fault support.
They represent an old, well proven technology that is now in demand for its ability to mitigate network issues and compensate for the increasing penetration of renewables.
Join ABB in an interactive 1-hour webinar discussion and learn:
- Electricity networks today: the challenges
- How do synchronous condensers support the network?
- A high inertia solution that optimises grid stability and costs
- Reference cases
- Summary
Speaker:
Christian Payerl | Sales Manager for Synchronous Condensers | ABB Motors and Generators
This webinar is hosted by Power Engineering International.


Omega
Siddhant Vinchurkar
Sign In
Sign in or sign up using your Google account.
This is a link
This is a link


Around the world, efforts are under way to improve conservation and sustainable use of marine and coastal biodiversity. However, there has yet to be an effort to take a holistic and comprehensive approach to capacity development for conservation and sustainable use of oceans and coasts.
The Sustainable Ocean Initiative builds on these efforts, resources, and experiences by providing a holistic and strategic framework through which to provide capacity building opportunities to address regional priorities toward...
The tenth meeting of the Conference of the Parties to the Convention on Biological Diversity (COP 10, Nagoya, Japan, October 2010) ushered in a new era of biodiversity conservation. The 193 Parties to the Convention on Biological Diversity and their partners rose to the challenge of reversing biodiversity loss, which is occurring at an unprecedented rate—up to 1000 times the natural rate of extinction—by adopting a new 10-year Strategic Plan (2010-2020) and Aichi Biodiversity Targets to guide international and national efforts to safeguard biodiversity.
In light of new and expanded challenges that face global biodiversity and an enhanced understanding of the value of biodiversity to global sustainable development, the Conference of the Parties to the Convention on Biological Diversity adopted a Strategic Plan for Biodiversity 2011-2020 and a set of Aichi Biodiversity Targets.


YOU CAN COUNT ON ME -------------------
Single, small town mom Sammy Prescott (Laura Linney, "The Truman Show") is delighted to receive a letter from her younger brother Terry (Mark Ruffalo, "Committed"), who's returning for a visit after some long term, aimless travelling. Tempers immediately flare, however, when Sammy learns Terry's girlfriend is pregnant and he needs money. The complex relationship of these orphanned siblings is explored in writer/director Ken Lonergan's Sundance Grand Jury and Waldo Salt screenwriting awards winner, "You Can Count on Me."
LAURA:
Writer/director Ken Lonergan establishes his screenwriting abilities while making a tentative directorial debut with "You Can Count on Me." While his fine cast keep the audience involved in their unique yet recognizable situtations, Lonergan's film is visually flat.
Sammy has clearly assumed the mother role in her relationship with Terry, who acts the needy and irresponsible child. (Her own child, Rudy (Rory Culkin), is overprotected.) Sammy's in a jam at her job as Scottsville's bank loan officer. Her new ramrod straight boss Brian (Matthew Broderick) demands that she discontinue her practice of taking fifteen minutes of her lunch hour in midafternoon to pick up Rudy from school. Terry steps in and begins to fill a big need, providing the male interaction and law loosening Rudy's been craving. In fact, Terry empowers Sammy to begin to act irresponsibly as she slips into an affair with her married boss while turning down her long-standing boyfriend Bob's (Jon Tenney) proposal of marriage.
The cast is terrific and true. Linney and Ruffalo, who bear no physical resemblance whatsover, are emotionally on target as soulfully close siblings who judge each other harshly. Matthew Broderick takes his "Election" cheating spouse and adds endearingly geeky quirks to hilarious and frustrating effect (he's so uptight he bans employees from setting their computer monitors background colors). Jon Tenney plays the small town honest guy with a maturity issue recognizably while Rory Culkin acquits himself well. Lonergan gives himself a cameo as the local priest whom Sammy calls upon to 'help' Terry.
Lonergan's writing here is far superior to his more commercial work in "Analyze This," only ringing false in one scene where Sammy gives Terry an uncharacteristic public scolding in a local restaurant. His portrait of a small, upstate New York town, where trailer dwellers mix with owners of sprawling colonial homesteads at the local pool hall is beautifully rendered, almost seeming frozen in time. Unfortunately, the camera (cinematography by Stephen Kazmierski, "The Myth of Fingerprints") is too static, giving all interior scenes the feel of actors in a square frame.
"You Can Count on Me" is a small, regional feeling film which offers us several rich character studies.
B
For more Reeling reviews visit www.reelingreviews.com
<EMAIL_ADDRESS><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


Feng focuses on Education, TMT, and Deep Technology. He pays strong attention to E-commerce, Fintech, online education, new generation lifestyle businesses and O2O enterprises. Previously as a partner at IDG-Accel, he led investments on a series of successful projects, including CreditEase, Zhubajie, Prosper, Three Squirrels, Tongbanjie, Didapinche, Bilibili, Coinbase, and etc. Among them, Zhubajie, CreditEase and Prosper successfully joined Billion Dollar Club. The return of investment at seed stage for Three Squirrels, Yiqichang, Tongbanjie, and Wangli Fiance Group is now up to 50 times. Feng led the establishment of IDG-Accel’s post-investment service system, providing help to early stage startups services include public relations, marketing, and human resources. He promoted topic investment strategy including Internet brand, Internet finance, the 90s entrepreneurs project, C2C of O2O and economy sharing approach. Feng obtained B.S. in Chemistry from Peking University, and M.S. in Chemistry from University of Rochester.
Joined on January 2016, Bo Tao has been the Vice President of Cheetah Mobile. Before, he was VP of Symantec, where he was responsible for building and operating cloud and big data platforms based on OpenStack & Hadoop families of open source technologies, respectively. The platform spans in multiple data centers worldwide and operates tens of thousands of VMs and dozens of petabytes of data. Graduated from Tshinghua University and went to Princeton for ECE PHD. He has more than 10 patents and have received two major book rewards: Book Chapter C0-Author and Book Co-Editor. He is also in the organization of China Institution of Electronics and Internet of Things 2012.
Ed Pinero works to support programs at company operations and to facilitate relations with key stakeholders in regard to sustainability as well as development and implementation of sustainable programs, concerning with infrastructure, water, energy, and waste. Before, Ed Pinero has served in the public sector as the White House Federal Environmental Executive, White House Council on Environmental Quality, where he focused on developing and implementing policies and practices within the federal government, and the Pennsylvania state government in energy and sustainability.
Managing Partner, Amino Capital
Larry Li founded Amino Capital (Formerly known as zPark Capital) in 2012, and he also co-founded TEEC Angel Fund in 2010. His passion is helping entrepreneurs build disruptive products in big data, consumer electronics, drones, enterprise services and et.al. He sits on the board of Darma Smart Cushion, Yttro Mobile, Droplet, Candy House, SkuChain, Battlefy, SherpaShare, Cassia, Mage, and also led investment on companies which experienced fast growth, such as Assemblage (acquired by Cisco – NYSE: CSCO), Orbeus (acquired by Amazon – NYSE: AMZN), Skycatch, and Trustlook.
Teresa Heinz Professor of Green Chemistry
Director, Institute for Green Science
Professor Collins has been recognized internationally for his invention of a new class of oxidation catalysts, "TAML Activators". This is the first full functional mimics of any of the great families of oxidizing enzymes, solving in the process one of the all-time great challenges of reaction chemistry and catalysis. This invention underpins new technologies for treating municipal wastewaters and the effluents of diverse industries.


Experience an epic open-world brought to life by the award-winning Nemesis System. Forge a new Ring of Power, conquer Fortresses in massive battles and dominate Mordor with your personal orc army in Middle-earth Shadow of warrant.
Title: Middle-earth Shadow of War Minimum System Requirements
Genre: Action, Adventure, RPG
Developer: Monolith Productions
Publisher: WB Games
Release Date: 10 Oct, 2017
OS: Windows 10 Creators Update
Processor: AMD FX-8350, 4.0 GHz / Intel Core i7-3770, 3.4 GHz
Memory: 12 GB RAM
Graphics: AMD RX 480, 4 GB or RX580, 4GB / NVIDIA GTX 970 4, GB or GTX1060, 6GB
DirectX: Version 11
Network: Broadband Internet connection
Storage: 70 GB available space
Additional Notes: X64 required
Screenshots


Christmas and New Year changes to Universal Credit payments you need to know about
In Scotland, New Year's Day and January 2 are bank holidays and so this will affect the January payment schedule.
by Jennifer Russell, https://www.dailyrecord.co.uk/authors/jennifer-russell/Benefit payment dates including Universal Credit will be changing over Christmas and New Year in Scotland.
It is important to mark these in your diary if you do receive government benefits .
Those on Universal Credit or the state pension may find changes to their payment schedule over Christmas and New Year due to bank holidays.
In Scotland, New Year's Day and January 2 are bank holidays and so this will affect the January payment schedule.
Here's all the dates you need to know to for over the festive period.
Universal Credit dates over Christmas
These are paid every two weeks (employment support allowance, income support and jobseekers' allowance) or monthly (all other benefits including Universal Credit).
- Payment due : Wednesday, December 25. Payment sent : Tuesday December 24
- Payment due : Thursday, December 26. Payment sent : Tuesday December 24
- Payment due : Thursday, January 2. Payment sent : Tuesday, December 31
Tax Credit payments over Christmas
If you usually receive tax credit payments on the following dates, this is when it'll come through instead:
- Payment due : Wednesday, December 25. Payment sent : Tuesday December 24
- Payment due : Thursday, December 26. Payment sent : Tuesday December 24
- Payment due : Thursday, January 2. Payment sent : Tuesday, December 31
Child benefit payments over Christmas
If you usually receive payments on the following dates, here's when your money will arrive:
- Payment due : Wednesday, December 25. Payment sent : Tuesday December 24
- Payment due : Thursday, December 26. Payment sent : Tuesday December 24
- Payment due : Thursday, January 2. Payment sent : Tuesday, December 31


RSA
ECC
Pending RA Verification
Pending RA Authorization
Pending CA Verification
Pending CA Authorization
Pending Cert Generation
Cert Ready to Download
Request Rejected
{{req.csr.distinguishedName}}
Req No.: {{req.sNo}}
{{req.reqDate.$date | date:'medium'}}


Welcome to CSS! CSS governs the look and feel of web pages.
The styles are applied cascadingly... aka in layers.
Ways to include css
Inline
By using style attributes inside an element
internal
By using style tag in head tag
External
By using link tag inside the head tag to link to a separate .css file
Yes, you can nest a list inside of a list!
Application Order
CSS styles get applied in very specific order
!important (don't forget the !) This will always be applied. Be careful and use SPARINGLY, you don't want to mark everything !important
By the order of specificity
Inline
Id
Class/Attribute/Pseudo-class
Elements/pseudo-elements
By the order they get included
How to apply CSS
We apply them using rules. Rules are key value pairs that describes the style.
i.e. background-color: green;
These rules live inside the selectors, which is a way to group rules together to apply on one or more elements in a html page.
Selectors
We need to be able to target certain elements to apply stylings to. CSS Selectors do just that
Tag Selector: You can target specific element to apply stylings to all elements of the type
Class: Select all elements of a class
Id: Select an element with a particular id
Let's take a break: Colors
There are multiple ways to express colors in CSS
plain language: CSS offers a lot of commonly used colors in plain language, such as black, white, skyblue, etc.
hexadecimal: One of the most common ways to express colors in CSS is using hexadecimal. It starts with a hash symbol, and each two digit denotes Red, Green, Blue, respectively #000000 is black, #FF0000 red, #00FF00 Green, #0000FF blue, and #FFFFFF white
What is hexademical? It's 16-based system where it goes 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, e, d, e, f before going back to 0
Two digits of hexadecimal gets us 16*16 = 256 values
RGB/RGBA: Red, Green, Blue expressed in either rgb(r, g, b) or rgba(r, g, b, a) syntax where r, g, and b are integers ranging from 0 to 255 denoting red, green and blue respectively, and a is a real number from 0 to 1 denoting the opacity.
You can do gradients too!
More Selectors
Selectors are pretty powerful beyond its basic tag, class, and id
Pseudo-Class
These are selectors that targets certain state of an element, such as hover, clicked, active, etc.
They are denoted with : (colon)
:hover, :clicked, :active
Pseudo-Element
these are pseudo elements that don't really exist in DOM, but can be used to style a specific part of element or before or after an element
Attribute Selectors selects elements with specific attribute values a[href="google.com"]
Multiple Selectors combines multiple selectors without the space, such as .class1#id.class2.class3
Wild card selector
Just the *
Styles everything, all elements with the given rules
Box Model
These describe the space in which the html elements reside.
From outside to inside
Margin : space outside of border
Border
Padding: space inside border
Content
You can apply uniform styling by specifying one value, such as border: 2px, or specify each side with border-right: 2px, OR a short-hand, border: top, right, bottom, left (clockwise)
Easiest way to visualize box model is with a button. Let's make a button!
CSS Units
Relative and absolute units
Absolute
px: pixel of your screen
mm: milimeter
and more...
Relative
em: size of font size
%: percentage of your parent element size
and way more...
Responsive Web Design
A responsive webpage adapts to various viewports by realigning its elements
This has become of a critical importance with the rise of portable electronics (ie smartphones, tablets, etc).
Allows pleasant user experience regardless of screen size (read, no horizontal scroll bar)
You could do this yourself using media-breakpoint, but... why reinvent the wheel?
Bootstrap
The answer to all front end devs who can't art (that would be me)
CSS framework that is responsive and mobile first (designed with mobile screens in mind from the getgo, instead of mobile compatibility being a hind thought)
Also includes lots of very convenient components for you to tap in


Bcoin is an advanced, secure, and production-proven alternative fullnode implementation of bitcoin. It was built to reduce code complexity, and to help build scalable, consumer grade infrastructure.
Bcoin is the first fullnode implementation built specifically for production systems at scale. Originally created to be used as backend infrastructure for Purse.io, Bcoin enables companies to spin up consumer-grade bitcoin applications/wallet systems without the long-term concern of scalability, and security.
Developing applications that natively utilize bitcoin’s powerful financial network can be difficult, even for seasoned developers. Bcoin abstracts out the most difficult components of bitcoin development — allowing you to focus on creating great functionality, with hardened security at its core.
Since its purpose is for Production and Enterprise, bcoin includes embedded support for various advanced features; BIPs 150/151, Schnorr Signatures, MAST. With bcoin, companies can quickly begin work on robust, future-ready Proof of Concepts to be deployed on the bitcoin mainnet.
Payments and transacting value across the internet should be easy. Bcoin enables the creation of elegant, robust, and scalable codebases. We've eliminated the unnecessary code complexity, so you can get up and running using Bcoin in just a few minutes.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
Once you have bcoin installed, setting up a node on the bitcoin test network is simple.
Having a node set-up will allow you to more easily test and query the RPC/REST API, and begin monitoring new transactions added to the bitcoin blockchain/mempool.


{% include 'includes/header.html' %}
{% include 'includes/home-nav.html' %} {% include 'includes/auth-header.html' %} {{ content | safe }}
{% include 'includes/scripts.html' %} {% include 'includes/footer.html' %}


{% extends 'base.html' %} {% import 'macros.html' as macro %} {%block styles%} {{ super() }} {%endblock%} {%block content%}
The key to a succesful interview pitch.
The key to a succesful product pitch.
The key to a succesful promotion pitch


ssh_deployment.rb |
|
|---|---|
|
Example of Application Deployment using Virtual File System. In this example we uploading sample app files to remote server, write database configuration file and restart the server on remote machine. |
|
|
Adding examples folder to load paths. |
$LOAD_PATH << File.expand_path("#{__FILE__}/../..") |
|
Connecting to SFTP and preparing sandbox. You may take a look at the docs/ssh_sandbox.rb to see the actual code. |
require 'docs/ssh_sandbox'
sandbox = $sandbox |
|
Preparing sample files located in our local folder in current directory. |
current_dir = __FILE__.to_entry.parent
sample_app = current_dir['ssh_deployment/app'] |
|
Copying application files to remote machine. |
app = sandbox['apps/app']
sample_app.copy_to app
p app['app.rb'].exist? # => true |
|
Writing database configuration file. |
config = app['config.yml']
config.write "database: mysql"
config.append "name: app_production"
p app['config.yml'].exist? # => true |
|
Updating gems and restarting the server. |
p app.bash("echo 'bundle install'") # => bundle install
p app.bash("echo 'server start'") # => server start |