Are you over 18 and want to see adult content?
More Annotations
![A complete backup of https://espaciofernandino.com.py](https://www.archivebay.com/archive6/images/79090aca-821a-4cb2-8a43-4ea5b74425f2.png)
A complete backup of https://espaciofernandino.com.py
Are you over 18 and want to see adult content?
![A complete backup of https://peelander-z.com](https://www.archivebay.com/archive6/images/99722406-0176-4e13-8954-d0833a3cddfc.png)
A complete backup of https://peelander-z.com
Are you over 18 and want to see adult content?
![A complete backup of https://fiil.pro](https://www.archivebay.com/archive6/images/f2902520-6810-4258-90c9-451cb7d6d61d.png)
A complete backup of https://fiil.pro
Are you over 18 and want to see adult content?
![A complete backup of https://xlovecam.com](https://www.archivebay.com/archive6/images/ac41a82e-7759-465b-af22-5131dbe5f50a.png)
A complete backup of https://xlovecam.com
Are you over 18 and want to see adult content?
![A complete backup of https://edgeofmyseat.com](https://www.archivebay.com/archive6/images/4544bf89-c93e-410d-91e7-95f9b5753229.png)
A complete backup of https://edgeofmyseat.com
Are you over 18 and want to see adult content?
![A complete backup of https://surveytalent.com](https://www.archivebay.com/archive6/images/680578c5-2a45-403f-92a4-4592a9c275c0.png)
A complete backup of https://surveytalent.com
Are you over 18 and want to see adult content?
![A complete backup of https://cialisedtr.com](https://www.archivebay.com/archive6/images/a48a2a4a-d926-4777-b337-b11c2d6d2801.png)
A complete backup of https://cialisedtr.com
Are you over 18 and want to see adult content?
![A complete backup of https://oeger.de](https://www.archivebay.com/archive6/images/460155b1-ec10-4a00-91b9-ed45ede2fc44.png)
A complete backup of https://oeger.de
Are you over 18 and want to see adult content?
![A complete backup of https://enterprise-europe.co.uk](https://www.archivebay.com/archive6/images/129d1c07-486e-401e-a89d-d5337cd33ada.png)
A complete backup of https://enterprise-europe.co.uk
Are you over 18 and want to see adult content?
![A complete backup of https://bsnscnslt.com](https://www.archivebay.com/archive6/images/bb57ead8-fbaf-454f-826c-ffd9a51049d2.png)
A complete backup of https://bsnscnslt.com
Are you over 18 and want to see adult content?
![A complete backup of https://vpfashion.com](https://www.archivebay.com/archive6/images/10233845-3e8e-4b37-9319-510cdee3cb8d.png)
A complete backup of https://vpfashion.com
Are you over 18 and want to see adult content?
![A complete backup of https://helios-gesundheit.de](https://www.archivebay.com/archive6/images/5ec18e54-766a-4bb4-8a2b-15f3ee412d1d.png)
A complete backup of https://helios-gesundheit.de
Are you over 18 and want to see adult content?
Favourite Annotations
![A complete backup of https://balkanje.com/zakletva-epizoda-398/](https://www.archivebay.com/archive6/images/4b307794-8a80-4c57-87af-7d6dd902361c.png)
A complete backup of https://balkanje.com/zakletva-epizoda-398/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/oluja-epizoda-2/](https://www.archivebay.com/archive6/images/e8cd4ef8-570e-4dc2-83b9-d35ac504f4bc.png)
A complete backup of https://balkanje.com/oluja-epizoda-2/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/latino-serije/boja-strasti/](https://www.archivebay.com/archive6/images/fd239153-9ebc-435e-805c-5e740fb7e016.png)
A complete backup of https://balkanje.com/latino-serije/boja-strasti/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/turske-serije/ludo-srce-2017/](https://www.archivebay.com/archive6/images/56a518aa-2710-42b8-b6d5-48822da2ec18.png)
A complete backup of https://balkanje.com/turske-serije/ludo-srce-2017/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/turske-serije/page/1099/](https://www.archivebay.com/archive6/images/4721c165-7e37-45ab-b75b-fac1859aacd0.png)
A complete backup of https://balkanje.com/turske-serije/page/1099/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/turske-serije/kraj-2012/](https://www.archivebay.com/archive6/images/20ed7c6e-bfa2-4fec-91de-e394c9986999.png)
A complete backup of https://balkanje.com/turske-serije/kraj-2012/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/turske-serije/draguljareva-kci/](https://www.archivebay.com/archive6/images/df88f65e-c9a6-4e8d-a198-fc5beabca198.png)
A complete backup of https://balkanje.com/turske-serije/draguljareva-kci/
Are you over 18 and want to see adult content?
![A complete backup of https://balkanje.com/turske-serije/izgubljen-2013/](https://www.archivebay.com/archive6/images/6f28fffc-5eee-4eeb-981e-10bf22fd0ce5.png)
A complete backup of https://balkanje.com/turske-serije/izgubljen-2013/
Are you over 18 and want to see adult content?
Text
can
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi PROJECTS - BRIAN R. BONDY Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
MATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi PROJECTS - BRIAN R. BONDY Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
MATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. BOOKS - BRIAN R. BONDY Books What the list contains. The list below is incomplete but contains some books that I considered good books that cover the topic they intended to nicely.MATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
PI - BRIAN R. BONDY
Pi What is Pi? Pi is the ratio of a circle’s circumference to its diameter. This magical number appears almost everywhere in every typeof math.
PRIMES - BRIAN R. BONDY Mathematics - Primes What are prime numbers? A natural number is a number in the set {1, 2, 3, }. Prime numbers are a subset of naturalnumbers.
HUFFMAN COMPRESSION
Huffman compression. Huffman coding is a mapping of a set of ‘symbols’ to a set of ‘series of bits’. Each symbol corresponds to a variable length series of bits. BLOG POSTS - BRIAN R. BONDY June 2th 2006. That guy from before came back and brought me in a car. I got so sick, I hate cars. I’ll never go in another car from now on. He told me he was my new daddy. When we got to my new home, I met 2 new things called cats. I guess cats are similar to dogs but more terrifying. The guy that called himself dad was running around like BLOG POSTS - BRIAN R. BONDY Firefox Metro Preview Release - Status update 8. Posted on October 4, 2012. As per this Future of Firefox announcement, we have a work-in-progress, Metro Firefox preview! This preview will give you a glimpse of what Firefox on Metro will be like, but it is not meant to be complete. Several incomplete features will exist, which is normalat this
BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi PROJECTS - BRIAN R. BONDY Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
BLOG POSTS - BRIAN R. BONDY An overview of the basics of HTTP. The HTTP protocol works by sending requests and getting responses back for those requests. I will not get into the details of the HTTP protocol syntax. Details about headers, HTTP methods, paths, parameters, etc., as this post would be too long. Instead I’ll just cover some basics and then dive right into BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi PROJECTS - BRIAN R. BONDY Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
BLOG POSTS - BRIAN R. BONDY An overview of the basics of HTTP. The HTTP protocol works by sending requests and getting responses back for those requests. I will not get into the details of the HTTP protocol syntax. Details about headers, HTTP methods, paths, parameters, etc., as this post would be too long. Instead I’ll just cover some basics and then dive right into RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20miMATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; InstagramHUFFMAN COMPRESSION
Huffman compression. Huffman coding is a mapping of a set of ‘symbols’ to a set of ‘series of bits’. Each symbol corresponds to a variable length series of bits. BLOG POSTS - BRIAN R. BONDY Python can’t define abstract functions directly, instead you simply raise an exception of type NotImplemented. In Python all functions/methods are virtual. This is to say pure virtual function support is defined in Python simply by convention instead of language constructs. Therefore unlike C++ and C#, you can create objects of aclass that
BLOG POSTS - BRIAN R. BONDY CasperJS is a set of higher level APIs and can be configured to use PhantomJS or SlimerJS. The current version of PhantomJS is based on Webkit and is too far behind to be useful to end to end tests for our site yet. There’s a newer version of PhantomJS coming, but it’s not ready yet. We also considered using Selenium to automate browsersto
BLOG POSTS - BRIAN R. BONDY October 2013 - At the Mozilla Summit. I was employed at Mozilla at the time attending a yearly Mozilla Summit event. A Mozilla Summit is a get-together where 1,600 employees, contractors, and community leaders gather to discuss, make plans, and hack on Mozilla products like Firefox. Within days, I would have my first interview for a new job BLOG POSTS - BRIAN R. BONDY You can determine the size of an enumerated type in C++ by using the sizeof operator. The size of the enumerated type is the size of its underlying type. In this way you can guess which type your compiler is using for your enum. What if you specify the type of your enum explicitly like this: enum Color : char { Red=0, Green=1, Blue=2};assert
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. BLOG POSTS - BRIAN R. BONDY The Firefox Roadmap lists a 2012 Q2 goal of providing a working Firefox prototype on Metro.. As of last week, we have a working browser in Metro. It currently looks and feels the same as the Android browser. You can navigate the web, create tabs, bookmark pages, build history, retain cache, adjust preferences, and more. BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as PROJECTS - BRIAN R. BONDY Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY An overview of the basics of HTTP. The HTTP protocol works by sending requests and getting responses back for those requests. I will not get into the details of the HTTP protocol syntax. Details about headers, HTTP methods, paths, parameters, etc., as this post would be too long. Instead I’ll just cover some basics and then dive right into BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as PROJECTS - BRIAN R. BONDY Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY An overview of the basics of HTTP. The HTTP protocol works by sending requests and getting responses back for those requests. I will not get into the details of the HTTP protocol syntax. Details about headers, HTTP methods, paths, parameters, etc., as this post would be too long. Instead I’ll just cover some basics and then dive right into BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; InstagramMATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
HUFFMAN COMPRESSION
Huffman compression. Huffman coding is a mapping of a set of ‘symbols’ to a set of ‘series of bits’. Each symbol corresponds to a variable length series of bits. BLOG POSTS - BRIAN R. BONDY CasperJS is a set of higher level APIs and can be configured to use PhantomJS or SlimerJS. The current version of PhantomJS is based on Webkit and is too far behind to be useful to end to end tests for our site yet. There’s a newer version of PhantomJS coming, but it’s not ready yet. We also considered using Selenium to automate browsersto
BLOG POSTS - BRIAN R. BONDY October 2013 - At the Mozilla Summit. I was employed at Mozilla at the time attending a yearly Mozilla Summit event. A Mozilla Summit is a get-together where 1,600 employees, contractors, and community leaders gather to discuss, make plans, and hack on Mozilla products like Firefox. Within days, I would have my first interview for a new job BLOG POSTS - BRIAN R. BONDY Python can’t define abstract functions directly, instead you simply raise an exception of type NotImplemented. In Python all functions/methods are virtual. This is to say pure virtual function support is defined in Python simply by convention instead of language constructs. Therefore unlike C++ and C#, you can create objects of aclass that
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. BLOG POSTS - BRIAN R. BONDY You can determine the size of an enumerated type in C++ by using the sizeof operator. The size of the enumerated type is the size of its underlying type. In this way you can guess which type your compiler is using for your enum. What if you specify the type of your enum explicitly like this: enum Color : char { Red=0, Green=1, Blue=2};assert
BLOG POSTS - BRIAN R. BONDY The Firefox Roadmap lists a 2012 Q2 goal of providing a working Firefox prototype on Metro.. As of last week, we have a working browser in Metro. It currently looks and feels the same as the Android browser. You can navigate the web, create tabs, bookmark pages, build history, retain cache, adjust preferences, and more. BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as PROJECTS - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY Why you should care about HTTP pipelining? TCP/IP packets can be reduced. The typical maximum segment size (MSS) is in the range of 536 to 1460 bytes, and so several HTTP requests could fit into a single packet. It would also reduce the total number of packets. Also there are wins with the congestion control strategy, connection handshake, connection teardown and SSL handshake. BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as PROJECTS - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
BLOG POSTS - BRIAN R. BONDY Why you should care about HTTP pipelining? TCP/IP packets can be reduced. The typical maximum segment size (MSS) is in the range of 536 to 1460 bytes, and so several HTTP requests could fit into a single packet. It would also reduce the total number of packets. Also there are wins with the congestion control strategy, connection handshake, connection teardown and SSL handshake. BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; InstagramMATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
HUFFMAN COMPRESSION
Huffman compression. Huffman coding is a mapping of a set of ‘symbols’ to a set of ‘series of bits’. Each symbol corresponds to a variable length series of bits. BLOG POSTS - BRIAN R. BONDY CasperJS is a set of higher level APIs and can be configured to use PhantomJS or SlimerJS. The current version of PhantomJS is based on Webkit and is too far behind to be useful to end to end tests for our site yet. There’s a newer version of PhantomJS coming, but it’s not ready yet. We also considered using Selenium to automate browsersto
BLOG POSTS - BRIAN R. BONDY October 2013 - At the Mozilla Summit. I was employed at Mozilla at the time attending a yearly Mozilla Summit event. A Mozilla Summit is a get-together where 1,600 employees, contractors, and community leaders gather to discuss, make plans, and hack on Mozilla products like Firefox. Within days, I would have my first interview for a new job BLOG POSTS - BRIAN R. BONDY Python can’t define abstract functions directly, instead you simply raise an exception of type NotImplemented. In Python all functions/methods are virtual. This is to say pure virtual function support is defined in Python simply by convention instead of language constructs. Therefore unlike C++ and C#, you can create objects of aclass that
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. BLOG POSTS - BRIAN R. BONDY You can determine the size of an enumerated type in C++ by using the sizeof operator. The size of the enumerated type is the size of its underlying type. In this way you can guess which type your compiler is using for your enum. What if you specify the type of your enum explicitly like this: enum Color : char { Red=0, Green=1, Blue=2};assert
BLOG POSTS - BRIAN R. BONDY The Firefox Roadmap lists a 2012 Q2 goal of providing a working Firefox prototype on Metro.. As of last week, we have a working browser in Metro. It currently looks and feels the same as the Android browser. You can navigate the web, create tabs, bookmark pages, build history, retain cache, adjust preferences, and more. BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi PROJECTS - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. BLOG POSTS - BRIAN R. BONDYBLOGFILTERSPROJECTSOTHERABOUTCONTACT IPFS support in Brave. Posted on January 19, 2021. Over the past several months, the Brave team has been working with Protocol Labs on adding InterPlanetary File System ( IPFS) support in Brave. This is the first deep integration of its kind and we’re very proud to outline how it works in this post. IPFS is an exciting technology thatcan
ABOUT - BRIAN R. BONDY I am a professional C++, Python, Rust, Go, C#, and JavaScript software developer. I like reading about new technologies and other nerdy things. From 2015 onward, I co-founded Brave Software with the guy that created Mozilla and JavaScript: Brendan Eich. I’m serving as RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20mi PROJECTS - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Router Emulator. This program emulates the operations of a router and communicates to other routers in the network to keep track of routes for packets and minimize the time taken for packets to travel. It is a version of OSPF protocol with Dijkstra’s algorithm. It was built in Unix using UDP and C++. ADVICE - BRIAN R. BONDY Advice What the list contains. These are all very easy and obvious facts. But explicitly reading and following them have helped me immensely. Tidbits of what I consider to be good advice that I’veheard
RESUME - BRIAN R. BONDY VisionWorks Solutions Inc: Co-founder, Software Developer Windsor, Ontario, Canada - Jan 2004 through July 2011. Developed enterprise backup software ROBOBAK, including several hundred thousand lines of code. Features include Deduplication, Journaling, Indexing, Archiving,etc.
CONTACT - BRIAN R. BONDY Contact Brian R. Bondy How to get in touch with me. Email: bbondy gmail.com; Twitter: @brianbondy; LinkedIn: bbondy; Strava: bbondy; Github: bbondy; Instagram OTHER - BRIAN R. BONDYBRIAN BROWN LINKEDINBRIAN MAHONEY FACEBOOK Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running BLOG POSTS - BRIAN R. BONDY Introducing the rope data structure! Posted on September 21, 2009. I’ve long known about the rope data structure, but it hasn’t dawned on me until now in what cases you’d actually want to use it. I also didn’t take the time to see how a rope was actuallyimplemented until I
BLOG POSTS - BRIAN R. BONDY Understanding Windows at a deeper level - Sessions, Window Stations, and Desktops. Posted on October 19, 2010. This post will answer some very simple questions about how Windows works. This post is meant to be read by people with a technical background, and at parts it will help if you have a little knowledge about programming in Windows. RUNNING - BRIAN R. BONDY Memorable runs. April 13 2021 - Malden Death Run (MDR) III - 120x Bertha repeats (Malden park hill). 11381 feet of elevation, 62km December 29 2020 - 20 days of 20miMATHEMATICS
Mathematics. Main; Pi; Primes; Number Theory; Graph Theory; MathTricks
OTHER - BRIAN R. BONDY Other. About; Advice; Books; Braille; Compression; Contact; Mathematics; Morse Code; Resume; Running FILTERS - BRIAN R. BONDY Blog posts by year 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012Blog posts by tag
PI - BRIAN R. BONDY
Pi What is Pi? Pi is the ratio of a circle’s circumference to its diameter. This magical number appears almost everywhere in every typeof math.
HUFFMAN COMPRESSION
Huffman compression. Huffman coding is a mapping of a set of ‘symbols’ to a set of ‘series of bits’. Each symbol corresponds to a variable length series of bits. BLOG POSTS - BRIAN R. BONDY CasperJS is a set of higher level APIs and can be configured to use PhantomJS or SlimerJS. The current version of PhantomJS is based on Webkit and is too far behind to be useful to end to end tests for our site yet. There’s a newer version of PhantomJS coming, but it’s not ready yet. We also considered using Selenium to automate browsersto
BLOG POSTS - BRIAN R. BONDY You can determine the size of an enumerated type in C++ by using the sizeof operator. The size of the enumerated type is the size of its underlying type. In this way you can guess which type your compiler is using for your enum. What if you specify the type of your enum explicitly like this: enum Color : char { Red=0, Green=1, Blue=2};assert
BLOG POSTS - BRIAN R. BONDY October 2013 - At the Mozilla Summit. I was employed at Mozilla at the time attending a yearly Mozilla Summit event. A Mozilla Summit is a get-together where 1,600 employees, contractors, and community leaders gather to discuss, make plans, and hack on Mozilla products like Firefox. Within days, I would have my first interview for a new job BLOG POSTS - BRIAN R. BONDY Firefox Metro Preview Release - Status update 8. Posted on October 4, 2012. As per this Future of Firefox announcement, we have a work-in-progress, Metro Firefox preview! This preview will give you a glimpse of what Firefox on Metro will be like, but it is not meant to be complete. Several incomplete features will exist, which is normalat this
* Blog
* Filters
* Projects
* Other
* About
* Contact
*
*
*
*
MY FIRST 100 MILE RUN - WOODSTOCK HALLUCINATION Posted on May 12, 2020 It wasn't until later in my life at the age of 29 (2010) that I got into running. To try and stay in shape, I took karate, but my karate dojo had just closed. Running seemed interesting to me, but my cardiowas horrible.
I went out for a 1k run and I was out of breath and quit 7 minutes later. I'd blame it on my asthma. It was no secret that I wasn't in shape, even the people at my karate dojo sarcastically called me"cardio king".
Over the course of the next couple years, with the help of my friend Sam Denommee fixing my running form and answering all my questions, I built up to a 5k, a 10k, and then a half marathon. The next year in 2013, I did my first marathon. 5 years later in 2018, I kept running, but I was still out of shape. I had done up to a 50mi race at this point, but that 50mi race didn't go well and I went over the cut-off time by a few minutes. I never did beat my first marathon's time at that point even though I had done a bunch of other marathons. Most alarmingly though, stepping on the scale, I broke 200lbs for the first time in my life. This scared the shit out of me. My father died early in life and I wanted to make sure I was healthy for my 3 boys. I decided that over the winter, I'd do a 10k 30 days in a row. This went well, so well that I extended it to 100 days in a row. I was down into the mid 190lbs at this point but still overweight. I felt better though and coming off the high of completing 100 10ks in consecutive days, and having just read David Goggins's book “Can’t Hurt Me”, I decided it was time to try to push past my furthest distance. I sent Sam a message and asked her if she thought it would be stupid if I went from 50mi to 100mi instead of doing a 100k next. She said to go big and then to go home. So I signed up for the 100mi race. I had 6 months to get ready. I immediately knew I was in trouble, and this scared the shit out of me. I knew my previous 50mi went badly and that carrying the extra weight for 100mi would be a recipe for failure. It was at this point that I contacted a local sports nutritionist that I found online - Andrea Docherty . She helped me learn proper nutrition and what I needed to survive and feel good during the runs. This was by far the most important thing that I needed. I lost over 30lbs overall in my training and I kept the weight off since then. During this time, I kept a Google Sheet with everything that I ate and the macronutrients in each item. I was strict with myself and I wouldn't eat anything that I couldn't get the nutrition info for. I tracked everything I consumed for the next 6 months. I scribbled notes as Andrea taught me weekly. I learnt the right proportion of macronutrients: fats, proteins and carbs for my weight. 1.6-1.8g/kg of protein. Proteins and fats are the most filling because they take longer to digest. I learnt about micronutrients like vitamins and minerals. Sodium is the main electrolyte you lose when you sweat. For the extra calories that I'd burn during a run, I'd increase my average carb intake. I learnt to start eating 30-45min into the run. Caffeine has a half life of 5-6 hours. The list of supplements I should take. I should consume 30-60g of carbs / hour when running, or up to 400 calories. During a long run aim for 250-500mg of sodium/hour. Turmeric is good for inflammation for recovery. Ginger is good for an upset stomach. Lose at most 1/2 lbs aweek. Etc.
For my training plan, Sam shared a local running group's plan with me- the weULTRA
20-week 100mi training plan. The distance needed each week was mind blowing to me at the time. The longest single training run I did while on this plan was 50mi and I'd regularly do above 100k per week. During this time, I could get through a couple audio books per week. I didn't miss a training run, and went above the needed distance on some weeks. I'm thankful to my wife for being supportive and understanding duringmy training.
By the end of my training plan, and in large part thanks to my nutritionist Andrea, I felt somewhat ready for my race. I explained to my boys that I wasn't sure if I could do it but that I'd try to finish. They told me that they were sure I'd do it, to which I explained, no really, I'm not sure. On the day of the race, my wife and boys came with me to the race and helped me set up a tent which I'd pass by on each loop of the race toget extra supplies.
I had a couple of hours of down time before the run. I was tapered and pumped at the starting line. The race consisted of 6 loops, where each loop was a figure 8. I would follow the pink loop. Pretty simple, who could screw it up? A good friend of mine Sergey Zhukovsky came and crewed for me and ran the 4th and 5th loop with me, which happened to be around 4am. I'm forever grateful for his support on each of the other loops too. The run went well overall, I made a wrong turn following someone at one point and added 1k extra. I stopped him and told him I thought we were going the wrong way and there weren't any markers. We turned back and got back in the right direction. Running for over 24h without a break is exhausting of course, and I wanted to die, but I had encouragement from my family sending me messages and words of encouragement the whole time, even throughout the night. I didn't think of quitting at all during this run. At the end of the 5th loop it seemed like I'd finish the race with plenty of time to spare. The 6th loop was going well, that is until I didn't turn at the vertex of the figure 8, and did the top half of the 8 twice, adding an extra 10k to the total distance. The worst part of this is that the flags are still there, and are on the correct side, so it's hard to tell you're off course. Because you're still on course, just doing something you already did before, 6 times. I suspected I missed a turn, but I wasn't sure until about 4k in. I realized what I must have done but decided to just keep going and turn once I got back to the vertex of the 8. I could do this and still make the cut off time. Overall the distance of my race ended up being more than 4 consecutive marathons. It ended up being close, the cut off time was 30 hours, but I did end up finishing the 170k+in 29 hours.
To my dismay, there wasn't an award for longest 100mi run. It was dark (for a second time) by the time I finished the run. I could hear my wife Shannon calling out that she could see me and my boys ran in the finish line with me. After the run, I had blisters on my feet and chafing in more places that I want to admit. My body immediately turned off like a light switch. I was running seconds before, and seized up right after the finish line. I collected some finisher's race swag and ravaged a plateof pasta.
I was back out running5 days later.
A month after that I went out for my second 100mi run. I fell in love with the 100mi distance during this first race. You get to push yourself to your limits, and then beyond your limits. Emotionally, you feel as raw as the chafing between your legs. You feel so loved, supported, and so thankful. You get to learn about yourself and realize that you can do more than you thought was possible. Without the bitter, the sweet ain't as sweet. When you run for 29 hours, there's a lot of bitterness, and you experience sweetness like you never have before.running
THE ROAD TO BRAVE 1.0 Posted on November 13, 2019 Over the past 4 ½ years I've been helping to build a "big" new startup named Brave. It's been a wild ride, far exceeding anything I could have imagined. The company has grown from a team of 2, to over 100 passionate mission-driven teammates. Our user base has grown to 8.7 million monthly active users. Our users help support over 300,000 registered content creators via micropayments. And our community is growing and thriving more every day. Brave 2019 company event: Today we're celebrating the release of Brave 1.0, and I couldn't be happier to be a part of it. Here's a story of how Brave came to be, told from the perspective of one of its co-founders. OCTOBER 2013 - AT THE MOZILLA SUMMIT I was employed at Mozilla at the time attending a yearly Mozilla Summit event. A Mozilla Summit is a get-together where 1,600 employees, contractors, and community leaders gather to discuss, make plans, and hack on Mozilla products like Firefox. Within days, I would have my first interview for a new job with Khan Academy. I felt held back at Mozilla and I wanted to go into full gear mode. I've always found motivation in mission-driven companies, so going from a non-profit company like Mozilla to Khan Academy made sense. If I wasn't offered a position with my first choice Khan Academy, then I'd find somewhere else to go. My mind was made up. Before I left Mozilla though, and on the final night of the summit, I wanted to get a picture with the creator of JavaScript and co-founder of Mozilla, Brendan Eich. I told myself that this would be the last time I would see, let alone be able to get a picture of myself with Brendan. It took me all night to gather up the courage to ask for a picture, but I finally did it. I ended up getting the job at Khan Academy, leveraging a coding video tutorial site I had created named Code Firefox,
and crushing the take home project they'd given. Phewf! Good thing Igot that picture.
AUGUST 2014 - SURPRISING FIRST CONTACT Nearly a year later, I was on my laptop sitting in bed. I turned to my wife and said: "Wow! The creator of JavaScript just asked me to direct-message (DM) him." My wife said: "He probably wants to offer you a job." "I don't think so," I said, and "I'm happy at Khan Academy anyway." I couldn't DM him of course, because he wasn't following me on Twitter at the time and his private DMs weren't open. I did have his personal email though, and so I started what would be a life-changing email thread. DEFINING WHAT BRAVE WOULD BE AND HOW IT WOULD WORK Brendan sent me an initial pitch deck for the idea of a company that would eventually be known as Brave. It wasn't called Brave at that point, but the basic ideas haven't changed. * Stop allowing users to be tracked, users should own their owndata.
* Speed up page load time and reduce bandwidth by blocking badthings.
* Allow publishers to get paid via cryptocurrency replacing lost revenue from the blocking. * Allow users to get paid via cryptocurrency micropayments for their attention on privacy preserving ads.WHY ME?
A lot of people like to ask why Brendan contacted me above all people. He's probably one of the most developer-connected people on theplanet.
The answer in short was that I had made it on a spreadsheet of top talent that he maintained. He didn't originally contact me to be a co-founder, he contacted me to be a contractor because he needed top Windows talent. I'm sure he contacted several other people as well. During the next 4 months of discussion, we fleshed out details of what we would build. From my previous startup experience and from creating a new browser from scratch, Firefox - Windows style enabled Metro browser . I knew exactly how a new browser could be built. I knew how installers would work, how updates would work, how signing worked, how much things would cost, how long things would take, I had the answer to various other "how" questions as well. During this discussion, something changed. I went from being considered as a contractor with Windows talent, to being offered to be a co-founder in the company that was about to start. MAY 2015 - STARTING WORK It took another few months to get initial funding, but in May 2015 we started this ambitious project. I quit Khan Academy, and on my last day there, Sal Khan joked that when I made it big, I should not forget about Khan Academy and to give them a donation. I didn't say it at the time, but I was thinking that I'd not only give a donation, but I'd
help enable thousands of others to do the same. The company was in "stealth" mode at the time, it was OK to say that I was working on a new startup, but we didn't share Brendan's involvement to avoid attracting media attention until we were ready. It was hard to keep it a secret, what if Brave never launched? I'd have quit my dream job and risked everything I had going for me and my family, and no one might ever know that I co-founded this company with Brendan Eich. I knew we'd have to make it work, but I also knew we couldn't do it alone. Our initial plan was very ambitious:We'd build:
* Desktop browsers for Windows, macOS, Linux* iOS browser
* Android browser
* Micro-payments for user private ads * Built-in tracking protection* Ad-block
* HTTPS everywhere
* Tor private tabs
* Greasemonkey type functionality. * Extensions for other browsers (The only one we didn't end upbuilding)
* And more...
Thanks to Brendan being who he is, hiring was never a problem. It still isn't. We quickly hired top talent including Yan Zhu, Brad Richter, and Marshall Rose. We built up a great set of top advisors and attracted some great talent via open-source contributions. PICKING A COMPANY NAME We had a placeholder name for the company: "HyperWeb Labs". Brave was one of the first names we considered. But we also consideredothers:
* Gladiator
* Dynamo
* Superware?
Uh, no.
An advisor proposed Brownie, but I just couldn't picture that going over well in a taskbar. Brave was the most promising option, but we thought it might have someproblems:
* Might be viewed as a bit cheesy if taken too seriously* Boastful
* Might not be evocative of imagery / logo (Firefox was hard to beatthere)
* May not translate well Despite these potential problems though, we couldn't come up with anything else we liked better. We decided to go with it. We did almost use "Zura" though, which is Sanskrit for Brave. We'd have used this name if we couldn't register the company name or a domain for Brave.OBTAINING BRAVE.COM
Having the name locked in, we registered brave.io which was available for a fairly low price. We really wanted brave.com, but it had been in use for 17 years by a "nuclear polka" band founded in 1979 named BraveCombo .
I decided what the heck, I'd cold email Brave Combo anyway. brave.com was being used and redirected to brave.com/bo. So as leverage, before I contacted them, I decided to order bravecombo.com first which was available. I reasoned that brave.com/bo isn't much different from bravecombo.com. I asked if they'd consider selling brave.com in exchange for bravecombo.com and a fair price. They gave a range, and after some months of convincing, we agreed on a price in that range. We'd pay half up front, and the other half 6 months later. As a side note, Brave Combo appeared on the Simpsons and music from Brave Combo was featured on Futurama.GETTING A LOGO
We had 3 attempts for our logo. The first one was from an independent contractor. Here are the initial bar napkin sketches: We decided right there, that obviously the right direction was... the lightning bolt icon. But after it was rendered and rasterized, we decided to go back and pick a different direction. Our next step was to launch a crowdspring contest with a description asking for something that invoked a lion in imagery. We kept making tweaks to it but we were never happy with it. When Brad started working at Brave, we assigned the logo to him. He knocked it out of the park and we loved what he came up with. Which was later revised to: Bonus: I picked up one of the runner-up submission icons as my websitelogo.
FIRST ATTEMPT AT A DESKTOP BROWSER The first code commit for our desktop browser was on May 10, 2015. The code was based on Graphene, a multi-process/sandboxed web app framework built on the Gecko rendering engine, which was basically Firefox OS for Desktop. A new browser was also using Graphene at Mozilla at the time, named Firefox.html. Firefox.html by Paul Rouget looked at the time to be the future of Firefox, with HTML to replace the user interface markup language that is still in use today, XUL. The Firefox.html project was announced Dec 6, 2014, and had a name change to browser.html, but never actuallylaunched.
We built the UI for Brave from scratch using React and Redux: the original thinking was that we wanted more speed iterating on UI innovations. The Brave prototype found ad slots dynamically, and since we had no ad inventory at the time, comically we used a service which provided pictures of bearded men. As you can see, the design of the browser was pre-Brad. It was done by developers that sorely needed design help. 637 code commits later, we stopped short and never released this first browser; the last commit was December 12, 2015. We realized we were still months away from building out basic platform support for things like menus, drop down lists, and other problems that Graphene had. At this point, the company was still in stealth mode and the pressure was on for us to release something soon. FIRST ATTEMPT AT MOBILE BROWSERS The first attempt at an iOS browser was based on React Native. It was the hot new thing, and it was just released January 2015 at React conf. The first commit on the iOS browser was on June 28, 2015 and after 116 commits, we decided that the technology hadn't maturedenough for us yet.
Since we were busy building 2 different browsers at the same time, and we had a staff of only a few, we didn't have time to start an Androidbrowser.
However, we used and liked a browser that was on the market, created by an independent developer named Chris Lacey. The browser was calledLink Bubble.
After a lot of discussion and planning we flew Chris from Australia to San Francisco and agreed to acquire Link Bubble in August 2015. We made it free 22 dayslater.
The basic idea of Link Bubble was pretty good. If you're reading an email and there's a link you want to read, then tap the link, keep reading the email, let it load in the background in a bubble, then tap the bubble to bring up the page later. There's no need to context switch to a new app with a loading page. Supporting a webview from a background service was something that worked on Android, but it wasn't officially supported. There would be a number of bugs that we couldn't fix due to them being outside of our code base, and it had a number of limitations, like you couldn't select text for copy and paste. It also became clear from Google statements that there was significant risk that Android would not allow background services to draw on top of other apps for security reasons in the future. We wanted a full browser, and Link Bubble would never be able to mature beyond a link reader. Link Bubble was the company's first product that we shipped. It gave us valuable Android experience and a user base, many of whom stuckwith us.
STARTING OVER AND SHIPPING REVISION 2 OF EVERYTHING On the desktop side, we were in a bad spot. We were 90% there, but with missing platform support that would take us months to build. As a startup, we had limited funding and we were 7 months in. We had gathered several JS-heavy developers as our initial staff. We had a desktop browser that was built with HTML + JS. The framework the browser was based on was months away from being mature enough, but there was another framework from GitHub named Electron. At the time, it wasn't known that Electron wasn't designed for building browsers, although it would later be clarified. We knew we needed to ship, we knew Electron filled the gaps that Graphene was missing, and we knew we could port what we had to Electron. We considered switching to Chromium at this time, but we'd have likely run out of funding and never shipped if we had tried. We forked Electron into a project named Muon which was more secure by turning on sandboxing and removing Node from the renderer processes. We added extension support and made various other changes as well. It took only 1 month and 5 days, and we were able to fill the gaps we were missing and ship the browser code base that started on Graphene with Muon. We had a beta-quality desktop browser, and while it didn't even have bookmarks yet, on January 20th 2016, Brave went out of stealth mode and we shared our plans with the world.
The second iteration of our iOS browser was based on Firefox iOS. Firefox iOS used WKWebView but we couldn't achieve the blocking we wanted with it, so we switched it to the older Apple-supported embeddable WebKit engine, UIWebView. This gave us the APIs we needed for Brave Shields. A month later, in February 19, 2016, we shipped ourfirst iOS browser.
On Android, we already had something released but we needed something more robust. We weren't in as much of a hurry but we knew a change was needed. On July 13, 2016 we settled on using Chromium, and in an unbelievable feat of engineering, 3 months later a star developer of ours named Serg had the first release ready and shipped. Our Android browser user growth was amazing, so it didn't take long to get orders of magnitude more users than Link Bubble. We had made the right call. GETTING IT RIGHT WITH REVISION 3 OF EVERYTHING At this point we had created the 3 browser code bases for Android, iOS and Desktop 2 times. We had 1 more iteration in store for us. On desktop we realized that because of the way Electron was built, it took us a long time to ship updates every time Chromium did a major upgrade. It took us 2 full time developers the entire 6 weeks of time for every Chromium upgrade. And each time we did, a lot of things were broken. Electron forked a number of files from their chromium.org versions and these forked files quickly would get out of date, leading to serious problems as Chromium progressed. Our extension support was also lacking at the time. It took a lot of effort to support more chromium extension APIs, and they'd frequently break due to the Electron forked files. We supported a set of fewer than ten extensions, but the long tail of extensions is vitally important for growth to millions of users. We had great success with our Android browser, so we started a new fork of Chromium built in a robust way that would be easier to rebase on top of major Chromium upgrades. We named this project Brave Core (we nearly called it Brave Heart until someone pointed out that it sounded like the 1995 film Braveheart). Brave Core gave us full extension support, we could do Chromium upgrades very quickly, we'd improve our code sharing with Android, and things would be near bug-free. We'd see massive user growth once we were on Brave Core. We went from a browser that everyone thought they should use but didn't always stick with or make their default instead of Chrome, to a browser that almost all users want to use all the time. Retention rates improved dramatically and user growthskyrocketed.
On iOS, we'd later reverse the decision to use UIWebView due mostly to web compatibility and crash bugs outside of our stack that we couldn't fix and which Apple was not likely to fix. We re-forked Firefox iOS, re-added our features, and found new and creative ways to do the blocking and protection required by Brave Shields. Android is currently nearing completion of its revision 3 rewrite, a move to the same Brave Core codebase used on desktop and mentioned above. It'll simply be a 4th supported platform (Windows, macOS, Linux, Android) on the same code-base. BASIC ATTENTION TOKEN We added tipping support first with Bitcoin and later with an ERC-20 token named Basic Attention Token (BAT). We created BAT largely with the help of a developer named Scott, as well as Marshall, on May 31, 2017. We raised 36 million dollars in under 30 seconds by selling 1Bof 1.5B tokens.
The sale ended so fast that even though I tried, I wasn't even able to buy some BAT. I remember refreshing a page to see what the current Ethereum block number was, and before the page was done loading, there was a message on Slack that said: "It's done." The basic idea behind BAT is: * Users' attention gets valued at 0 today, in fact users pay part of their dataplan or ISP bill to download trackers and ads, whereas we believe that users should be paid for their attention. They shouldn't need to give up their privacy either like they do in today's ad-tech. * Publishers are losing revenue and the big ad players are taking most of it. Publishers should get a bigger cut. * Ad buyers are getting poor targeting and spending fruitlessly to combat ad-fraud. They should get a better deal. * Users should be able to tip on demand, in a recurring fashion, and via anonymous automatic contributions based on their browsing, without anyone including Brave seeing their browsing history or tracking them. From this BAT utility token sale, Brave had access to a user growth pool of funds which would be used to incentivize more users to use Brave and to support content creators. REALIZING OUR VISION User private ads first appeared in part thanks to work done by developers Terry and Amir on April 24, 2019 in Desktop. Luke Mulks drove early ad deals and did an amazing job by himself before we hired a sales team. Android followed, and today iOS support is also here. Seeing things work end to end was amazing. User attention is valued, publishers are being paid, and ad vendors get the targeting they need but without tracking users. As a company, we all feel happy and proud of what we created.BEYOND
Brave features many cool new firsts with Tor tabs, WebTorrent support, our Ethereum Remote Client MetaMask fork with Dapp detection, our blazing fast rust-based ad-block library, IPFS support via an embeddednode and more.
Brave 1.0 is here thanks to the grit and hard work of hundreds of people and thousands of community members. There's never been a better time to download Brave.
Brave was founded to give users back the privacy and respect that they deserve. Help us prove there’s a better way to browse the Internet that puts users first and supports content creators. Get excited, enjoy the journey, we're just getting started. brave mozilla khan-academy SHUTTING DOWN CODE FIREFOX Posted on July 8, 2016 On October 07, 2016 I'll be shutting down Code Firefox. With over 100k unique visits and over 30k full video views, it helped hundreds of Mozillians and Mozilla employees get ramped up for hacking on Firefox. It was from the start a personal side project and wasn't funded or sponsored in any way. It isn't being shutdown because of a conflict of interest with Brave, but instead because over time the content naturally becomes more obsolete as better development methods surface. I'm happy with what it is and the purpose it had, but shutting it down is the responsible thing to do.mozilla firefox
codefirefox Next pageDetails
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0