PyDev of the Week: Paul Ganssle | The Mouse vs The Python

PyDev of the Week: Paul Ganssle | The Mouse vs The Python

This week we welcome Paul Ganssle (@pganssle) as our PyDev of the Week. Paul is the maintainer of the dateutil package and also a maintainer of the setuptools project. You can catch up with Paul on his website or check out some of his talks. Let’s take a few moments to get to know Paul better!

Can you tell us a little about yourself (hobbies, education, etc):

One thing that sometimes surprises people is that I started out my career as a chemist. I have a bachelor’s degree in Chemistry from the University of Massachusetts, Amherst and a Ph.D. in Physical Chemistry from the University of California, Berkeley. After that, I worked for two years building NMR (nuclear magnetic resonance) devices for use in oil wells. In 2015 I was looking for a career with a bit more flexibility in terms of location and I made the switch to software development; one thing that is nice about the software industry is that tech companies are not afraid to hire people with non-traditional backgrounds if they know how to code.

Paul Ganssle

I have the typical assortment of “hacker” and “autodidact” hobbies – learning languages, picking locks, electronics projects, etc. One of my favorite projects (which has unfortunately fallen a bit by the wayside) is my HapticapMag, a haptic compass that I built into a hat. I had it up and working for 2 or 3 weeks, but some parts broke and I never got around to fixing it. My tentative plan is to start up some new electronics projects in 4-5 years when my son is old enough to be interested in that sort of thing.

Why did you start using Python?

I have two origin stories for this, actually. The more boring one is that around 2008 a friend of mine told me about this cool and increasingly popular programming language called Python that I should definitely learn, and I sort of picked it up and started using it for little system automation tasks.

What really got me into Python, though, was when I illustrated some point I was making in a forum post using a graph that I had made in Matlab and someone complained about the terrible aliasing in the plot and suggested I use matplotlib instead. I tried it out and the plots were so much better that I was instantly hooked. After that, I moved everything I could over from Matlab to Python and never looked back.

What other programming languages do you know and which is your favorite?

It’s hard to say when you “know” a programming language, but the programming languages I’m most confident with are C++, C, and Rust (and probably some others like Matlab that I haven’t used in years but once knew pretty well). I can write enough Javascript to get by, but to say I know it would be kind of like saying I speak Spanish because I can order a beer and ask where the bathroom is.

At the moment, I’m very excited about Rust, which is a memory-safe systems programming language targeting the use cases where C and C++ currently predominate. One of the very nice things about Rust is that there is a very enthusiastic community out there and it already has a flourishing ecosystem of third-party packages, which I think is one reason there’s a lot of excitement about Rust in the Python community.

Thank you for asking me to do this interview and thanks to all the readers who’ve indulged my verbosity by reading all the way to the end.

…Thanks for doing the interview, Paul!

 

The post PyDev of the Week: Paul Ganssle appeared first on The Mouse Vs. The Python.

from The Mouse Vs. The Python https://ift.tt/2TK4gVL

Advertisements

PyDev of the Week: Raphael Pierzina | The Mouse vs The Python

PyDev of the Week: Raphael Pierzina | The Mouse vs The Python

This week we welcome Raphael Pierzina (@hackebrot) as our PyDev of the Week! Raphael is a core developer of pytest, a popular testing framework for Python. You can learn more about Raphael by visiting his blog or checking out his Github profile. Let’s take a few moments to get to know Raphael!

Can you tell us a little about yourself (hobbies, education, etc)

My background is in 3D visualization and animation. After graduating from university with a Bachelor of Arts in Design, I worked as a software developer for a visual effects company for a few years and built applications for digital artists.

Fast forward to today, after having worked at a few other software companies, I’m now at Mozilla where I work on Firefox Telemetry. I manage projects to reduce Telemetry related blind-spots in our Firefox browser products and support our Software Engineers and Data Engineers in increasing the automated test coverage for the Firefox Telemetry component and our Firefox Data Platform. I wrote about my first year at Mozilla on my blog earlier this year in February, if you’d like to find out more about my work.

For fun, I like to run fast, read books, and enjoy the outdoors. 🏔

 Raphael Pierzina
Raphael Pierzina

Why did you start using Python?

Back when I worked in VFX, my team developed plugins for several 3D computer graphic applications in whatever scripting language these programs supported:

  • MaxScript in 3ds Max
  • MEL in Maya
  • TCL in Nuke
  • ZScript in ZBrush
  • C# in Unity

We often had to develop similar features for the different programs in the respective languages, which was not only tedious but also felt really unnecessary.

When I first learned about PyPI and the many awesome frameworks, libraries, and CLI apps that the Python community created and published under open-source licenses, I immediately fell in love with Python and started to look for ways to get involved and contribute back to Python projects that seemed welcoming to newcomers, like for example cookiecutter. 🍪

What other programming languages do you know and which is your favorite?

Aside from the scripting languages that I’ve mentioned earlier, I learned C++ and Java at university, but I wouldn’t say I know those as I haven’t used them in years. I’ve done a fair bit in Go for a previous job and for personal projects, but Python is definitely what I feel most proficient in. I recently started learning Rust and really like it so far.

While I don’t always enjoy coding in Python (I’ve worked on adding Python 3 support to way too many projects at this point and still support Python 2 in the majority of the projects that I maintain), Python is still my favorite programming language!

Through my involvement in several open-source Python projects, from attending and speaking at Python conferences and meetups, and interactions on Twitter, I have made a lot of friends in the Python community. If you see me at EuroPython or PyCon DE this year, please say hi!

…Thanks for doing the interview, Raphael!

 

The post PyDev of the Week: Raphael Pierzina appeared first on The Mouse Vs. The Python.

from The Mouse Vs. The Python https://ift.tt/2TsIK7R

Closing the rural broadband gap is an urgent national crisis| Microsoft on the Issues

Closing the rural broadband gap is an urgent national crisis| Microsoft on the Issues

It’s been clear to us for some time that the digital divide in this country is an urgent national crisis that must be solved. Since 2017, we’ve been working with internet service providers to do just that, through our Airband Initiative, and we’re on track to cover 3 million Americans in unserved rural areas by 2022.

It’s encouraging to see this issue rise in national prominence, through funding from the administration, congressional legislation and most recently new proposals introduced by several candidates for the Democratic presidential nomination. While there’s been some progress already, solving the broadband gap will require active engagement as well as effective policy proposals from all parts of the public sector.

It’s time to recognize that inequal access to broadband translates into inequality of opportunity. People in rural areas that lack broadband face higher unemployment rates, see fewer job and economic opportunities and place children from these communities behind their suburban and peers in school. Of course, this is not just a rural issue – broadband deserts exist within very urban areas as well, where costs can be unaffordable and availability non-existent...<snip>

The post Closing the rural broadband gap is an urgent national crisis appeared first on Microsoft on the Issues.

from Microsoft on the Issues https://ift.tt/2YV0cD4
via IFTTT

PyDev of the Week: Eric Matthes | The Mouse vs The Python

PyDev of the Week: Eric Matthes | The Mouse vs The Python

This week we welcome Eric Matthes (@ehmatthes) as our PyDev of the Week! Eric is the author of the popular book, Python Crash Course. He also created a neat set of Python Flash Cards that I reviewed earlier this year. You can catch up with Eric on his website or check out some of his work on Github.

 

Let’s take a few moments to get to know Eric better!

Can you tell us a little about yourself (hobbies, education, etc):

Sure! I grew up in southern New Hampshire, on the outskirts of Boston in the early 1980s. My father was a software engineer at DEC around that time, and I first learned to program on a kit computer in our basement back then. I am so grateful to my father for sharing the technology he had at home, instead of telling me to keep away from it all. It has been amazing to watch computers evolve from the early days of almost no one having a home computer to almost everyone having multiple computers in their lives.

I loved math and science in high school, and I went into undergrad as a chemical engineering major because I loved AP Chemistry. But I soon found that engineering was really about learning to solve other people’s problems. I enjoyed my physics classes though because they were all about understanding the universe, from the very large to the very small. For a while, I naively worried that if I stayed with physics long enough I’d start to find the world less interesting as I understood it on a deeper level. It was a joy to discover that the opposite was true: the more I learned, the more fascinating everything around me became.

I continued to learn new programming languages throughout my educational experiences. I took a variety of programming classes, and always had a few projects going for fun. I wrote a 3d graphing program in C during spring break one year in college.

I wanted to be a particle physicist, but I didn’t want to be a student forever. I decided to try teaching for a couple years and quickly found that the intellectual challenge of trying to reach every student in my classes was just as satisfying as doing hard science. I loved teaching and decided to stay with it.

In 2011 my son was born, and a month later my father died. It was a really hard time, but it was also a formative experience for me. My mother asked me to look through my father’s computer and let her know if there was anything worth saving. It was a really intimate experience, looking through all the projects he was working on, and reading through his notes. I used to visit him in his office whenever I went home, and as long as his computer was open and running that day I still felt directly connected to him. It was sad to realize these projects would never be finished, and would never be used by anyone. In the weeks that followed, I realized that if I died you’d find a bunch of half-finished projects on my computer as well. I made a commitment to start using the skills I’d learned to build something meaningful.

I wanted to build tools that would bring greater equity to public education. I gave a talk at PyCon 2013 about how much the educational world could gain from the open-source model, and Bill Pollock of No Starch Press approached me afterwards. “I hope you build what you described, and if you ever want to write a technical book let me know.” I went back to my classroom and saw a poster hanging on my wall: “What’s the least you need to know about programming in order to start building meaningful projects?” It was a list I had made for my students of the smallest set of things they needed to know in order to be able to build the things they cared about like games, data visualizations, and simple web apps. I realized that was the book I wanted to write, and the question on that poster became the guiding question for Python Crash Course. I hadn’t intended to write a book, but I realized that in five years of trying to teach programming to high school students, all the resources I found were either aimed at young kids or assumed more technical knowledge and experience than my students had. I decided to write a book for anyone old enough to not want a kids book. It has been immensely satisfying to see that Python Crash Course works for almost everyone in that anticipated audience: young kids motivated enough to want a more serious book, high school students, undergrads in all majors, grad students, working adults, and retired people who are curious to learn programming at an older age. I was surprised to find it even works well for people who are already fluent in another language and want to pick up Python quickly.

I don’t just do technical work. After growing up in New Hampshire, I moved to New York City for seven years in the 1990s-early 2000s. I bicycled across the US a couple times during the summer and then lived on a bicycle for over a year at one point. I rode from Seattle to Maine, down to Florida, over to California, and up to Alaska. That was a life-changing experience, and I moved to southeast Alaska for good in 2002. I love living in a sizeable but isolated town right on the edge of true wilderness. When I go trail running, there’s a very real chance I’ll see a brown bear. Server crashes are a lot easier to keep in perspective when I’ve had close encounters with bears in the woods. I love steep mountains, and I’ve been an active member of a technical rescue team since I moved here. I also love living a partial subsistence lifestyle. Every year we catch our own king salmon, sockeye, coho, halibut, crab, and deer. It’s wonderful living in a community where almost everyone goes out to fish, hunt, and gather a good deal of their own food.

Why did you start using Python?

My language of choice in the mid-2000s was Java. I had used C for a while and liked the higher-level libraries that Java offered. Then a friend said, “Hey you should check out Python. Your programs will be about a third as long as they are in Java.” Like many people new to Python at the time, I was pretty skeptical of the use of whitespace instead of braces, and I was surprised I didn’t need to declare variables. But these ideas were more intriguing than off-putting. I was working on a project to make artistic representations of random walks, and I had built a desktop application for generating and styling random walks. I rewrote the application in Python, and it really was about a third as long as my Java program. I was floored, and I’ve been using Python for almost every project since then.

When asked why they use Python, people famously say, “I came for the language and stayed for the community.” That answer certainly speaks for me. After my father died and I decided to take my programming work more seriously, I looked for a technical conference to attend. I am so grateful that I stumbled upon PyCon. I first went in 2012, which happened to coincide with some of the early diversity and Code of Conduct initiatives. I watched as the community set clear diversity goals, made specific plans to achieve those goals, and followed through on those plans. When I go to PyCon now, I see a fully diverse crowd, and the variety of topics that are presented is just awesome. The Python community is answering the question, “If we make programming accessible to everyone, what will people build?” It’s critical that we give people from all walks the power that programming offers, and let people build projects that serve their own needs, and the needs of their communities.

What other programming languages do you know and which is your favorite?

I started with Basic in the 1970s and early 1980s. I never got too deep into any language until Java and Python in the mid-2000s, but along the way, I gained some understanding of Logo, C, Pascal, Fortran, HTML, CSS, JavaScript, and SQL.

I use Python almost every day now. In the next year or so I really want to solidify my understanding of SQL, and I’d like to explore a functional language like Lisp or Haskell. I’d also like to play around with a variety of languages I’ve heard about but never used such as Rust and Go. I don’t ever want to get stuck with Python because it’s what I know; if something better comes along, I want to evolve with the industry.

 

…Thanks for doing the interview, Eric!

 

The post PyDev of the Week: Eric Matthes appeared first on The Mouse Vs. The Python.from The Mouse Vs. The Python https://ift.tt/31hrK7m

Why Surface Go is better for students than iPad (and why it may not be) a certified Warditorial

Microsoft’s 10-inch Surface Go and Apple’s 7.9- and 9.7-inch iPads have students in their crosshairs. Each “mini” device has its advantages. Here’s what you need to know.

Microsoft and Apple bring unique hardware and software strengths to personal computing. Microsoft’s enterprise partnerships, pervasive software presence, and decades-long PC dominance make it synonymous with productivity and personal computing. Apple’s high-end devices, hardware, and software synergy and invaluable “cool factor” make it an industry powerhouse, the standard by which rivals are measured and a consumer and media darling.

In the PC space, Microsoft has crushed Apple’s consumer and business efforts for decades. Conversely, Apple’s iPhone-led charge ultimately resulted in the death of Microsoft’s phone strategy. And the iPad, which dominates the tablet PC market, overshadows Microsoft’s successful Surface 2-in-1, though the two devices exist in distinct product categories.

from Windows Central – News, Forums, Reviews, Help for Windows 10 and all things Microsoft. https://ift.tt/2B8Tva6 via IFTTT

PyDev of the Week: Ines Montani | The Mouse vs The Python

PyDev of the Week: Ines Montani | The Mouse vs The Python

This week we welcome Ines Montani (@_inesmontani) as our PyDev of the Week! Ines is the Founder of Explosion AI and a core developer of the spaCy package, which is a Python package for Natural Language Processing. If you would like to know more about Ines, you can check out her website or her Github profile. Let’s take a few moments to get to know her better!

Can you tell us a little about yourself (hobbies, education, etc):

Hi, I’m Ines! I pretty much grew up on the internet and started making websites when I was 11. I remember sitting in school and counting the hours until I could go back home and keep working on my websites. I still get that feeling sometimes when I’m working on something particularly exciting.

I wasn’t quite sure what to do with my life, so I ended up doing a combined degree of media science and linguistics and went on to work in the media industry for a few years, leading marketing and sales. But I always kept programming and building things on the side.

In 2016, I started Explosion, together with my co-founder Matt. We specialise in developer tools for Machine Learning, specifically Natural Language Processing – so basically, working with and extracting information from large volumes of text. Our open-source library spaCy is a popular package for building industrial-strength, production-ready NLP pipelines. We also develop Prodigy, an annotation tool for creating training data for machine learning models.

I’m based in Berlin, Germany, and if I’m not programming, I enjoy bouldering 🧗‍♀️, eating good food 🥘 and spending time with my pet rats 🐀.

Why did you start using Python?

It really just kinda… happened. I never sat down and said, hey, I want to learn Python. I’m actually pretty bad at just sitting down and learning things. I always need a project or a higher-level goal. When I started getting into Natural Language Processing, many of the tools I wanted to use and work on were written in Python. So I ended up learning Python along the way. It also appealed to me as a language, because it’s just very accessible and straightforward, and I like the syntax.

What other programming languages do you know and which is your favorite?

These days, I mostly work in Python and Cython. I’m also fluent in JavaScript, have recently started working more with TypeScript, and did a bit of PHP and Perl back in the day.

I don’t want to get hung up on the definition of a “programming language”, but in terms of *writing code*, I also really love building things for the web. CSS is quite elegant once you get to know it, and it’s actually one of my favourite things to write.

<SNIP>

Thanks for doing the interview, Ines!

 

The post PyDev of the Week: Ines Montani appeared first on The Mouse Vs. The Python. from The Mouse Vs. The Python https://ift.tt/2SSkb48

Global Internet Forum to Counter Terrorism: An update on our progress two years on| Microsoft on the Issues

Global Internet Forum to Counter Terrorism: An update on our progress two years on| Microsoft on the Issues

The following announcement was jointly written by Facebook, YouTube, Twitter, and Microsoft and posted to our respective online properties.

In summer 2017, Facebook, YouTube, Microsoft, and Twitter came together to form the Global Internet Forum to Counter Terrorism (GIFCT).

The objective of the GIFCT has always been to substantially disrupt terrorists’ ability to promote terrorism, disseminate violent extremist propaganda, and exploit or glorify real-world acts of violence on our services. We do this by joining forces with counterterrorism experts in government, civil society and the wider industry around the world. Our work centers around three, interrelated strategies:

  • Joint tech innovation
  • Knowledge sharing
  • Conducting and funding research

Today, building on the commitments we made as part of the Christchurch Call to Action, we are adding a fourth pillar to our work that will focus on crisis response. Specifically, we are introducing joint content incident protocols for responding to emerging or active events like the horrific terrorist attack in Christchurch, so that relevant information can be quickly and efficiently shared, processed and acted upon by all member companies. We are also releasing our first GIFCT Transparency Report and a new counterspeech campaign toolkit that will help activists and civil society organizations challenge the voices of extremism online.

And as we head into our third year as GIFCT, we are pleased to welcome Pinterest and Dropbox as members. We will continue to add new members, particularly smaller companies that could benefit from the collective experience of GIFCT members.

More than 200,000 unique hashes now in our joint database

When terrorists misuse the internet, they often upload the same piece of content to multiple platforms to maximize their reach. To disrupt this behavior, we jointly developed a shared industry database of “hashes” — or digital fingerprints — that allows us to safely share known terrorist images and video propaganda with partner companies. This enables us to more quickly identify and take action against potential terrorist content on our respective platforms…

First GIFCT Transparency Report

We have heard loud and clear from government and civil society that we need to be more transparent about what we are working on as an industry. As a result, today we are releasing our first-ever GIFCT Transparency Report. The report goes into detail about the GIFCT’s primary work streams, providing greater insight into how the Hash Sharing Consortium has defined terrorist content, and the volume and types of content included in the database. The full transparency report, which is available here, will complement the transparency reports put out by individual GIFCT member companies.

A toolkit to counter violent extremism

When we committed to the Christchurch Call to Action and issued a nine-point plan outlining concrete steps we plan to take as an industry, we said, “We come together, resolute in our commitment to ensure we are doing all we can to fight the hatred and extremism that lead to terrorist violence.” Never has that commitment been more important. As industry partners, we continue to prioritize and deepen engagement with governments, civil society, and smaller tech companies around the world…

Enabling and empowering companies to respond to crises like Christchurch

Perhaps most importantly, today we are adding a fourth pillar to the GIFCT’s core mission: enabling and empowering companies to respond to crises like Christchurch. The horrific terrorist attack highlighted the importance of close communication between members, and between government and the wider industry, which is why we are introducing joint content incident protocols to enable and empower companies to more quickly and effectively respond to emerging and active events…

We are grateful for the support of and collaboration with governments, international organizations, and NGOs around the world, including the EU Internet Forum and the UN Counter-Terrorism Executive Directorate. We look forward to sharing more updates in the coming months.

The post: Global Internet Forum to Counter Terrorism: An update on our progress two years on appeared first on Microsoft on the Issues.

from Microsoft on the Issues https://ift.tt/2JQrGpc via IFTTT