Live data from Hacker News

Excel team considering Python as scripting language: asking for feedback

news.ycombinator.com

141–150 of 280 posts

Re: Excel team considering Python as scripting language: asking for feedback

#141

Earlier quoted context omitted.

People will tell you that instagram uses python or yelp or other big name projects use python. Certainly, type checking is not Essential to a large project the same way utensils are not essential when you eat. You can just use your hands to shove all the food into your mouth.

As an Indian, I'm not sure what I'm supposed to make of your analogy...

Perhaps you can infer that someone who thinks eating with their hands is uncivilized will have equally ignorant opinions about computing.

Re: Excel team considering Python as scripting language: asking for feedback

#142
post #12

An absolute no-brainer. Python is the new BASIC - very popular with people who have to program to do their work but aren't programmers. It's an excellent choice for a spreadsheet.

>aren't programmers Also extremely popular with people who are programmers and need to do things. Sorry, this is a frustration of mine lately. Python is a fantastic introductory language. It's also a fantastic general purpose language. Newbies get turned off of it because it feels too easy, and they know that "real" programming is supposed to be hard.

Python is extremely permissive and flexible, even for a dynamic language - a trait that makes it easy to learn and easy to throw something together quickly. But when building software at scale, we need restrictions. For example: static types, immutability, pure functions, total functions, algebraic laws. It is restrictions such as these that give us the power to reason about code and the ability to compose it at scale. Beginner's do not understand how one can gain power from restriction. Skilled programmers do and most would not recommend Python for large-scale general purpose programming.

Re: Excel team considering Python as scripting language: asking for feedback

#143
post #28

Earlier quoted context omitted.

Instagram would disagree with you. Seriously, Python is an absolute pleasure for managing large web projects and the lack of static typing has never been an issue for my company (spend the time writing tests instead!)

>(spend the time writing tests instead!) Every sufficiently large test suite will contain an ad-hoc, informally-specified, bug-ridden, slow implementation of half of a proper type system.

Every sufficiently large statically-typed application will contain an ad-hoc, informally-specified, bug-ridden, verbose implementation of half of a decent dynamic language.

(I too enjoy a good pseudo-Greenspun)

More seriously something I've been pondering a lot recently watching the old pendulum swing back towards an enthusiasm for explicit typing is this:

* The advantages of static type systems are obvious and easy to articulate. * The disadvantages of static type systems are subtle and difficult to argue.

I started my career as a professional programmer when the pendulum was moving in the other direction. Essays by Paul Graham on Lisp and Python. The marvellous PJ Eby piece quoted above and Peter Norvig's "Design Patterns are artifacts of language flaws".

I just feel dynamic languages fit my brain better but maybe that's my own form of Stockholm Syndrome. Maybe I need to try a decent type system rather than the brain-damaged descendents of Java...

Re: Excel team considering Python as scripting language: asking for feedback

#144

Earlier quoted context omitted.

People will tell you that instagram uses python or yelp or other big name projects use python. Certainly, type checking is not Essential to a large project the same way utensils are not essential when you eat. You can just use your hands to shove all the food into your mouth.

As an Indian, I'm not sure what I'm supposed to make of your analogy...

Wait, was the underlying message not supposed to be "everyone should conform to my world view"?

Re: Excel team considering Python as scripting language: asking for feedback

#147

Earlier quoted context omitted.

> @ msft Well, I guess that explains why you care about Office in 2017.

That and the fact that the vast majority of companies use Office...

Which is also why it is surprising that Microsoft has spent so little time on office in 20 years. Outside of changing the colors regularly, there has been very few new significant functionalities between Office 2003 and Office 2016. And opening the VBA IDE is a nasty reminder.

I'd argue large companies are still running Windows because of Office. The cost of retraining people, redesigning all of these user processes and converting all those documents would be massive. Whereas most new corporate applications in the last 5 years have been mostly web based.

So I am surprised Microsoft under-invest in what is they main strategic lock-in in the juicy enterprise market.

Re: Excel team considering Python as scripting language: asking for feedback

#148

Earlier quoted context omitted.

>"Python is great for scripting and for small projects but ..." You mean like Dropbox, Evernote, Ansible, OpenStack etc.

Or Google...

You would actually be hard pressed to find ANY major codebase that isn't using at least one dynamically typed language in at least some significant capacity.

Re: Excel team considering Python as scripting language: asking for feedback

#149
post #79

Earlier quoted context omitted.

That's one thing I don't understand. The argument I hear against static typing is that it's too much work to write all this type metadata. But if you have to make up the lack of compiler checks with lots of tests for things that wouldn't require tests in a static language, we are not saving any work.

That's because you're not testing things that wouldn't require tests in a static language. You're testing things that need testing either way, and incidentally also testing the types.

No, you're testing types and verifying the implementation details of the language. It's rare that a test for logic "incidentally" tests the type system. Usually both the logic and type checks are tested. It's just obfuscated because the bulk of the test is for checking the types and it's easy to look past that.
Post reply on HN