-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
adding first post and image links that dont seem to work
- Loading branch information
Showing
17 changed files
with
108 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
--- | ||
title: My First Week at RStudio | ||
author: Maya Gans | ||
date: '2019-06-12' | ||
slug: my-first-week-at-rstudio | ||
categories: | ||
- TidyBlocks | ||
tags: | ||
- TidyBlocks | ||
- JavaScript | ||
subtitle: '' | ||
summary: '' | ||
authors: [] | ||
lastmod: '2019-06-12T12:18:41-06:00' | ||
featured: no | ||
image: | ||
caption: '' | ||
focal_point: '' | ||
preview_only: no | ||
projects: [] | ||
--- | ||
|
||
--- | ||
title: "My First Week at RStudio" | ||
author: "Maya Gans" | ||
date: '2019-06-12' | ||
categories: TidyBlocks | ||
featured: no | ||
image: | ||
caption: '' | ||
focal_point: '' | ||
preview_only: no | ||
lastmod: '2019-06-12T12:00:59-06:00' | ||
projects: [] | ||
slug: my-first-week-at-rstudio | ||
subtitle: '' | ||
summary: '' | ||
tags: | ||
- JavaScript | ||
- TidyBlocks | ||
authors: [] | ||
--- | ||
|
||
This past week was my first as an intern at RStudio where I’m designing a prototype for a visual programming language: a block-based version of the Tidyverse. Prior to my official start date with R Studio, I spent my summer familiarizing myself with JavaScript and design considerations when building a user interface. | ||
|
||
![](../../static/img/my-first-week/img1.png) | ||
|
||
The end goal of the internship is obvious: a working proof of concept where I envision each block as a step in a chain of Tidy functions. I started off the week identifying the task of creating a single functional block and only later in the week did I realize how important this would be. | ||
|
||
My first pass reading the blockly documentation was overwhelming, but after running through a concrete tutorial I could tinker with I began to understand the block architecture. I realized every block has three components: it’s physical shape, the JavaScript code under the hood (its **generator function**) and an xml script to include the block within the toolbox of available blocks. | ||
|
||
![](../../static/img/my-first-week/img2.png) | ||
|
||
Google provides a “Block Factory” a block-based program to create the physical block shapes (I know, meta) and easy to follow documentation on how to add the block to the toolbox. Following along with the documentation (adding some of my own CSS mustard) I created a UI for my block playground and to display the code output. [I’m tinkering with making this in the style of RStudio, and avoiding any color scheme that would convey block based coding is juvenile.] One day in and I had a canvass to create blocks on! | ||
|
||
But as soon as my objectives became more personalized (alright, I have an idea of how the data frame block should look and how to add it to my toolbox… now how the hell do I get the data into a block?) my progress came to a halt. It was time to generate the generator code. I love coding because of those tiny victories when the error codes no longer show up. I can problem solve and practice being comfortable with the uncomfortable. But it also makes me crazy. I spent the next day breaking demo apps and trying to apply the data-forge.js logic to a single block. The next day I started to panic. This internship is short, how much time do I have to troubleshoot? How much time do I budget to tinkering and trying to problem solve? I want to prove myself, but how stuck should one be before reaching out? Failure is part of the process but for how long? I decided either once I exhaust my ideas or by the end of day I’ll reach out for help. One of the amazing things about R is the community and how no question is too small, but ego and pride can get in the way of asking. | ||
|
||
Just addressing my frustrations with Greg (and perhaps the new eyes of a fresh day) were enough to figure out how to add the data to the block! By Thursday I had a block containing two columns of data, one a string and the other numeric. I also created a second, filter block whose inputs are the column from the dataframe, the operation to apply, and the pr. | ||
|
||
![](../../static/img/my-first-week/img3.png) | ||
|
||
But here’s the cliff hanger – I had to add the dataframe to the filter block to have it work, realizing an important gap I need to address next week: HOW do blocks talk to one another? Can I relay a mental model of where blockly global variables live and how to access them? | ||
|
||
On a project in a field where there’s always more to do and more to learn, I ended the week feeling like a rock star that I had two blocks instead of one within an environment where the code can be displayed, and I overcame my first code writing block. It would have been easy to end the week thinking about the big picture and how much I need to do in the allotted time frame of the internship but instead I went into the weekend excited to take on my next challenge! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
--- | ||
title: My First Week at RStudio | ||
author: Maya Gans | ||
date: '2019-06-12' | ||
slug: my-first-week-at-rstudio | ||
categories: | ||
- TidyBlocks | ||
tags: | ||
- TidyBlocks | ||
- JavaScript | ||
subtitle: '' | ||
summary: '' | ||
authors: [] | ||
lastmod: '2019-06-12T12:18:41-06:00' | ||
featured: no | ||
image: | ||
caption: '' | ||
focal_point: '' | ||
preview_only: no | ||
projects: [] | ||
--- | ||
|
||
|
||
|
||
<p>This past week was my first as an intern at RStudio where I’m designing a prototype for a visual programming language: a block-based version of the Tidyverse. Prior to my official start date with R Studio, I spent my summer familiarizing myself with JavaScript and design considerations when building a user interface.</p> | ||
<div class="figure"> | ||
<img src="../../static/img/my-first-week/img1.png" /> | ||
|
||
</div> | ||
<p>The end goal of the internship is obvious: a working proof of concept where I envision each block as a step in a chain of Tidy functions. I started off the week identifying the task of creating a single functional block and only later in the week did I realize how important this would be.</p> | ||
<p>My first pass reading the blockly documentation was overwhelming, but after running through a concrete tutorial I could tinker with I began to understand the block architecture. I realized every block has three components: it’s physical shape, the JavaScript code under the hood (its <strong>generator function</strong>) and an xml script to include the block within the toolbox of available blocks.</p> | ||
<div class="figure"> | ||
<img src="../../static/img/my-first-week/img2.png" /> | ||
|
||
</div> | ||
<p>Google provides a “Block Factory” a block-based program to create the physical block shapes (I know, meta) and easy to follow documentation on how to add the block to the toolbox. Following along with the documentation (adding some of my own CSS mustard) I created a UI for my block playground and to display the code output. [I’m tinkering with making this in the style of RStudio, and avoiding any color scheme that would convey block based coding is juvenile.] One day in and I had a canvass to create blocks on!</p> | ||
<p>But as soon as my objectives became more personalized (alright, I have an idea of how the data frame block should look and how to add it to my toolbox… now how the hell do I get the data into a block?) my progress came to a halt. It was time to generate the generator code. I love coding because of those tiny victories when the error codes no longer show up. I can problem solve and practice being comfortable with the uncomfortable. But it also makes me crazy. I spent the next day breaking demo apps and trying to apply the data-forge.js logic to a single block. The next day I started to panic. This internship is short, how much time do I have to troubleshoot? How much time do I budget to tinkering and trying to problem solve? I want to prove myself, but how stuck should one be before reaching out? Failure is part of the process but for how long? I decided either once I exhaust my ideas or by the end of day I’ll reach out for help. One of the amazing things about R is the community and how no question is too small, but ego and pride can get in the way of asking.</p> | ||
<p>Just addressing my frustrations with Greg (and perhaps the new eyes of a fresh day) were enough to figure out how to add the data to the block! By Thursday I had a block containing two columns of data, one a string and the other numeric. I also created a second, filter block whose inputs are the column from the dataframe, the operation to apply, and the pr.</p> | ||
<div class="figure"> | ||
<img src="../../static/img/my-first-week/img3.png" /> | ||
|
||
</div> | ||
<p>But here’s the cliff hanger – I had to add the dataframe to the filter block to have it work, realizing an important gap I need to address next week: HOW do blocks talk to one another? Can I relay a mental model of where blockly global variables live and how to access them?</p> | ||
<p>On a project in a field where there’s always more to do and more to learn, I ended the week feeling like a rock star that I had two blocks instead of one within an environment where the code can be displayed, and I overcame my first code writing block. It would have been easy to end the week thinking about the big picture and how much I need to do in the allotted time frame of the internship but instead I went into the weekend excited to take on my next challenge!</p> |
Binary file removed
BIN
-11 KB
...theme-1950s_huaf5482f8cea0c5a703a328640e3b7509_21614_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-10.4 KB
...heme-apogee_hu4b45d99db97150df01464c393bfd17d4_24119_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-11 KB
...ee-playfair_hu446a8f670cc5622adcc77b97ba95f6c5_22462_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-10.5 KB
...eme-cupcake_hueba8cfa8cfbc7543924fcbf387a99e92_23986_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-10.8 KB
.../theme-dark_hu1e8601ecc47f58eada7743fdcd709d3d_21456_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-10.6 KB
...eme-default_huba6228b7bdf30e2f03f12ea91b2cba0d_21751_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-11 KB
...heme-forest_hu4f093a1c683134431456584193ea41ee_21797_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-11 KB
...theme-ocean_hu14831ccafc2219f30a7a096fa7617e01_21760_0x190_resize_lanczos_2.png
Binary file not shown.
Binary file removed
BIN
-24.4 KB
...featured_hu3d03a01dcc18bc5be0e67db3d8d209a6_329522_550x0_resize_q90_lanczos.jpg
Binary file not shown.
Binary file removed
BIN
-33 KB
...featured_hu3d03a01dcc18bc5be0e67db3d8d209a6_224363_550x0_resize_q90_lanczos.jpg
Binary file not shown.
Binary file removed
BIN
-81.4 KB
...d_hu3d03a01dcc18bc5be0e67db3d8d209a6_312700_918x517_fill_q90_lanczos_smart1.jpg
Binary file not shown.
Binary file removed
BIN
-5.26 KB
...featured_hu3d03a01dcc18bc5be0e67db3d8d209a6_214168_150x0_resize_q90_lanczos.jpg
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.