630 karma · joined August 3, 2017
These types of models are actually quite simple to build and implement if you actually have data.
I personally love it and have used it for a ton of smaller projects. For example, I just deployed this a couple days ago: http://dadjoke.info
For example, I was previously a Financial Economics Professor and "flipped" the classroom for my introductory corporate finance class. This means that the students watched prerecorded video lectures at home and then worked out their "homework" in class. So basically, the students had someone (me) to ask questions of when they hit stumbling blocks. Pedagogically, this has shown improvements in learning achievements.
HOWEVER, the problem I ran into is pretty similar to what I have heard from every other faculty member (across disciplines and universities) who has attempted to do this. The problem is that we repeatedly hear from students that "he didn't even teach us anything, he just made us watch videos." This wasn't just one or two students, this was an overwhelming majority. The other problem I ran into was that students thought there was no benefit to coming to class (even when you include attendance as part of their grades). The number of students dropping the course at the last 'W' deadline skyrocketed.
For me, it became a challenge to continue to do it this way, even though I spent 3+ months full time over a summer producing videos of my lectures, and eventually went back to the "chalk and talk". My student opinion polls went back up.
I'm not entirely sure of what the solution to the problem is, but project based learning does greatly enhance learning. That needs to be baked into the institution.
for example, this assigns a ggplot to 'plot': df %>% na.omit() %>% ggplot(aes(x=x, y=y)) + geom_line() -> plot
That is really confusing in that the way most people would read it is that it is something to be plotted. However, the assignment does occur and is masked. having 'plot <- df %>%' as the first line makes it clear that a new object is being created.
We actually had to modify our style guide to prevent the '->'
a <- a + 1
a + 1 -> a # also works, but REALLY bad practice
But, so does
a = a + 1
Granted, there are a bunch of R haters (especially from people with formal CS educations), I think this convention makes a lot of sense. While most will disagree about the '<-' I like it from a code reading sense in that you know that it is an assignment right away. Coming from a mathematical perspective before learning to code, this makes a lot more sense in the 'assignment' fashion.
In case you are wondering, the difference between <- and = in R is in scoping. For example, in the following function call:
foo(x = 'value')
x is declared in the scope of the function, whereas:
foo(x <- 'value')
x is now declared in the user environment. Granted, that is not good practice, but that is why there is a difference.
Unless I am mistaken. I'd be interested if I was able to find more credits for AWS/GCP/etc
I'm a data scientist and regularly work with multiple datasets simulataneously that require the RAM usage. Both Python and R rely on in-memory processing. Loading on/off disk is substantially slower and does not fit with what I am trying to do. For really large datasets I also have a 28 core Xeon with 196GB that I can remote into, but it is nice to not have constraints on my laptop.
Of course, you could go with Hadoop or Spark to process some of these datasets, but that requires quite a bit of overhead and its easier (and cheaper) to just buy more RAM
That is the beauty of airbnb's landing page, you get a sense right off the bat of exactly what it is they are selling.
I ran into a bunch of problems with generating pretty much the same meal multiple times per week. So, I then inserted a "likeness" score for how much I actually liked that item (ex/ brussels sprouts were a 2, sweet potato fries a 9), and then used that as a seed for the probability of showing up.
It was super personalized and I recently found Big Oven which is actually much better than what I had done (it also generates grocery lists and can incorporate random food blogs). The one problem with that app turned into another side project. They limit how many recipes you can OCR into their app. So, my workaround was to create my own "food blog" by uploading a bunch of static sites on my personal website and then linking them. (because food blogs are free to link).
For example, I care about my meal prep quite a bit and wanted a way to generate a meal plan based on the recipes and foods I had available. While there are a bunch of apps out there that do that for you, I wanted to save the ~$20 and built my own. While the ROI was definitely not there, it was fun to build and I still use it today.
Another example I did was that I formerly was a professor and got asked numerous times for additional practice problems. So I built a web app that would generate questions with random numbers (these were mostly math based questions) so they had an "unlimited" number of practice problems. This turned into a massive project and was incredibly fulfilling.
The number of problems are practically limitless - good luck!
At work I am forced to use windows and have to use Office for many tasks (including SharePoint - talk about a terrible product) and aren't allowed to use GSuite. If I had a choice, I would make the same decision as Airbus