50 karma · joined December 12, 2011
> Am I right to assume that it's nearly impossible to set up a cloud database that is accessed directly from, say, the OR of a hospital?
It depends on you, the employees, and the hospital. HIPAA basically focuses on 3 factors for securing and storing sensitive data: (1) Physical data security, (2) Security of data in transit, and (3) Training of personnel with access to the data. Amazon has HIPAA services that handle (1), 3rd party services like you mentioned above or you can handle yourself for (2), and also 3rd party services or yourself can handle (3). Assuming you have (1) and (2) squared away, and assuming the employees in the OR have the proper training, there should be no compliance violation.
The new addition of conference/journal templates and integrated spell check is really opening it up to a broader audiences than just CS-centric users.
My friend (with very little coding experience) saw my resume and asked for help to craft his own. I sent him overleaf.com and a template and he was able to get started with LaTeX in their side-by-side environment and was able to add his own content very easily. I know without this service it would have been a headache setting up LaTeX for him locally and walking him through it, so props to the overleaf team for abstracting the tech this way.
Coinbase offers multi-sig support which puts control back into the user's hands in the event Coinbase went down or was compromised.
Coinbase is a great service for acquiring coin but I generally move it out to my preferred wallet after I purchase it.
I actually filed a support ticket yesterday trying to entice them to get on the list.
While I don't feel overwhelmed by all the services, there are some of these I couldn't see how we would immediately use such as data analytics.
I just wish HipChat was on there too :)
> Will chosing the "business informatics" major make me drastically less employable in software engineering positions, even if I have a good portfolio of personal projects?
Drastically? Probably not, especially if you have some projects under your belt to demonstrate your skills. If your goal is to be a "software engineer" though, I think you're better off getting a CS degree because it directly feeds into a software career.
> Will I miss out on a lot of core concepts in the theoretical & technical Computer Science courses, which will make me less proficient in programming later on?
Of course you will miss out on some things. There is a reason these are 2 different programs at your school because they are aiming at teaching 2 different things. CS dives into theoretical components such as OS design, programming paradigms and design, algorithms, ect. Now you can learn all these on your own of course, but I find it far more difficult especially at a higher level of understanding. "business informatics" (as I understand it), is about putting software in place which is going to aid business in some way or possibly train you to be in some sort of "software management" position.
Just my 2 cents though.
Another note is there are (at least where I work), potential for HPC personnel and they aren't even hiring for these spots. For instance, I was recently talking to a programmer who works with population models. He has no parallel programming experience so he writes his models sequentially and runs them for months and months at a time. If they had a parallel specialist of some sort (even on a consulting basis), their research would be greatly sped up.
One nitpick is the description text accompanying the section titles in the syllabus. Reading the paragraphs of white text over the images make me strain my eyes to read or have me scrolling so the text falls over a dark part of the image which makes it rather busy and distracting to read.
Thanks for this resource!
In short, I mainly kept to myself within the CS department. While I had friends there, my relationship with them was majorly school-based. My girlfriend and guys I hung out with on a regular basis were all in different fields but that never bothered me because we still all had a blast. I worked on personal projects and homeworks mostly by myself, but I personally preferred it that way because it was so much more rewarding to me to do it that way than to have someone else walk me through it. So, was this solidarity beneficial to me? I think it was for me but could see how others may want more. One thing I did do was find a few professors I really respected and talked to on a regular basis which I think was more beneficial to me than most peer interactions.
On another note here is something to think about Facebook: You only see what everyone wants you to see about them. Kids in college largely have the same mindset as you...they want to be having the best time of their life, so you can be sure that is how they perceive themselves on social media and crop their content to fit that. I can remember countless parties where a large group of people walk in, pose against the crowd and take pictures, then leave. Maybe they go hang out somewhere else or maybe they go home, but you can be sure the next morning they all have those pictures all over Facebook showing 'what a great time' they had. Personally, after my sophomore year I stopped using Facebook all together and only get on when I have an email notification I need to attend to.
What kind of clubs and social life are you looking for? If you have a strong CS dept, it is likely your professors head their own research groups for their field and would at least let you come to the meetings if not participate in the research yourself if you showed some initiative. If you are really unhappy I'd consider transferring but only after you're sure that what you are looking for isn't available where you are. Sometimes you just have to look a little harder and put yourself out there.
One such is constructing a minimum spanning tree. Give them some problem where they would need it on a dense graph and let them struggle to piece it together (and penalize for wrong edges included). At the end you could explain how their strategy related to Prim or Kruskal's algorithms.
Another is finding a shortest path from 1 vertex to another. The context would be rather easy and you could again penalize for an incorrect path taken and let them argue about the optimum route and introduce Dijkstra's at the end.
I think context is the most important thing. No high schooler wants to be given an arbitrary graph and feel like they are doing some mundane problem on it. Put some contextual spin on the problems (perhaps locally relevant) to pique their interest and make it hit home for them as to why these are important problems/solutions.
For work, Foco has offices for Hewlett Packard, Intel, AMD, Avago, National Semiconductor, LSI, and Wolf Robotics. If the start-up scene is more your taste, Fort Collins-Loveland was rated 2nd in the "Top 10 Metro Areas for High-Tech Startup Density" in the United States (with Boulder at #1) in 2013 [1], and is also home to a start-up incubator called Rocky Mountain Innosphere [2].
There are miles of bike trails [3] all over the city and many places to hike nearby as well [4]. Needless to say lots of people are out and about being physically active around here and biking is often the preferred mode of transportion.
Other than that I just personally enjoy the atmosphere out here. Since we have a university in town there are tons of little hole-in-the-wall coffee shops open 24/7 (or close to it) and lots of specialty food in the form of restaurants, food trucks, food carts, ect. Old Town area is the main social scene and is always bustling whether people are out getting a bite to eat, walking around, or there are often various festivals taking place. Micro-brew Beer is also a huge part of the culture around here (at least in my circles), as fort collins is home to New Belgium, Odell, and many other micro-breweries and holds a huge beer festival called New West Fest every year. In all, it's a quirky little city that I quite enjoy.
Disclaimer: I've lived in the Loveland/Ft. Collins area for 6 years now and just finished my CS degree at Colorado State University.
[0] - http://www.fcgov.com/visitor/fcfacts.php
[1] - http://www.kauffman.org/newsroom/2013/08/young-hightech-firm...
[2] - http://www.innosphere.org/
[3] - http://www.fcgov.com/bicycling/pdf/bike-map-front.pdf
[4] - http://alltrails.com/us/colorado/fort-collins?ref=header
edit: formatting
I'm in my last semester of university for CS (starting graduate school in the Fall), what kinds of 'pre-reqs' would you suggest in terms of languages/programming paradigms/statistics knowledge?
What is the weekly number of hours we should be prepared to commit?
Here's a nice little introduction I found with some reductions on the first couple slides: http://www.cs.princeton.edu/courses/archive/spr04/cos226/lec...
I just finished my algorithms undergrad class last semester; one of the questions on the final was 'you are a terrorist looking to cut off supplies to your enemy, which 3 nodes must you destroy to cut off the supply network?' And there was a complicated graph with probably 10 nodes and twice as many edges (very difficult to brute force in the allotted time), and we had to find the min-cut which would severe the flow. Some really cool problems reduce to max-flow.
I'll just say if you're looking at purchasing a gaming/multipurpose desktop, you're better off building your own IMO. I've never enjoyed gaming on a laptop (but that's just me), and you can build a monster gaming computer for < $1000 and assembly is really easy. Also, when particular parts start getting old/failing you can just swap them out instead of purchasing an entirely new system. Check out /r/buildapc, those guys live to optimize each others builds and offer a ton of help. I'm currently going through the process of gathering all the parts for a custom desktop to be ready to go before term starts and it has been a really fun process.
I currently own the 1st gen Nexus 7 and am overall very happy with it. It is my main means of digesting information such as e-mail/news and can easily be paired with a BT keyboard and stand to take notes on. I've also used it to read textbooks on and it is great for that! There are also excellent ssh programs which I use to get into the school network and my home system (once it's up and running). All that being said I don't generally use my Nexus for school work, but if I had to I don't think it would be a problem at all.
I also have an HP Mini 110 (I think) running Linux. It has a 10 inch screen and is my main 'on the go' laptop. I've used this to take notes in class as well as program in coffee shops or the library, ect. It is my first choice over the Nexus for school mostly because of the screen real estate over the nexus (all 10 inches of it :D), but that is mostly just for coding purposes.
So I guess my vote would be to go for the desktop/tablet/laptop combo, especially if you're looking at doing some gaming. Then you have power at home and something light weight to lug around with you on campus and will certainly fit any WolframAlpha/Matlab needs you might have.
Hope this helps!
The biggest difference for me from Java is the fact you have to manage your own memory as there is no garbage collector to clean up after you in C++. This book covers memory management, operator overloading, and functors quite well.
[0] http://www.amazon.com/Java-Programmers-Mark-A-Weiss/dp/01391...
When cannabis was legalized here, any previous dog which hit on cannabis could not longer be used by local and state police for drug searches due to anything found related to a dog that hit on cannabis is dismissible in court since it is no longer illegal.
It all depends on who is attempting the search.
City/County/State entities have their respective jurisdiction and all must comply with state law, and therefore some states no longer have reasonable grounds to search based purely on cannabis scent. It would be equivalent to police coming to your house and smelling alcohol on your breathe and attempting a search based purely on that.
Federal entities, such as DEA and Dept of Justice maintain federal jurisdiction and can come in and trump state law (by definition). The Dept of Justice (Eric Holder specifically I believe) recently came out saying they would not prosecute those who are obeying state law as long as they don't sell to minors and keep it away from federal buildings/schools ect.
This is the beauty of randomized analysis in the worst-cases. The worst-case occurs if and only if the random generator spits out a sorted list. If all permutations are equally likely, a list of n elements has probability 1/n! of coming out sorted = O(n^2).
Even in practice, this is very pessimisstic as it only occurs with a probability of 1/n! and is therefore extremely rare.
We can represent this insight with a series: (1+1/2+...+1/n), as the wiki article states in one of it's approaches. Using Big-O logic, we know a series of this form is a Harmonic Series, and any Harmonic Series is O(log n). This is good news as there is no upper bound and will eventually reach 1 km (...someday).
Alternatively, say the rubber-band doubled every second? The distance the ant must travel is now growing exponentially and he will never get to the other end.
van Emde Boas Trees: A tree structure which supports some heap operations (insert/extract-min) in O(lglg n) time using some nice storage and recursive tricks. I actually just wrote this up in Java and I'd be happy to throw it on Github if there is any interest. I found the chapter on these in Cormen's Introduction to Algorithms rather daunting and confusing so I'd look for other sources to get a good grasp on it.
Randomized data structures/algorithms: The use of randomization to achieve expected run-times where the worst-case is extremely pessimistic such as in randomized Quicksort to get an expected O(nlgn) bound, along with using the median of medians algorithm (another elegant recursive trick/analysis to prove an O(n) bound) for picking a pivot. Random hash tables and the proofs in number theory for building a 'universal' hash function using mod arithmetic to avoid collisions.