Many have commented here on the computational challenges of enumerating, storing, and searching very large virtual libraries. While molecules can be represented and stored as strings, that's an oversimplification of the problem (from a CS perspective). Scientists often want to search these large libraries in 2D and 3D, which requires computing & storing those coordinates. It can be cost prohibitive just to store the 3D coordinates for massive virtual libraries, even for large pharmaceutical companies. We've done this for 10^10 molecules [0]. If you are reading this and find this type of problem interesting, checkout www.eyesopen.com/careers
OpenEye Scientific Software provides software to the Pharmaceutical Industry for molecular modeling and cheminformatics. It has done so since 1997 in its continuing mission to provide novel software, new science and better business practices to the industry. Central to our approach is the importance of shape and electrostatics as primary variables of molecular description, platform-independent code for high-throughput 2D and 3D modeling, and a preference for the rigorous rather than the ad hoc.
We have three open positions in Santa Fe, NM. Some of the technologies we use are Python, Go, C++, Django, Docker, and AWS. We are growing our small team and looking for talented backend engineers and DevOps engineers.
Santa Fe is a beautiful mountain town with excellent outdoor recreation (hiking, skiing, cycling) as well as art, music & food culture.
First of all, I'm not defending what is obviously predatory. However, there is more involved then what you might think at first glance. Right or wrong, correctional facilities have reasons to discourage phone calls (context: I put myself through college working at a maximum security prison). Calls are supposed to be monitored (usually done manually) to prevent criminal business from being done on prison phones - and there are never enough people to listen to all calls. There are never enough phones either, which frequently causes tension between inmates using phones and those waiting for them. In higher security levels phones are labor intensive. An officer has to escort a (potentially dangerous) person from their cell to the phone, and stand there for the duration of the call. And to the article's point, it's such a problem that prepaid phone cards are a form of currency on the inside.
It's interesting that Netflix decided to write this rather than using Amazon's own DynamoDB. I wonder specifically if DynamoDB was too expensive (as I have found), or was there some other reason?
Author of the paper here. The file operations are distributed strictly without links, otherwise we could make no guarantees that work wouldn't be duplicated, or even that the algorithm would terminate. We were lucky in that because the parallel file system itself wasn't POSIX, so we didn't have to make our tools POSIX either.
What I meant is that getting the toolbar to show up when you aren't serving from localhost isn't as trivial as setting DEBUG=True. It requires other settings (https://github.com/django-debug-toolbar/django-debug-toolbar...) which can be annoying to configure.
I end up using Django Rest Framework (http://www.django-rest-framework.org/) generated UIs along with the debug toolbar, and then disabling the generated UIs when I'm done profiling.
For those interested, here are a couple of differences between this and django-debug-toolbar (an excellent, widely used utility that also provides SQL inspection).
1. django-debug-toolbar can be difficult to enable if you aren't serving from localhost (for security reasons, because your settings are included in the UI). This project looks much simpler to enable, as you just set DEBUG=True in your settings.
2. django-debug-toolbar provides its information through a UI component embedded in your own UIs, but it doesn't help you with profiling HTTP APIs that don't have a UI. In contrast, this project puts some profiling information in the response headers, and SQL logs are sent to a logger. I think this use case is where Django Query Inspector shows a lot of utility.
I'm trying to understand this too. This is only a problem if the OAuth provider (Google, Twitter, etc) does not validate the URL that the client is trying to redirect the user to after the user has authorized the app, correct?
If you did a line for line transliteration, did you use any of Go's concurrency features such goroutines or channels? I ask because I find that when I translate a program from Python to Go that it's beneficial to structure the program differently so that I can use goroutines.
Front end web developer, OpenEye Scientific Software - Santa Fe, NM
Email [email protected] for details. About OpenEye Scientific Software, Inc: OpenEye Scientific Software provides software to the pharmaceuticals industry for molecular modeling and cheminformatics. It has done so since 1997 in its continuing mission to provide novel software, new science and better business practices to the industry. Central to our approach is the importance of shape and electrostatics as primary variables of molecular description, platform-independent code for high-throughput 2D and 3D modeling, and a preference for the rigorous rather than the ad hoc. With offices in the United States, Germany & Japan, OpenEye Scientific Software is a global company. However, with fewer than 50 employees we offer a unique working culture. We believe that work should be fun and our working environment supports this philosophy. For the third year we have been a recipient of the Alfred P. Sloan Award for Business Excellence in Workplace Flexibility.
FRONT END WEB DEVELOPER
Location: Santa Fe, New Mexico Employee type: Full-time Industry: Computer Science, Biotechnology Manages others: No Job Type: Information Technology Education: BSc degree Experience: 3 or more years Travel: Occasional Post date: January 2014 Relocation covered: Yes Contact information Send cover letter and resume to: OpenEye Scientific Software Recruiting 9 Bisbee Court, Suite D Santa Fe, NM, 87508 Contact information Send cover letter and resume to: OpenEye Scientific Software Recruiting 9 Bisbee Court, Suite D Santa Fe, NM, 87508 or email to [email protected]. Job Description: The ideal candidate for this position is someone who can design and implement interactive web interfaces. The candidate should understand user interface design, and be familiar with state of the art web application technologies. Although the position is primarily for interfaces, the candidate should have an understanding of how interactive web applications work. You will be working in a small focused team that is envisaging how we build applications for deployment on Amazon Web Services and delivery via the web browser. You are not expected to be a seasoned chemist, but expect to pick some chemistry up along the way. Requirements: * BSc degree in computer science, or a similar area. * Minimum 3 years of experience in a similar position. * Proven track record of deploying interactive web interfaces using HTML5 & CSS3. * Requires experience as follows: * Use of CSS, optionally using SASS or Compass. * Use of Bootstrap or similar frameworks. * Use of JavaScript and Ajax via CoffeeScript. * Use of jQuery, Dojo, AngularJS, Closure, Ember or similar JavaScript libraries. * Use of real time technologies such as WebSockets and other HTML5 advancements. * Use of testing frameworks associated with these technologies. For example Selenium, Jasmine, PhantomJS or similar. * Use of mockup software such as Balsamiq, Moqups or similar. * Software development using Windows, Linux, and Unix operating systems and common browsers they support (with an appreciation of there numerous idiosyncrasies). Desired experience as follows: * Use of Python. * Use of Python web frameworks such as Django, Flask and Tornado. * Appreciation of Amazon Web Services.
OpenEye Scientific Software is an Equal Opportunity Employer
How can this be? Perhaps, their sample is biased? It would really be sad if 25% of Americans really have this misconception - not to mention the similarly high percentages for other countries.
Java has many great features, but I find it to be too tedious for me to experiment. For example: want to read a file into a string? The Python version is open(name).read(), and I've never seen a Java equivalent be that concise.
[0] https://pubs.acs.org/doi/10.1021/acs.jcim.9b00779 "Virtual Screening in the Cloud: How Big Is Big Enough?"