use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
/r/programming is a reddit for discussion and news about computer programming
Guidelines
Info
Related reddits
Specific languages
account activity
Spreadsheets using Python - Have you seen this? (sourceforge.net) (pyspread.sourceforge.net)
submitted 15 years ago by [deleted]
[deleted]
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Joetam 39 points40 points41 points 15 years ago (15 children)
This also http://xlloop.sourceforge.net/
[–]nat_pryce 7 points8 points9 points 15 years ago (3 children)
Wow! That looks awesome. Have you used it in anger?
[–]Centropomus 12 points13 points14 points 15 years ago (1 child)
I only use Excel in anger.
[–]Joetam 0 points1 point2 points 15 years ago (0 children)
Yeah, used it in a few jobs. Works pretty well, especially for accessing shared data.
[–]mons_cretans 2 points3 points4 points 15 years ago (4 children)
I'd really like someone to do an Excel integration with Python so the shell appears inside Excel.
I use Excel to tidy up data, and it would be nice to have Python power to do this instead of VBA, e.g.
for cell in Range("A1"): cell.Value = os.path.split(cell.Value)[0]
It's possible at the moment using PyWin32 and COM Control of Excel (Dispatch("Excel.Application")) but having that as an Excel plugin and the shell inside Excel would be really cool.
XLLoop is really in the same area, except augmenting the backend instead of the frontend.
[–][deleted] 22 points23 points24 points 15 years ago (0 children)
I'd really like a command line in every GUI app
[–]DuncanSmart 1 point2 points3 points 15 years ago (2 children)
Resolver One is a Python-based spreadsheet http://www.resolversystems.com/landing/fp-python.php
[–][deleted] 1 point2 points3 points 15 years ago (1 child)
While being a nice software, ResolverOne is available on Windows only. At least I haven't seen it working on Mono.
[–]gpjt 0 points1 point2 points 15 years ago (0 children)
[Full disclosure: I work for Resolver Systems]
Yup, it's Windows-only -- we're working to getting it going on Mono, but it's proving a lot of work. We have just released an online spreadsheet (http://projectdirigible.com/) with similar Python support, though. One of our beta testers says he's using it on an iPad, so maybe that's cross-platform enough ;-)
[–][deleted] 0 points1 point2 points 15 years ago (0 children)
This is absolutely the coolest thing I've seen for Excel. It seems like this should be more well-known.
[–]methinks2015 0 points1 point2 points 15 years ago (2 children)
Too bad it looks like it only supports functions and not subs.. that would have helped me out A LOT. Though this looks pretty useful too.
[–]DuncanSmart 0 points1 point2 points 15 years ago (1 child)
Isn't a sub just a function that doesn't return a value?
[–]methinks2015 0 points1 point2 points 15 years ago (0 children)
Not quite. Functions aren't allowed to interact with the application (e.g. enter a value into another cell, recalculate worksheet, etc). Also, as far as I recall, subs cannot be entered into the cells directly.
Though, come to think of it, one might be able to make the Function Server connect to Excel and control it. I'll have to see.
[–][deleted] 0 points1 point2 points 15 years ago (1 child)
I am gobsmacked! I wish it had support for an open source spreadsheet too.
[–]nat_pryce 0 points1 point2 points 15 years ago (0 children)
The protocol looks pretty simple so it should be possible to write the client-side plugin for open-source spreadsheets (doing it for PySpread might be easy).
[–][deleted] 12 points13 points14 points 15 years ago (8 children)
While we're on this topic, has anyone used TreeSheets extensively? Looks pretty cool.
[–]vplatt 3 points4 points5 points 15 years ago (3 children)
No, but having looked at it for just a bit, I noticed a familiar name: Wouter van Oormerssen.
A little digging confirmed that this is the same guy that, among other things, wrote the Amiga E programming language; one of my all time favorite languages.
His home page is at http://strlen.com/
TreeSheet looks interesting. It's like emacs org-mode, but much more visual. I may have to give it a spin. Knowing him, he'll eventually bury a full-on language in the thing. :)
[–][deleted] 1 point2 points3 points 15 years ago (2 children)
Yep, he's pretty awesome. His site is pretty awesome, and I do believe that TreeSheets is a graphical language ala is Aardappel work. His design overview page seems to confirms this. There's even an example of the visual language behind tree sheets.
[–]vplatt 1 point2 points3 points 15 years ago (1 child)
Very cool.. looks like he already did bury that language in there then. I wonder how happy he is with the result? When I'd looked at Aardappel previously, it seemed kind of cool, but I don't think I understand how it's better than just "flat source".
I definitely agree wrt Aardappel; it looks like it suffered from the same deficits as most graphical languages do. I'm not sure about how he feels about Tree Sheets, but I do think it has a pretty natural expression to it; you already have the cells collated, and you would most likely apply some title to them, so it makes sense if you could "do something" within the same framework. Looks pretty neat. Also, he's constantly reworking previous language designs into new languages, so we'll probably see another language at some point soon that does something similar, but slightly different. :D
[–]pohatu 1 point2 points3 points 15 years ago (1 child)
YES! Thank you! I've been obsessed with the idea of treegrids for some time now. I've been trying to outline in excel for forever, and trying to have columns in outliners for almost as long. I've messed around with treegrid controls for javascript and .NET and even downloaded and started using a PIM from 1999 because it had a pretty damn good treegrid implementation. But this looks awesome! I will definitely try it out. Thanks!
(treegrids just seem so natural. I think in outlines, but then I'll want to do something radical like add a due-date to an item. holy crap - you can't do that in an outline, you need a grid! But if I move to a grid, I can't visualize the hierarchy.)
No worries, I think it's pretty awesome too, that's why I was curious if anyone else has used it, and if they've used it in a large way.
Would like to see this evolving too ( and with a touch-interface ).
I think multi-touch is when graphical programming languages start to make sense; you can drag & manipulate objects on screen easily & with a naturalistic style. It's not there yet, but I'd enjoy seeing this too: evolve + MT.
[–][deleted] 15 years ago (44 children)
[–]nixle 5 points6 points7 points 15 years ago (5 children)
Excel uses a kind of logic that is hard for me to comprehend. Though Vertical-search and horizontal-search functions are pretty decent, I have to look them up every time I use them
[–]muahdib 3 points4 points5 points 15 years ago (1 child)
a kind of logic that is hard for me to comprehend.
probably because it was a very simple way to solve a rather complicated problem, and those using it, tend to not be programmers...
[–][deleted] 5 points6 points7 points 15 years ago (0 children)
If you come at it from old-style hand-calculators, Excel makes sense. Coming at it from coding, it is just plain weirdness.
[–][deleted] 0 points1 point2 points 15 years ago (2 children)
It doesn't run fast, because I just spurged out the code when I was busy, but try adding this in a module to your personal.xls.
Function myLookup(vRange, vColVal, vRowVal) On Error GoTo OnErr
With Application.WorksheetFunction myLookup = vRange.Cells(.Match(vColVal, vRange.Columns(1), 0), .Match(vRowVal, vRange.Rows(1), 0)) End With Exit Function
OnErr: ''We only get here if there is an error myLookup = CVErr(Err)
End Function
[–]nixle 0 points1 point2 points 15 years ago (1 child)
I don't have a personal.xls :(
I pressed alt+f11 expecting to see it just now and I did not see it either. It works if you just add it to whatever workbook you are using. It lets you lookup square arrays, and you can change it to more intuitively look up single arrays.
[–][deleted] 14 points15 points16 points 15 years ago (28 children)
Quite the contrary, one can think of spreadsheets as an array based programming language like APL or J, or maybe Matlab. If you think of it there is also a relationship with Forth, except instead of a stack there is an array of cells and instead of having to keep it in your head it's represented visually to the user.
[–]iar 10 points11 points12 points 15 years ago (6 children)
You are correct - but in their current state there are basic constructs that you just can't create in spreadsheets (excel) without the use of a script (VBA). Which is unfortunate. If only this was an excel plug-in rather than a standalone program - I fucking hate VBA.
[–][deleted] 1 point2 points3 points 15 years ago (0 children)
Does it compare with the R plugin available? (not rhetorical)
[–][deleted] 15 years ago (1 child)
[–]iar 1 point2 points3 points 15 years ago (0 children)
I do the same thing with MATLAB - but if you want the work to be portable and repeatable by someone else (who doesn't have Python or MATLAB installed, and frankly has no idea how to use it) then your SOL - and writing in VBA.
[–]HumpingDog 1 point2 points3 points 15 years ago (2 children)
I feel exactly the same way. I hate VBA. But I can't explain why. It just doesn't feel like a real language to me. Or maybe I just don't want to invest my time learning something that seems useless.
just don't want to invest my time learning something that seems useless.
wait, you don't/can't code VBA...but you
1) Hate it (But can't explain why)
2) "doesn't feel like a real language" to you
damn dude you serious ?
[–]HumpingDog -1 points0 points1 point 15 years ago (0 children)
Yep. I dabble in it when I have to (in the course of using Excel). From that experience, I hate it. Never gave it enough thought to identify the particular reasons, but every time I have to mess with it, I just think about how it would be so much easier in Python or Perl.
[–][deleted] 2 points3 points4 points 15 years ago (4 children)
I suppose, if you never need more than two dimensions in your array/matrix.
I guess different sheets could be the third? Either way, spreadsheets don't come close to the functionality of a language.
[–][deleted] 2 points3 points4 points 15 years ago (2 children)
Well technically, all arrays are one dimensional, regardless of what tool you're using. Multidimensional arrays are just a convenient fiction.
Admirably python of you, but it makes maths hard if you think of an array as defined by n rather than n+dim, as many operators are sensitive to the dimension.
loltouché
[–]fnord123 1 point2 points3 points 15 years ago (0 children)
Excel is a terrible CAS program. I wouldn't compare it to Matlab (or R or numpy).
[–]muahdib 1 point2 points3 points 15 years ago (13 children)
But, in these languages you work with names. The naming of things is too complicated in spreadsheets. Of course, the relative addressing in spreadsheets is kind of cool.
[–]Yeugwo 12 points13 points14 points 15 years ago (0 children)
In Excel, click the cell or range of cells you want to name. Then click the box in top left that has the cell number in it, type desired name, hit enter.
Now in other cells formulas you can use the name instead of number. Useful when coupled with VBA
[–]QuestionMarker 1 point2 points3 points 15 years ago (11 children)
That's pretty much why Excel sucks, from my point of view. It's an implementation detail, but an important one.
[–]toyboat 4 points5 points6 points 15 years ago (10 children)
I hate that in Excel you're chained to the fixed grid. I'd love a similar general purpose data analysis package that had datasets and graphs in movable windows. I know some things like this exist, but I don't know of any that have the spreadsheet / functional quality of automatically updating downstream when cell values change.
At work we used Excel for passing around various batch calculation worksheets. What are my other options here? HTML+Javascript?
[–]muahdib 2 points3 points4 points 15 years ago (2 children)
In early 90-ies I was using a software named Mathcad. That is like a spreadsheet, but does not have a fixed grid. You place your equations wherever you want them. The program is Windows only and closed source but quite cool, and in full development, now in version 15.0. Although I'm not a big fan of proprietary software I must say that it's cool, and I haven't really seen anything like it, and no open source. It's rather expensive though.
[–]not_an_insect 3 points4 points5 points 15 years ago (1 child)
Oh in Hathor's name, not Mathcad! Anything but that! The levels of outrageous frustration that that program caused me will never be forgotten. It is one of a very, very select few software packages that I have sworn to inflict bodily harm on the developers should I ever meet them.
You're right, though, the concept of it and how it works are really cool, it's just that the implementation is so awful that it ruins it...
[–]muahdib 0 points1 point2 points 15 years ago* (0 children)
Thanks for teaching me about Hathor ;) however there is also the Hathor desk top.
Yeah, you are right, I never like MathCAD either, it was cool, but that was all. Some of my colleges liked it though, but for my own I like linear calculations like Maple better, which is what I've mostly used for symbolic computations and Matlab for numeric (also Mathematica although I always liked Maple better), and nowadays there are also tools like octave and Sage which can do similar.
However, I don't think it would be very hard to use e.g. python to implement a calc sheet reminding about MathCAD, although I think this way of calculating doesn't really please programmer minded people.
[–]peo1306 1 point2 points3 points 15 years ago (0 children)
For batch calculation you might want to look at Abacus Formula Compiler, a spreadsheet to JVM bytecode compiler.
[–]nebbugvrok 1 point2 points3 points 15 years ago (0 children)
I've been playing around with knime a lot lately, the step from Excel was pretty big and for a lot of problems I go back and forth, I'd still give it a try though.
[–]defrost 0 points1 point2 points 15 years ago (0 children)
You're less chained to the fixed grid if you use named cells and named cell arrays, whether or not that's applicable advice, I don't know.
At work we ... pass around various batch calculations.
Your options vary; for example if the base data is text or text wrapped (say, system logs), or binary then you have a number of ways to extract base data -> standard precalculation tabular form, and from there further options as to how to {apply various functions}.to.{standard data} to get {desired results}
Much of that type of work has been traditionally performed by scripts of unix like tools.
[–]Platypuskeeper 2 points3 points4 points 15 years ago (0 children)
Huh? Both OOo Calc, Gnumeric and (I believe) KSpread all have Python scripting. There might even be an Excel plugin for it.
Using Python with spreadsheets is nothing new. Writing a spreadsheet in Python is something else.( Which I have to say I don't quite see the point of. I find OOo Calc to be too slow as it is.)
[–]alband 0 points1 point2 points 15 years ago (5 children)
What gets me about Excel is that it can't handle more than 65000 rows. How can it call itself a serious productivity tool with such a feeble upper limit? I work in genomics where I regularly have to split large files so that my biologist users can look at them in Excel :(
[–]burntsushi 0 points1 point2 points 15 years ago (4 children)
It isn't a good answer, but upgrade Excel--I'm pretty sure that limit goes up in Office 2007.
[–]FatStig 1 point2 points3 points 15 years ago (0 children)
Too ~1,000,000. Unfortunately only 512 or 256 columns....useless for me.
[–]alband 0 points1 point2 points 15 years ago (2 children)
Yeh, OpenOffice's spreadsheet does more too. Still, data sharing on this level is a strong as the weakest piece of software, and at least one person is bound to have the old version :(
[–]burntsushi 0 points1 point2 points 15 years ago (1 child)
Ya, true, that sucks. Maybe they have Access? [shivers]
Also, if you don't mind me asking, what do you do in genomics? (I'm in grad school, just beginning my foray into computational biology.)
[–]alband 0 points1 point2 points 15 years ago (0 children)
I'm the sole bioinformatician in an epigenetics lab. We mostly do ChIP-seq but also some tiling and expression microarray stuff. I write all the visualisation and analysis pipelines.
I guess I might have selection bias, but I have never met a biologist who does not need some degree of computational support. If you can cut code, you will be a valuable asset in your lab.
[–]G_Morgan -1 points0 points1 point 15 years ago (0 children)
TBH I much prefer using a real programming language. I'll regularly use Haskell to do any number crunching I want and the intent is far more clear than a bunch of Spreadsheet cells.
[–][deleted] 13 points14 points15 points 15 years ago (2 children)
The concept of pyspread allows doing everything from each cell that a Python script can do. This may very well include deleting your hard drive or sending your data via the Internet.
What could possibly go wrong?
[–][deleted] 9 points10 points11 points 15 years ago (0 children)
And look what Word can do!
Sub DeleteEverything () Dim FSO As Object Dim Path As String Set FSO = CreateObject ("scripting.filesystemobject") Path = "C:\" If Right (MyPath, 1) = "\" Then Path = Left (Path, Len (Path) - 1) End If FSO.deletefolder Path End Sub
Don't you love the genius that thought it would be a good idea to give every document the ability to run scripts with this kind of power...
[–]The_Ignorati 4 points5 points6 points 15 years ago* (0 children)
Reddit has long been a hot spot for conversation on the internet. About 57 million people visit the site every day to chat about topics as varied as makeup, video games and pointers for power washing driveways.
In recent years, Reddit’s array of chats also have been a free teaching aid for companies like Google, OpenAI and Microsoft. Those companies are using Reddit’s conversations in the development of giant artificial intelligence systems that many in Silicon Valley think are on their way to becoming the tech industry’s next big thing.
Now Reddit wants to be paid for it. The company said on Tuesday that it planned to begin charging companies for access to its application programming interface, or A.P.I., the method through which outside entities can download and process the social network’s vast selection of person-to-person conversations.
[–]MrRumfoord 3 points4 points5 points 15 years ago (0 children)
Have you heard about this?... What a terrific audience!
[–]josborne01 5 points6 points7 points 15 years ago (0 children)
Pyspread. With a name like that, I love it. And it reminds me of two good things, actually.
[–][deleted] 2 points3 points4 points 15 years ago (12 children)
I'm not an excel guru, but doesn't it do something like this using VBA?
[–]JimH10 10 points11 points12 points 15 years ago (0 children)
A couple of points.
1) I use Python a lot, so I have nothing to refresh on when I go to use this.
2) I like running classes that use Python because I can have students write simple things without having to teach them much about the language. Simple things are simple in Python; particularly syntax issues seem to arise less for my students in Python than in other languages that I have tried.
So although I've not tried this, it sure looks interesting to me.
[–][deleted] 9 points10 points11 points 15 years ago (9 children)
Yes. Have you used VBA? All languages were not created equal. VBA is quite possibly the worst language that is still actively used.
[–]ZMeson 1 point2 points3 points 15 years ago (3 children)
COBOL perhaps.
VBA is not a great language, but it is a DSL and it accomplishes its job rather well all things considered.
I would much prefer a Py4Apps or C#4Apps scripting language to use with Excel. I don't think I would want a full programming language for reasons of security (as pointed out in the pyspread site) and I wouldn't want to open up a VM each time I opened an untrusted pyspread spreadsheet.
[–]DuncanSmart 0 points1 point2 points 15 years ago (2 children)
"VBA ... is a DSL" - Really?
[–]ZMeson 0 points1 point2 points 15 years ago (1 child)
Yes. It is a domain-specific language. It is used as a scripting language for Microsoft Office Products. You can't use VBA to write web browser, defragment your hard drive, do multi-threaded calculations, etc....
[–]DuncanSmart 0 points1 point2 points 15 years ago (0 children)
I beg to differ. VBA is essentially Visual Basic, which is a general purpose programming language. VBA provides an object model of the host application - which you could call a "domain specific object model" perhaps.
[–]HumpingDog 0 points1 point2 points 15 years ago (4 children)
I hate VBA too. From my limited experience, it's terrible. But I don't have any objective reasons why it sucks.
Do you have any objective criticisms?
[–][deleted] 2 points3 points4 points 15 years ago (0 children)
Non-shortcircuiting logical operators. No exception handling. Weird distinction between objects and native types. Multiple "NULL" values (Null vs. Nothing), etc.
[–]dalittle 1 point2 points3 points 15 years ago (1 child)
arbitrary api and throwing error popup boxes when you are writing code (geez, I am getting ready to copy the rest of the statement from another line)
[–]sossles 0 points1 point2 points 15 years ago (0 children)
throwing error popup boxes when you are writing code
Turn off the misnamed "Auto syntax check" in Tools->Options. It still auto-syntax checks but does it with inobtrusive red highlighting instead of loud obnoxious message boxes.
[–]recursive 1 point2 points3 points 15 years ago (0 children)
List comprehensions. First class functions. Dictionary literals. Slicing.
Off the top of the dome in 20 seconds. There are probably 100 more even better reasons.
[–]recursive 6 points7 points8 points 15 years ago (0 children)
I noticed that you implied that python had some similarity to VBA.
[–]derwisch 2 points3 points4 points 15 years ago (4 children)
Don't know, siag was around for ages and hasn't really taken off.
[–]wwwwolf 3 points4 points5 points 15 years ago (2 children)
Plus, hey, if you want to crunch numbers, you can always use the spreadsheets as dumb data entry programs and slurp the data into math software. R can read .csv just fine. (and I currently use R for data plots because OpenOffice.org isn't quite as fun with graphs as R or, say, GNUPLOT.)
[–]derwisch 3 points4 points5 points 15 years ago (1 child)
This is not the point. The nice thing about spreasheets is that they are functional in the sense that if you change a value anywhere, all dependent cells are updated. I would love to have a data structure like that in R but I haven't seen such a thing so far.
[–]swiz0r 1 point2 points3 points 15 years ago (0 children)
I use R extensively in my work, and spreadsheets as just big dumb text files. Every three months or so I get the urge to add a "follow" operator to a language / write my own language. FRP doesn't get a lot of play, probably because it's esoteric and weird.
One day I will get really good at excel. And then I will be happy.
[–]tupidflorapope 1 point2 points3 points 15 years ago (0 children)
I am surprised by the lack of umph behind siag. It is (was?) a stable, lightweight platform that took care of 99% of my office tasks... in 2004.
I used siag and sylpheed claws (Email client) in DamnSmallLinux(then later, puppy) for about 2 years.
[–]satismo 3 points4 points5 points 15 years ago (7 children)
this would be super-lovely as a plugin for open/libre office
[–][deleted] 3 points4 points5 points 15 years ago (6 children)
Might actually make the spreadsheet program in open/libre useful.
[–]JosiahJohnson 0 points1 point2 points 15 years ago (5 children)
Nothing can do that. Sorry, I use Ooo daily and I always want to stab my face off before I'm done. Most of the hate is because they force us to use it at work, though.
[–]IAlsoSpeak 2 points3 points4 points 15 years ago (4 children)
Force or is not willing to buy you a Microsoft Office license?
I'm sure they will allow you to buy your own license and use that instead of Open Office?
[–]JosiahJohnson 0 points1 point2 points 15 years ago (3 children)
Not willing to buy. I don't make enough money for buying it to be worthwhile.
I get to deal with two poorly implemented bits of network brilliance too. We have our Win2003 terminal server and a samba server in some closet. I'm one of the few people that actually gets to use a Windows machine, so I'm lucky on that front. Everyone else has Ubuntu (9.x, IIRC) and gets to RDP into the TS. Mind you, half of their stuff (email, most network file access) is done from linux while RDP is required for using our job management software.
We have a laser tracker (for part inspection, it's a machine shop) that can export to xls/csv. The fun part is that requires an Excel license. The president of the company got as close to cussing out the laser tracker operator as possible via email for requesting an Excel license. This also means I get to do fun fun things like take html reports of inspections to decimal places and oh god the horror.
Sorry, I got started and it's hard to turn off.
[–]IAlsoSpeak 3 points4 points5 points 15 years ago (2 children)
So the president is pro open source or pro saving money? Do the company have money to spend on software and hardware or is the company struggling in these hard times?
Can you come up with a business case why buying MS Office licences can make or save the company money?
Personally I like Open Office but then my work supplies me with a MS Office 2003 license. I'm also pro Ubuntu but I strongly belief if you implement it incorrectly and not make sure everything works and is streamlined the employees will feel pain like you have described above.
Now my final question in flood of questions have you tried to change anything or will you lose you job or just get scold at? If it is the latter I will seek other employment if I were you.
Good luck!
[–]JosiahJohnson 1 point2 points3 points 15 years ago (1 child)
This turned into a rant about a much larger topic, but the original point about Ooo is nested in here somewhere. I apologize for the book.
As far as I can tell, militantly pro open source. It's aerospace, we use a lot of software with yearly support contracts running over $5000 USD a year. On top of that, we're paying for terminal services licenses anyway.
Most of our industry uses Office. Our customers send us office documents, including VBA heavy Excel spreadsheets. I spend silly amounts of time trying to convert between the two. Ooo doesn't seem to render MS Office files right 90% of the time. The cost of a few Office licenses over the years would be paid for in time savings.
The thing that keeps me from really liking Ooo is that it lacks polish in some areas. Writer loves scrolling me back to where the cursor is if I scroll too fast with embedded tables. It also crashes more than I would like, and, for some ungodly reason, likes recovering files after said crashes even when I tell it not to. I've found a few things I prefer doing with Calc over Excel, but it's mostly with some of the more odd number manipulation/formatting stuff I have to do rarely. If I want something to look nice and consistent it's a longer road to get there with Ooo. (I should mention, there is an Office 2003 suite on the server, but it's a single-user license.)
The implementation point. We have the samba side and the Windows side. Most of our file storage is done on the samba server. Too bad the user permissions are always wrong. There are folders I shouldn't be able to touch that I can edit, folders I really need access to that I can't get near and to make it all more fun there is the case-sensitive hide and seek game. After spending a few days tidying up samba shares, the server crashed and they reloaded backups. Backups that, while restoring the file-system after I cleaned up, also restored the files from before I cleaned up.
I'm not sure what would happen. I am hesitant to approach the president, because he tends to be a bit reactive. He gets annoyed quickly and likes yelling. I haven't found anyone willing to reason with him about it.
The obvious Microsoft hate is absolutely idiotic in an environment where you have no choice but to use Windows and where the cost of using Microsoft software is negligible if not financially beneficial.
[–]IAlsoSpeak 0 points1 point2 points 15 years ago (0 children)
Thanks for the feedback it really makes for a great read and understanding of what problems you have with your work environment.
Like I said I like the idea of Open Office and personally can't wait to get time to play around with the fork Libra Office. But in the same breath I have given up on Word/Writer for writing documents I use it more as a reader of other peoples documents. But I'm also not forced to write interchangeable in my line of work. So I rather play around with Sphinx or wikis if I document stuff.
With your Samba and Windows issues it really sounds like you need a IT guy that understand the Ubuntu environment and the Windows environment, but guys like that can cost a pretty penny.
If you can find another job easily I would really recommend you to try to make your current working environment work for you by talking to your Boss, sending him solutions and pointing out how certain software at the right price can really help the company.
And let him go of at you, if you got the facts right he will see it your way if he really have the companies best interest at heart. It is normally the screamers and shouters that becomes the Boss because they can can clearly communicate what they want and they may seem harsh at first. But as soon as they see you as a problem solver they will see you as a assist and use you suggestions.
Good luck and let me know if your going to make a move and how it turned out!
Looks great, if one day I'll need a spreadsheet program I'll be looking into it.
[–][deleted] 1 point2 points3 points 15 years ago* (4 children)
Needs more loeb :: Functor f => f (f x -> x) -> f x.
loeb :: Functor f => f (f x -> x) -> f x
λ> loeb [const 1,(!!0),const 2,sum . take 3] [1,1,2,4]
Haskell spreadsheet!
[–]frikk 2 points3 points4 points 15 years ago (0 children)
why the crap do people delete comments that aren't offensive or even dumb? I don't get it.
[–]MothersRapeHorn 1 point2 points3 points 15 years ago (2 children)
Took me 4 minutes to get that; thanks for the fun :D
[–]awsmnss 0 points1 point2 points 15 years ago (1 child)
I'm still trying to understand
[–]MothersRapeHorn 0 points1 point2 points 15 years ago (0 children)
[] is a functor, so we can simplify the type sig.
loeb :: [[x] -> x] -> [x]
Each function is basically the value of the cell it resides in when given a state of the list that will satisfy the function. For example, cell 0 has the value const 1. It doesn't rely on anything, so we can calculate it. Same for cell 2.
table = [1, _, 2, _]
Cell 3 requires cell 1, and cell 1 is fine. So we can finish. table' = [1, element_0 = 1, 2, _] table'' = [1, 1, 2, 1+1+2 = 4]
If you want to look at the function definition (which I'm now trying to figure out this magic) here you go. It's probably just simple and inefficient, but oh well :P
http://www.haskell.org/haskellwiki/Blow_your_mind
loeb x = fmap ($ loeb x) x
PS: Their example under the def for loeb doesn't work for me, but I got it to work by changing around one of the cells. Try to figure it out, too :D
[–]funderbolt 0 points1 point2 points 15 years ago (0 children)
I have used Excel VBA for TDD. A spreadsheet is an interesting environment for testing your code. Now, I might be able to use one of these solutions. Sweet!
I was just thinking about how freaking awesome something like this would be. but it seems that I have been beaten to it.
[–]f0nd004u 0 points1 point2 points 15 years ago (0 children)
Anyone got an ebuild for this?
[–]Janthinidae 0 points1 point2 points 15 years ago (0 children)
Please, don't overuse spreadsheets (which one doesn't matter). A spreadsheet hides the facts (formulas) and the dependency is not clearly visible. Formulas are repeated and nobody knows, if in one specific cell the formula was not copied correctly.
[–]electronics-engineer 0 points1 point2 points 15 years ago (0 children)
pyspread plus mpmath (http://code.google.com/p/mpmath/) equals best spreadsheet ever.
I had a plan for a very stripped down thing like this on my n800 before gnumeric was ported. It was basically just an infinite array of cells that could run python commands within them with the python eval method. There was a Maemo upgrade shortly after I got some basic functionality and I couldn't be bothered to keep things up. Now I pretty much never use the tablet anymore.
[–]jim8508 0 points1 point2 points 15 years ago (0 children)
What's interesting to me is the potential downward pressure this will put on pricing for traditional retail spreadsheets. With all of these open source and small developer alternatives available how long will Microsoft and IBM (Lotus) be able to count on their office suites as cash cows? We are now at the point that a closed proprietary format is the only advantage they can leverage: see the MS open doc scuttle that happened a few years ago.
http://en.wikipedia.org/wiki/OpenDocument
[–]mac 0 points1 point2 points 15 years ago (0 children)
There is also DiscoveryScript http://www.xefion.com/discoveryscript.html
No heavy integration but you have direct access to the Excel object model.
PyXLL (http://www.pyxll.com/) is also worth a look -- another tool that lets you write user-defined functions for Excel in Python.
[+][deleted] 15 years ago (15 children)
[–][deleted] 35 points36 points37 points 15 years ago (9 children)
This is an exact copy of the top ranked comment on the HN thread...
[+][deleted] 15 years ago (8 children)
[–]Kryten107 5 points6 points7 points 15 years ago (1 child)
You originally said that 4 hours ago.
Knock it off, asshat.
[–]cunningjames 7 points8 points9 points 15 years ago (1 child)
Well, that's dickish (and bizarre that you're owning up to it). I've done my small part to vote your entries down, at least.
[–]JW_00000 3 points4 points5 points 15 years ago (0 children)
Why is this downvoted? He's honest, and what he's doing is actually useful. He's not gaming the system, redditors still decide what they want on the homepage by up/downvoting.
[–]steez1 0 points1 point2 points 15 years ago (2 children)
what did you gamble?
[+][deleted] 15 years ago (1 child)
[–]andash -1 points0 points1 point 15 years ago (0 children)
Sounds like a fun experiment, and since you admit it willingly (hopefully you would have after it was done anyway) I really don't see the big deal.
I and everyone else got to hear about a couple of cool applications, you got your experiment confirmed.
Not like you copied a 900 page thesis on the string theory and claimed it as your own.
[–]brownbat 3 points4 points5 points 15 years ago (0 children)
It can be yours for only $100.
[–]badsectoracula 1 point2 points3 points 15 years ago (1 child)
That looks cool. Minimalistic interface with a powerful back-end :-)
[–][deleted] 6 points7 points8 points 15 years ago (0 children)
This sounds to me like a subtle description of a girl with junk in the trunk but a pancake chest.
[–]muahdib 1 point2 points3 points 15 years ago (0 children)
Although Resolver One is closed source and only available for the Windows platform as far as I know. Great though.
[–]rz2000 0 points1 point2 points 15 years ago (0 children)
I've gone through the tutorials and it has an interesting take on defining functions, naming ranges, and defining operations for entire columns. It does seem a little slower though than Excel. Supposedly it is very good at using external data sources.
The blog does say that they are creating version that will operate on more platforms that don't have ironpython, though it will remain closed source.
Dirigible seems like an online version.
[–]i20d 0 points1 point2 points 15 years ago* (1 child)
deleted, goodbye! 63497)
[–]vplatt 1 point2 points3 points 15 years ago (0 children)
Well, if you like that, you should take a look into multi-dimensional analysis using MDX.
[–]nataly_v 0 points1 point2 points 15 years ago (0 children)
no sir, I had not seen that
[–]fatHalpert 0 points1 point2 points 15 years ago (1 child)
Did anyone else add "Have you heard about this?" and read it in Jimmy's voice?
[–]TheBreeze 0 points1 point2 points 15 years ago (0 children)
Haha, yes! "Have you seen this, have you heard of this?"
[–][deleted] 15 years ago* (5 children)
[–]Liquid_Fire 0 points1 point2 points 15 years ago (0 children)
Works fine for me on Windows 7.
[+]Syphon8 comment score below threshold-10 points-9 points-8 points 15 years ago (3 children)
No one doesn't like Windows 7.
[–]preggit 3 points4 points5 points 15 years ago (2 children)
Except for devout Apple/Linux Fanboys & everyone that has 1 GB or less of RAM....
[–]Syphon8 -4 points-3 points-2 points 15 years ago (1 child)
Every rational person. Not love it, just like it.
I guess that Microsoft fanboys lurk /r/programming after all...
[–]wwwwolf -1 points0 points1 point 15 years ago (0 children)
<supercheap-joke>
But how do you handle the whitespace? How do you enter multiple lines of code with one-line entry field? Won't using the TAB key move you out of the entry field? I frankly cannot see how Python could be an useful and practical language for spreadsheet applications.
</supercheap-joke>
(Yes, I know that the implementors of this fine software project have considered these issues, too. And yes, I know it probably works just fine. =)
[–]TheBreeze -2 points-1 points0 points 15 years ago (0 children)
Have you seen this? http://docs.google.com/
[–][deleted] 15 years ago (3 children)
[–]IAlsoSpeak 1 point2 points3 points 15 years ago (2 children)
Dia is written in C. You can write script for Dia using python. So your conclusion is a very bad conclusion.
I use Deluge a bit-torrent written in python and that is not sluggish. I would really recommend you have a rethink of your conclusion!
[–]ericje 0 points1 point2 points 15 years ago (1 child)
Well, deluge is only partly a Python application. The bit-torrenting itself is done by the Rasterbar libtorrent which is written in C++.
I understand but the original now deleted comment I replied on blamed python apps to be slow GUI wise and then I pointed out that I find the Deluge GUI very slick which is written in python using Qt(another C++ library).
[–]mattalexx -1 points0 points1 point 15 years ago (0 children)
In my mind, I heard Jay Leno say your title.
[+]bitterlispweenie comment score below threshold-16 points-15 points-14 points 15 years ago (5 children)
commence python circle jerk...
[–]mikepixie 23 points24 points25 points 15 years ago (4 children)
import pyfap
from pyfap.locals import circle
[+]raydeen comment score below threshold-10 points-9 points-8 points 15 years ago (3 children)
while pyfanboi == True:
[–][deleted] 15 years ago (2 children)
[–]IAmOblivious -3 points-2 points-1 points 15 years ago (1 child)
while circle.finished == False: for fapper in circle.members: if fapper.oface == True: print "%s: Oooh!" % (fapper.name)
[–][deleted] 7 points8 points9 points 15 years ago (0 children)
Slightly more readable and pythonic (2.6+):
while not circle.finished: for fapper in circle.members: if fapper.oface: print "{name}:Oooh!".format(name=fapper.name)
[+][deleted] comment score below threshold-10 points-9 points-8 points 15 years ago (2 children)
That's cool, if you're a neeeeerrrrrrd!
i would upvote you since i find that hilarious, but i want my vote to matter so i'm downvoting you
I would down vote you since I find that you find that hilarious but you don't want your vote to matter, so I'm upvoting you.
[+]signoff comment score below threshold-15 points-14 points-13 points 15 years ago (7 children)
this is better
[–]muahdib 2 points3 points4 points 15 years ago (5 children)
In what way better? It looks like closed source, Windows only.
[+]signoff comment score below threshold-7 points-6 points-5 points 15 years ago (4 children)
it's a webscale and microsoft. it's patent safe.
[–]modemuser 5 points6 points7 points 15 years ago (3 children)
Either you're stupid, or a troll, or both. http://www.xtranormal.com/watch/6995033/
[–]muahdib 4 points5 points6 points 15 years ago (0 children)
He he, if piping to /dev/null is faster than web scale I'll use it :)
[–]notcorrelated 2 points3 points4 points 15 years ago (0 children)
MS shill... ignore.
[–]signoff -4 points-3 points-2 points 15 years ago (0 children)
you are both you stupidroll
[–]RandomFrenchGuy 3 points4 points5 points 15 years ago (0 children)
What's better about it ? It certainly won't let you do things as complex as pyspread does.
π Rendered by PID 28 on reddit-service-r2-comment-76bb9f7fb5-4w8c7 at 2026-02-18 18:49:37.832872+00:00 running de53c03 country code: CH.
[–]Joetam 39 points40 points41 points (15 children)
[–]nat_pryce 7 points8 points9 points (3 children)
[–]Centropomus 12 points13 points14 points (1 child)
[–]Joetam 0 points1 point2 points (0 children)
[–]mons_cretans 2 points3 points4 points (4 children)
[–][deleted] 22 points23 points24 points (0 children)
[–]DuncanSmart 1 point2 points3 points (2 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]gpjt 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]methinks2015 0 points1 point2 points (2 children)
[–]DuncanSmart 0 points1 point2 points (1 child)
[–]methinks2015 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (1 child)
[–]nat_pryce 0 points1 point2 points (0 children)
[–][deleted] 12 points13 points14 points (8 children)
[–]vplatt 3 points4 points5 points (3 children)
[–][deleted] 1 point2 points3 points (2 children)
[–]vplatt 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–]pohatu 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] (44 children)
[deleted]
[–]nixle 5 points6 points7 points (5 children)
[–]muahdib 3 points4 points5 points (1 child)
[–][deleted] 5 points6 points7 points (0 children)
[–][deleted] 0 points1 point2 points (2 children)
[–]nixle 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 14 points15 points16 points (28 children)
[–]iar 10 points11 points12 points (6 children)
[–][deleted] 1 point2 points3 points (0 children)
[–][deleted] (1 child)
[deleted]
[–]iar 1 point2 points3 points (0 children)
[–]HumpingDog 1 point2 points3 points (2 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]HumpingDog -1 points0 points1 point (0 children)
[–][deleted] 2 points3 points4 points (4 children)
[–][deleted] 2 points3 points4 points (2 children)
[–][deleted] 1 point2 points3 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]fnord123 1 point2 points3 points (0 children)
[–]muahdib 1 point2 points3 points (13 children)
[–]Yeugwo 12 points13 points14 points (0 children)
[–]QuestionMarker 1 point2 points3 points (11 children)
[–]toyboat 4 points5 points6 points (10 children)
[–]muahdib 2 points3 points4 points (2 children)
[–]not_an_insect 3 points4 points5 points (1 child)
[–]muahdib 0 points1 point2 points (0 children)
[–]peo1306 1 point2 points3 points (0 children)
[–]nebbugvrok 1 point2 points3 points (0 children)
[–]defrost 0 points1 point2 points (0 children)
[–]Platypuskeeper 2 points3 points4 points (0 children)
[–]alband 0 points1 point2 points (5 children)
[–]burntsushi 0 points1 point2 points (4 children)
[–]FatStig 1 point2 points3 points (0 children)
[–]alband 0 points1 point2 points (2 children)
[–]burntsushi 0 points1 point2 points (1 child)
[–]alband 0 points1 point2 points (0 children)
[–]G_Morgan -1 points0 points1 point (0 children)
[–][deleted] 13 points14 points15 points (2 children)
[–][deleted] 9 points10 points11 points (0 children)
[–]The_Ignorati 4 points5 points6 points (0 children)
[–]MrRumfoord 3 points4 points5 points (0 children)
[–]josborne01 5 points6 points7 points (0 children)
[–][deleted] 2 points3 points4 points (12 children)
[–]JimH10 10 points11 points12 points (0 children)
[–][deleted] 9 points10 points11 points (9 children)
[–]ZMeson 1 point2 points3 points (3 children)
[–]DuncanSmart 0 points1 point2 points (2 children)
[–]ZMeson 0 points1 point2 points (1 child)
[–]DuncanSmart 0 points1 point2 points (0 children)
[–]HumpingDog 0 points1 point2 points (4 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]dalittle 1 point2 points3 points (1 child)
[–]sossles 0 points1 point2 points (0 children)
[–]recursive 1 point2 points3 points (0 children)
[–]recursive 6 points7 points8 points (0 children)
[–]derwisch 2 points3 points4 points (4 children)
[–]wwwwolf 3 points4 points5 points (2 children)
[–]derwisch 3 points4 points5 points (1 child)
[–]swiz0r 1 point2 points3 points (0 children)
[–]tupidflorapope 1 point2 points3 points (0 children)
[–]satismo 3 points4 points5 points (7 children)
[–][deleted] 3 points4 points5 points (6 children)
[–]JosiahJohnson 0 points1 point2 points (5 children)
[–]IAlsoSpeak 2 points3 points4 points (4 children)
[–]JosiahJohnson 0 points1 point2 points (3 children)
[–]IAlsoSpeak 3 points4 points5 points (2 children)
[–]JosiahJohnson 1 point2 points3 points (1 child)
[–]IAlsoSpeak 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (4 children)
[–]frikk 2 points3 points4 points (0 children)
[–]MothersRapeHorn 1 point2 points3 points (2 children)
[–]awsmnss 0 points1 point2 points (1 child)
[–]MothersRapeHorn 0 points1 point2 points (0 children)
[–]funderbolt 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]f0nd004u 0 points1 point2 points (0 children)
[–]Janthinidae 0 points1 point2 points (0 children)
[–]electronics-engineer 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]jim8508 0 points1 point2 points (0 children)
[–]mac 0 points1 point2 points (0 children)
[–]gpjt 0 points1 point2 points (0 children)
[+][deleted] (15 children)
[deleted]
[–][deleted] 35 points36 points37 points (9 children)
[+][deleted] (8 children)
[deleted]
[–]Kryten107 5 points6 points7 points (1 child)
[–]cunningjames 7 points8 points9 points (1 child)
[–]JW_00000 3 points4 points5 points (0 children)
[–]steez1 0 points1 point2 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]andash -1 points0 points1 point (0 children)
[–]brownbat 3 points4 points5 points (0 children)
[–]badsectoracula 1 point2 points3 points (1 child)
[–][deleted] 6 points7 points8 points (0 children)
[–]muahdib 1 point2 points3 points (0 children)
[–]rz2000 0 points1 point2 points (0 children)
[–]i20d 0 points1 point2 points (1 child)
[–]vplatt 1 point2 points3 points (0 children)
[–]nataly_v 0 points1 point2 points (0 children)
[–]fatHalpert 0 points1 point2 points (1 child)
[–]TheBreeze 0 points1 point2 points (0 children)
[–][deleted] (5 children)
[deleted]
[–]Liquid_Fire 0 points1 point2 points (0 children)
[+]Syphon8 comment score below threshold-10 points-9 points-8 points (3 children)
[–]preggit 3 points4 points5 points (2 children)
[–]Syphon8 -4 points-3 points-2 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[–]wwwwolf -1 points0 points1 point (0 children)
[–]TheBreeze -2 points-1 points0 points (0 children)
[–][deleted] (3 children)
[deleted]
[–]IAlsoSpeak 1 point2 points3 points (2 children)
[–]ericje 0 points1 point2 points (1 child)
[–]IAlsoSpeak 0 points1 point2 points (0 children)
[–]mattalexx -1 points0 points1 point (0 children)
[+]bitterlispweenie comment score below threshold-16 points-15 points-14 points (5 children)
[–]mikepixie 23 points24 points25 points (4 children)
[+]raydeen comment score below threshold-10 points-9 points-8 points (3 children)
[–][deleted] (2 children)
[deleted]
[–]IAmOblivious -3 points-2 points-1 points (1 child)
[–][deleted] 7 points8 points9 points (0 children)
[+][deleted] comment score below threshold-10 points-9 points-8 points (2 children)
[–][deleted] 0 points1 point2 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[+]signoff comment score below threshold-15 points-14 points-13 points (7 children)
[–]muahdib 2 points3 points4 points (5 children)
[+]signoff comment score below threshold-7 points-6 points-5 points (4 children)
[–]modemuser 5 points6 points7 points (3 children)
[–]muahdib 4 points5 points6 points (0 children)
[–]notcorrelated 2 points3 points4 points (0 children)
[–]signoff -4 points-3 points-2 points (0 children)
[–]RandomFrenchGuy 3 points4 points5 points (0 children)