Jump to content

Wikipedia:Reference desk/Archives/Computing/2011 September 22

From Wikipedia, the free encyclopedia
Computing desk
< September 21 << Aug | September | Oct >> September 23 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


September 22

[edit]

Making money off game solvers

[edit]

I've written a dozen or so solvers for various online games, like Scrabble, for fun. Some of the games are Pogo.com-only games (I can provide a list, if needed). These are FORTRAN executables which run in the MS-DOS window on Windows (I haven't tested them on Apple or Linux). As such, they have no graphics (well, I do use the ASCII line drawing set to make nice boxes, but that's it). They are, however, very fast. So, how can I sell or rent these for money ? Some ideas I had:

1) Change them into smart phone apps. I have a feeling a great deal of work would be required, and that they would need to be rewritten in another language. Is this the case ?

2) I could actually sell copies over the Internet, but then I'd need to implement some type of registration key system. Sounds ugly.

3) Allow them to be run from a web site, and sell ad space on that site. Here the tricky part is not allowing them to be copied. If I just allow anyone to download, they could just create their own web site where they give away copies of my code. So, can I make it so they can run it from a web site without allowing them to download it ? This seems like it might create quite a CPU load on the host computer, so is there a way to have it run on the computer of the user, without them being able to copy it ?

4) Any other ideas ?

Also, do I need to worry about copyrights ? That is, can I call it a "Scrabble Solver", etc., without having to pay royalties, or must I rename it "Word Game Solver" or something like that ? I'm in the USA. StuRat (talk) 00:05, 22 September 2011 (UTC)[reply]

FYI, Google Goggles recognises Sudoku puzzles, OCRs the numbers, and passes that off to a web app which solves the puzzle. It's pretty darn impressive. Without that photo->OCR phase, entering the state of a given puzzle on a smartphone would be pretty soul destroying. For a game with quite a lot of "on the table" state (like Rummikub, Contract Bridge, or Scrabble) a "take a photo to suggest a good move" program would be useful (where you'd also have to photograph, or manually enter, a player's own private state). It might be fun to have a little app that did that (perhaps to even the playing field when one player is weaker), but I'm not sure enough people would pay for it. -- Finlay McWalterTalk 00:33, 22 September 2011 (UTC)[reply]
Yes, entering the game state can be tedious for some games, and can take up valuable time in timed games. But, in other games it's quite quick. For example, in Boggle there are only 16 letters to type in, then my Boggle solver spits out all the words. StuRat (talk) 02:39, 22 September 2011 (UTC)[reply]
Have you tried Googling "scrabble solver" or "scrabble word finder" or "scrabble cheat"? There are dozens of websites that already do this. For free. (And fast enough for any real-world use — it's not exactly a computationally intense task on a modern computer.) Google "scrabble cheat app store" and you'll find smart phone apps for this. This makes me suspect that unless you really think your word-descrambler is going to do something measurably superior than others', it might not be worth the time and effort. Not to be discouraging... but I think a vanilla word solver is probably not worth more than whatever pleasure it gives you to put them together. --Mr.98 (talk) 02:16, 22 September 2011 (UTC)[reply]
Yes, I do think mine is better, and I also have a dozen or so other game solvers. But this is all off point. How do I market what I have ? StuRat (talk) 02:36, 22 September 2011 (UTC)[reply]
I hate to tell you but given the number of people doing it for free, it's a slim chance of making any profit. Plus, these days only IT professionals will tolerate a console/command line program. Without a GUI it's not really marketable in my opinion. HominidMachinae (talk) 05:08, 22 September 2011 (UTC)[reply]
Well, my option 3 is free (just with ads). As for graphics, it's hard to imagine what graphics would add any real value. Should the letters all rotate in 3D before they settle down to form words ? I imagine that would get old as quickly as the "helpful" paperclip assistant Windows used to have. And in a timed game, who'd want to wait for animations ? The one thing I would like to add is color, but that's not easy, apparently (I asked about that here several months ago). StuRat (talk) 05:12, 22 September 2011 (UTC)[reply]
It's not about graphics so much as it is about interface. Depending on the game and platform, dragging and clicking may be a much more natural way of specifying the game state than typing text. Solving puzzles is good, but being the most popular solver also requires being easy to use. Dragons flight (talk) 05:20, 22 September 2011 (UTC)[reply]
Some of them do have a command line interface, like "Type L to enter a new set of letters, Type B to specify the number of blanks", etc., but some of my simple game solvers just prompt you at each step, with no need to specify commands. You do need to type in the letters on the board, but that doesn't seem any worse than clicking on them, to me. Does anybody really prefer using an on-screen keyboard ? StuRat (talk) 06:14, 22 September 2011 (UTC)[reply]
People like shiny interfaces. It makes a big difference in how they feel about the program. I think that's kind of beyond question at this point. They don't like consoles. Take a look at the computers and programs that have actually succeeded on the commercial market with anybody other than total geeks. --Mr.98 (talk) 11:18, 22 September 2011 (UTC)[reply]
Well, "total geeks" are a market. I'd be happy to get $1 from each of them. StuRat (talk) 18:41, 22 September 2011 (UTC)[reply]
The problem is that total geeks are uncommonly adverse to payware. They're more likely to look at sourceforge and find the code there then compile it to suit their needs. If you have to explain to people to go to start -> run -> command and type in the file path you've already lost 80% of your market. Windows 7 doesn't even ALLOW you to use command to open the console, it's going away more and more each software generation. HominidMachinae (talk) 19:10, 22 September 2011 (UTC)[reply]
It's nothing like that. You click on the icon on your desktop (or wherever you placed it during download), and it opens up the console session for you, with the program already running. StuRat (talk) 19:50, 22 September 2011 (UTC)[reply]
For some reason programs that open the console on Vista often close it again immediately once the program runs its output. If you've found a way around that might be slightly more workable. The sad fact remains, however, that these days applications are 50% looks 50% functionality. The market for command-line programs is mostly the highly technically competent, people that would rather download source code from sourceforge and build it themselves or otherwise use a freeware, open-source solution. HominidMachinae (talk) 22:39, 22 September 2011 (UTC)[reply]
The feature of exiting the window upon completion of the program isn't unique to Vista, all Windows versions do that. It isn't necessarily a problem, though. However, in cases where the person may want to continue to view the results after the program has ended, a simple "Enter Q to Quit" prompt will keep the window up until they want to exit (clicking on the X to close the window also works). And, if the program doesn't include this feature, a work-around is to open the MS-DOS console first, navigate to the executable and run it from that window, to ensure that the window won't exit upon completion. StuRat (talk) 00:31, 23 September 2011 (UTC)[reply]
There's a better workaround- there are flags for cmd.exe ('/k', etc) that let you run a command and have the window stay open. Nevard (talk) 03:45, 23 September 2011 (UTC)[reply]
And the user is supposed to edit their cmd.exe file ? Sounds like a lot to ask. StuRat (talk) 03:52, 23 September 2011 (UTC)[reply]
Distributing a batch file or shortcut which uses a flag is not exactly rocket science.. it's not even a lot to ask. Nevard (talk) 05:12, 23 September 2011 (UTC)[reply]
Got any NP-complete puzzles in your list? If your solution method is reasonably fast, you don't really need a cool interface to collect your money. 67.162.90.113 (talk) 05:37, 22 September 2011 (UTC)[reply]
It would take considerable work to get Fortran working on an Android phone. So much work that it's probably worth just re-writing it in Python or Java. You will not get it working on an iOS phone, I don't think. Don't expect any public or commercial resources — most smart phone developers don't take Fortran seriously as a smart phone language.
Nobody is likely to buy MS DOS programs these days. That's just a fact. People like shiny things that make them feel they've got their money's worth. MS-DOS console programs make people feel like they've been teleported back to the 1990s. The exception to this are Linux geeks and old engineers. But they're not much of a market, and Linux geeks don't like to pay for programs, anyway. I don't think you need to worry about DRM solutions because frankly, nobody is going to go for this. You missed about three or four revolutions when it comes to consumer preferences for software.
So that leaves the website option. Have the code compiled in some sort of server-side executable, keep the permissions correct and the server setup right, and nobody is going to be able to take your code.
Again, I think the chances of you being able to make money off of yet-another Scrabble solver, but this one a console program written in Fortran, are completely nonexistent. Frankly it sounds like the setup for a bad joke. But it's your time, your money! Knock yourself out. --Mr.98 (talk) 11:18, 22 September 2011 (UTC)[reply]
MS-DOS and the Windows console are totally different things. 32-bit Windows does provide a limited MS-DOS emulation environment, 64-bit Windows doesn't, but console-based Windows programs run in both. Also, smartphones aside, Fortran isn't a weakness. No end-user would care, or even know, whether a piece of software was written in Fortran, and there are modern, highly optimizing Fortran compilers for modern CPUs such as Intel Fortran. The rest of what you said is probably true, though. And if StuRat really is using an old Fortran compiler under MS-DOS emulation, then it would be a good idea to upgrade. -- BenRG (talk) 18:56, 22 September 2011 (UTC)[reply]
I'm using Gfortran. What are the advantages of the Intel version over that ? StuRat (talk) 00:36, 23 September 2011 (UTC)[reply]
There are various tools to convert FORTRAN to C, which could be used in an iOS or Android application; it would require a lot of programming to put a smartphone-style interface around the application.
Another way of making money is a free advertising-supported application for Android.[1][2] This means your app is free for people to download, but the more they use it the more money you get.--Colapeninsula (talk) 14:01, 22 September 2011 (UTC)[reply]
There is also f2j to convert Fortran into Java code. It's still a work in progress, though. 188.117.30.209 (talk) 18:08, 22 September 2011 (UTC)[reply]
StuRat, what you really need is not technical advice: you need a business-partner. You've completed some technical work; now you want to commercialize it; but ... let's be honest, you have no clue how to commercialize this technology you just made. We could throw a bunch of one-liner ideas at you: "package your FORTRAN code as a static-linked library with a web-protocol front-end API" or "direct-market your program to end-users of mobile phones" or "aim to sell your technology as intellectual-property, rather than as source-code..." but not knowing the details of your accomplishments, all of these are just one-liner ideas; none of these plans are guaranteed to be good, or feasible, or profitable. You need somebody (professional or amateur: maybe even yourself, if you're willing to make the transition from engineering to marketing) who is an expert at looking at technology, deciding what it is worth, and knowing who will buy it. There are literally swarms of such people, churned out of business schools, looking for semester-long "senior class design-projects" seeking to "market real-world technology to real-world businesses." The quality of individuals you find may vary from "incompetent" to "Bill Gates."
I recently saw the documentary Something Ventured, a documentary about financing technology startups. When Sandy Lerner and Len Bosack founded Cisco, the total amount of technology they actually had was hardly more elaborate than your few thousand lines of FORTRAN - but they knew who to sell it to, and that's why they each made hundreds of millions of dollars ... before being backstabbed by venture-capitalists). Of course, they needed their technology, but they mostly needed their business acumen to turn a bunch of boring, incomprehensible networking scripts into a global software/hardware enterprise.
On the other hand, every upstart first-year programmer has an amazing tendency to think his class final project is the embryo of next Microsoft (a new innovative Hangman program written in SOAP and Ruby-on-Rails - the next generation in mobile web-based Hangman-playing user-experience) - when in fact, such simple software is essentially valueless - mostly because there's no business model to sustain it. So, moral of the story: if you're a programmer with something to sell, you need to become a businessman; or, hire one. Nimur (talk) 17:07, 22 September 2011 (UTC)[reply]
A business partner might make sense if I had a million dollar program, but I'm thinking more in the line of it making a few thousand dollars a year, which would be a nice little bonus. However, at that rate, there's no budget to hire a marketing exec. So, where could I find an honest web site which would host my code, not steal it, allow it to run there for free for everyone, and give me a portion of the ad revenue from people who use it ? StuRat (talk) 18:49, 22 September 2011 (UTC)[reply]
Just use some cheap ($10/mo.) hosting service, e.g. bluehost or dreamhost. Keep good records, and if they do steal it (highly unlikely), threaten to sue them. Set up an account with Google Adwords. I think you seriously overestimate how much ad revenue is going to be generated by people downloading console Scrabble answer generators. You'll need tens of thousands of views per day to come up with a few thousand dollars per year. That strikes me as quite optimistic for what you're describing. --Mr.98 (talk) 20:23, 23 September 2011 (UTC)[reply]
Yes, allowing a download would only get a single hit, that's why I want to find a place that will actually run the code there, instead. That way I get a page hit every time they come back to run it again. (Also, once the user downloaded it they could sell it or give it away.) StuRat (talk) 04:15, 24 September 2011 (UTC)[reply]
The hosting services I've mentioned have pretty robust support for server-side code. You'd have to compile the Fortran into a CGI file, but this is not impossible. I think you're overly paranoid about people wanting your code — if the answers on this page are any indication, most people will not think it would be a lucrative venture as you've described it. --Mr.98 (talk) 17:36, 24 September 2011 (UTC)[reply]

Job scheduler algorithm

[edit]

What algorithm(s) does a job scheduler tend to use when deciding between jobs in the queue? Obviously submission time, resources requested, and planned execution time matter, but I'm wondering how they actually fold together in practice. I'm interested in the TORQUE scheduler in particular, but if people know what the algorithms are for other systems that is good too. Looking at a queue of processes, I'd like to be able to guesstimate where a given process is in the run order. Dragons flight (talk) 07:41, 22 September 2011 (UTC)[reply]

The website for Torque says it can support various scheduling algorithms[3], but I can't find any information on the algorithms it mentions. --Colapeninsula (talk) 10:15, 23 September 2011 (UTC)[reply]
In my experience there can be a set of different queues with different limits, and access to equipment. The jobs were picked off the queue in the order submitted. If a job asked for something it could not get (eg a removeable media not there) it would stall and clog the rest of the queue. If a job used too many resources, eg pages printed, or CPU consumed, it would be cancelled by the operating system. Another queue would not start any jobs at all, and needed a computer operator to release the work for processing. Other queues may have multiple initiators and pump through the jobs quickly, as long as they only wanted small amounts of CPU. Graeme Bartlett (talk) 11:48, 23 September 2011 (UTC)[reply]
Yeah, first-in, first-out, subject to dozens of little parameters which may or may not affect job order.[4][5] 69.171.160.21 (talk) 23:27, 23 September 2011 (UTC)[reply]

Command line in Ubuntu without pressing enter

[edit]

Could you copy-and-paste a command with enter included onto the Ubuntu command line? (the idea is just to make it a little bit user-friendly. Quest09 (talk) 09:34, 22 September 2011 (UTC)[reply]

Yes. If you copy a line with a carriage return at the end and then paste it (Ctrl-Shift v) into terminal, it's automatically run.--Phil Holmes (talk) 09:50, 22 September 2011 (UTC)[reply]
You can also create a shell-script file, and have the user execute the script by double-clicking it in the GNOME interface. Nimur (talk) 17:10, 22 September 2011 (UTC)[reply]
Or use this: https://help.ubuntu.com/community/AptURL ¦ Reisio (talk) 01:13, 23 September 2011 (UTC)[reply]
The solutions above are all nice, but what if I want to put a command on the web-page and let users copy and paste it into their command line (with enter). How would you put that 'enter' on a plaint html page? Quest09 (talk) 11:16, 23 September 2011 (UTC)[reply]

Changing appearance of the screen

[edit]

Is there way to change the appearance of one's screen if, as happened to me the other day, one has the appearance of one's screen to high up? I tried using the cursor arrow key, but would really like to know whether by pressing "Control" in conjunction with one of the F numbers, one can do this. Thank you in advance for any help, ACEOREVIVED (talk) 09:40, 22 September 2011 (UTC)[reply]

Well, by going to the Wikipedia article on Control key just now, I found out that "Control and R" gives a right alignment, and "Control plus L" gives a left alignment, but I would really like to know is whether you can type in "Control" with any key to get an alignment either up or down on one's computer screen. ACEOREVIVED (talk) 15:53, 22 September 2011 (UTC)[reply]

I am having difficulty guessing what you mean by "the appearance of one's screen to high up" and "an alignment either up or down on one's computer screen". I'm going to guess that Typographic alignment is a red herring. Perhaps you're talking about the entire image on the monitor being shifted upward or downward? If so, this problem lies in the settings of the monitor itself, usually accessed through buttons embedded in the frame of the monitor, and the software on the computer can't alter these settings.  Card Zero  (talk) 18:49, 22 September 2011 (UTC)[reply]
Yes, what exactly are you trying to align ? Text within a document ? A window within the screen ? The entire image on your screen ? And what word processor and operating system are you using ? StuRat (talk) 19:59, 22 September 2011 (UTC)[reply]


Just in case this is of help to you, I am using a Dell laptop which uses Windows 7 as its operating system. I thinkn I was trying to align the whole image of Wikipedia - things seem to have been OK tonight, but thank you for getting back to me. It is useful to know that Wikipedia has an article on typographic alignment. Many thanks for your help, ACEOREVIVED (talk) 20:07, 22 September 2011 (UTC)[reply]

Matlab 'function'

[edit]

Hi there! I have some how forgotten using functions in MATLAB.e.g .... function s = sep(go).... if i have made this function in M-file, matlab and want to use the elements of 's' in another function by calling this 'sep' function to use the elements s(1),s(2) etc in some way... how can i use this sep function in another function to get access to the values of 's' calculated from the function 'sep'? i have forgotten the syntax...? Anyone just give a clue to my memory for this.. Thanks. --119.153.219.130 (talk) 12:35, 22 September 2011 (UTC)[reply]

cable internet question

[edit]

This is a followup to my question yesterday about cable modem problems.

I continue to have problems with the cable modem dropping, and they are not scheduled to be here for 5 more days. When it drops, I get solid lights for "power" and "receive". The "send" light has a hard time going solid. My receive/download figures are OK, the send/upstream figures are low.

I have a two-way splitter in my attic. One side goes to the cable modem and the other side goes to a four-way amplified splitter for the TV. I don't need all four outputs of the amplified splitter for the TV. Might it help to take out the two-way splitter and put the cable modem into the four-way amplified splitter? Bubba73 You talkin' to me? 20:25, 22 September 2011 (UTC)[reply]

Not technical help, but I suggest you threaten to cancel, and then do, if they don't fix it. It shouldn't be your problem. If they pass it off to you, get another cable provider, or go with another option like satellite TV, broadcast TV or Internet TV. StuRat (talk) 00:23, 23 September 2011 (UTC)[reply]
It's never a bad idea to bypass a splitter. Each time your cable line hits a splitter, it weakens the signal by at least 3.5db. Keep in mind that (at least in America) most cable providers are only responsible for good signal up to the demark point (Usually a box on the side of the house). Any signal issues that develop after that are generally considered to be the customer's wiring, and hence, the customer's responsibility. If possible, the closer you hook up that modem to the demark point, the better. Avicennasis @ 00:47, 24 Elul 5771 / 00:47, 23 September 2011 (UTC)[reply]
But, if cable isn't working for you, it ultimately doesn't matter why, it just doesn't, so try something else. That's too much to pay for something that doesn't work, whether their fault or not. StuRat (talk) 00:59, 23 September 2011 (UTC)[reply]
If they send someone to fix it and the person finds whatever is at fault is not their responsibility I'm guessing they will charge you for the call out, so verifying that it isn't something that's your responsibility is a good idea. Nil Einne (talk) 01:14, 23 September 2011 (UTC)[reply]
I'm thinking about taking out the un-amplified two-way splitter and plugging the cable modem into the amplified splitter. Could that hurt anything? Could it help my upstream signal? Bubba73 You talkin' to me? 01:17, 23 September 2011 (UTC)[reply]
Because it is an amplified splitter, it is not possible to answer. Some amplified splitters do not pass the signal used by cable modems. Some send a high (unusable) signal that could harm the modem. Some leave the cable signal alone and it makes no difference if you use it or not. Some amplify the cable signal, making it better. Your best option is to plug into the line as close to the outside of the house as possible - just to test it. It sounds like that is in the attic before the first splitter. Then, you will know if the problem is inside or outside the house. -- kainaw 01:45, 23 September 2011 (UTC)[reply]
the way the cable runs it is not feasible for me to plug in closer to the outside, but I can try bypassing the two-way splitter for a while (which would mean disconnecting the TV for the duration of the test). The cable comes in the outside wall, goes up to the attic, where the splitters are, and the cable modem is on a pretty straight shot down. All of the connectors were replaced by the cable guy about 2 months ago and I use a short, high-quality cable from the wall to the modem. However, all of the internal coax is the type they were using 14 years ago. Bubba73 You talkin' to me? 01:55, 23 September 2011 (UTC)[reply]
A Broadband Reports Cable Modems FAQ says There are a lot of amplifiers that will block your cable modem from talking back to your provider, and to look for "Cable modem compatible" or "5-42MHz passive return" when buying an amplifier. Before connecting the modem to it, you might research your amplifier to see if blocks the modem's upstream signal. Your coax wiring may have been setup so the amplifier doesn't affect the modem because of that. --Bavi H (talk) 02:09, 23 September 2011 (UTC)[reply]
Oops, I see kainaw said the same thing while I was researching my answer. --Bavi H (talk) 02:12, 23 September 2011 (UTC)[reply]
The amplified splitter was added by the cable company several years ago. And none of the cable guys that have been here have suggested plugging into it. I'll check to see what it says. Bubba73 You talkin' to me? 02:29, 23 September 2011 (UTC)[reply]
It is an Electroline EDA 2400. It says that it has the 5-42 bypas, but it also seems to say that it drops the return signal 7.5 dB. Bubba73 You talkin' to me? 02:38, 23 September 2011 (UTC)[reply]
Looks like if I had the 2500, it as a pass-through for the cable modem and then I could eliminate the two-way splitter. `Bubba73 You talkin' to me? 02:46, 23 September 2011 (UTC)[reply]
But the 2400 is OK with a cable modem, so I can try the modem on one of the outputs of it and eliminate the two-way splitter. Bubba73 You talkin' to me? 02:56, 23 September 2011 (UTC)[reply]
Well, the internet was down this morning so I took out the two-way splitter and put the modem into the amplified splitter, and it is working right now (obviously). My downstream power incresed by 9.9 dB and the upstream power (where I think the problem is) increased by 2.3 dB to 54dB. Bubba73 You talkin' to me? 15:31, 23 September 2011 (UTC)[reply]
Now it is back to dropping like mad. Bubba73 You talkin' to me? 16:51, 23 September 2011 (UTC)[reply]

Video Editing Software

[edit]

What is the best free video editing software which still has the basic editing tools such as fade in/out sound and media, except for Windows Live Movie Maker? 83.183.172.203 (talk) 22:00, 22 September 2011 (UTC)[reply]

VirtualDub can do all that and is completely free (both free as in beer and free as in speech) - the learning curve is rather steep and the interface is in parts a bit clumsy and unnecessarily complicated, but it's a pretty powerful tool once you've mastered it (out of the box, it is lacking a number of functions you would expect in a video editor, but there's a plugin SDK and huge repositories of plugins that can do anything imaginable with a video stream - I seem to recall that I had to find and install a plugin to do crossfades, which seems to be a rather basic function, but installing plugins is really easy) -- Ferkelparade π 13:03, 24 September 2011 (UTC)[reply]