Sunday, January 22, 2012

tab sweep, 2012.01.22 part 1

I had the idea of doing a tab sweep before I ever heard it called that, but having found this name, I might as well use it.  Sharing is better than not (unless it's crap(), links are the spider silk that holds the web together, and writing a one-line review will help me remember it better than simply adding it to another bookmark folder etc.  And it may inspire some discussion and knowledge sharing, or at least serendipitous clicking...

  • http://www.codemaps.org/ -- apparently has been around for a couple years; there are some diagrams of open source packages like Lucene... okay, on closer look it appears this is mostly(?) advertisement for an eclipse plugin from Architexa that does UML diagramming for mostly java.  Which is fine.  But like other academic spin-offs, it is unclear how much backing and (business) drive behind, balanced against how much more useful it might be if it were given away, and how much more it might be adopted.
    And the related business issues:  "How do we make money if we give it away?"  ".. but then N-times more people will use it, a small portion will result in sales/licensing/training/customization" etc.
    There is some paper on something called 'codemaps' that might be a visual studio plugin..
    As with mindmaps, UML diagrams seem to have a useful life only during part of the learning curve; after you are familiar enough with the terrain, the map is no longer useful.  Or you need a different, showing different information, at different scales.
    I am also interest in 'active' maps -- I'm not sure I've seen a UML diagram displaying runtime activity or stats, except maybe special purpose in some academic papers.
    For UML diagramming while learning code / class relationships and similarities,
    ArgoUML is pretty nice.  Read in your source files and then you can drag-n-drop classes of interest and it automatically adds the relationships.  Hmm..  how to handle updates?
    UMLGraph is free and can be automated; there is an ant task that can add diagrams to your javadoc too, but since it's really a diagram specification, and GraphViz handles the drawing, it is not tied to any language or tools or formats..

    I like the concept of being able to 'visualize software' but haven't seen the magic bullet yet..
  • Tracking the Trackers: Where Everybody Knows Your Username from Stanford Law School
    not particularly new for me, because I have been at one of the top online ad companies, and took part in design of a project that would receive user info from the ISP (income, demographic profiles) and join it with other information providers than had credit scores, household buying info, etc.
    There are a number of links and tools there to follow, and also a well-described methodology.  I am somewhat inspired against to work on a rule-based rewriting proxy that can persist my browsing history or be use for spidering / heuristic search, and also answer / collect info on topics like
     - how many sites use X (where X is some package, framework, software version, hosting provider, technology feature, etc.)
     - what ad networks does this site use, and the reverse query
     - what is this cookie format?  how is it decoded?  and, (if multiple users shared this) how does it vary per user?  can it be hacked?
     - how often is this (html) tag actually used?  who uses it (a package, a tool generator, a design firm)? 
     - trend analysis (when did this term first appear / reach some threshold), latent semantic tools
     - general IR capabilities, because information is easier to retrieve when you have information.

    Something like muffin (a customizable proxy with plugin architecture), db storage, a simple rule base handles a lot of this..
.. that was only like 2.5 tabs I had; to be continued.

Wednesday, March 23, 2011

NeoOffice / OpenOffice "Error saving the document " -- Can't save file!

You've been working on your document, maybe go away for a while, come back and realize you haven't saved it.  But when you try to save,
an error dialog comes up saying "Write Error", with no additional information...

You try changing the file name, saving to a different directory, checking disk space..  everything looks fine, but it won't save.  What to do?  Quit it, and have faith that the 'Recover files' dialog will bring it back?
Copy your document, or at least the changes (f you can), into textedit or another program?

To encounter this situation is disconcerting, to say the least.

After a little searching,
NeoOffice bug #
http://bugzilla.neooffice.org/bug.php?op=show&amp;bugid=3293<br>

Easy solution:
from the existing document,
select all and copy
cmd-N (or on windows: ctrl-N) to make a new window.
paste -- you now have a copy of your document.
Save this new one.

For me, these errors happened after starting NeoOffice a few days ago (12) and then deciding to save some 'untitled' documents I had created and entered minor amounts of data/text into. &nbsp;They hadn't been saved previously, and had been opened for several days. &nbsp;The bug says this:

"The key thing to do to avoid this bug is to not keep and .od* document
open for more than a day or two. If you periodically save a file, close
it, and reopen it, you can avoid this bug."

Another note is "Update: in this instance, with Writer giving the error, I was able to Save As in ANY format EXCEPT .sxw, .stw, .odt, and .ott."

Another link mentions something about tmp files, which on the mac seem to be somewhere under a path like&nbsp;
$ set | grep /var/folder
TMPDIR=/var/folders/GX/GXRi3TKjExSdAlvXgP45k++++TI/-Tmp-/
some OS cleanup process could be removing files from here. &nbsp;
I've not tried tracing the process&nbsp;(ptrace/strace)&nbsp;since I have a workaround, but it seems plausible enough.

apparently this has been going onsince 2006:
http://openoffice.org/bugzilla/show_bug.cgi?id=69993<br>

Tuesday, December 28, 2010

Selling your old electronics

Image representing iPhone as depicted in Crunc...Image via CrunchBaseThis is something I really never consider, while I have some friends that do it regularly, always upgrading / buying new devices.

My reasons not to:
  • lazy
  • seems like too much trouble
  • it works now, why bother?
  • it's too much trouble to change
  • I guess I am content "enough" -- I don't have device lust, and seem to care less and less about new things coming out.
  • not spending money == good.
Sounds like good reasons to me. On the other hand, if you've "gotten your money's worth" (for some value of worth), and the device still has market value.

But enough about me.

I came across this (old) random article "Where to Sell Your iPhone 3G: ", which had like to a number of sites. Check out my iPhone 3G, now over 3 years old...

parameters: near perfect condition, no scratches, all accessories +
  • http://www.selliphoneforcash.com/ - $103
  • http://www.buybackworld.com/ - $104
  • http://cexchange.com/online/home/index.rails - $97 or $115 if I call it excellent..
  • http://takemymac.com/ -- too many questions.. ok, should get email in 48hours
  • http://www.techtwurl.com/ - $110
  • http://www.yourenew.com/ - 85$
Note that all of these (except for the first?) deal with other devices besides just iPhones.

For those that think trading in your old thing for something newer is green, or trading in your land boat for a Prius or other hybrid -- it's not. It takes a huge amount of energy to create those new devices. You won't get to the break-even point until you drive 100000 miles or so.

Of course, re-use is better than re-cycle, is better than throwing away,
but how do we get closer to understanding the true cost/value of a thing ?

.. testing zemanta..
Enhanced by Zemanta

Thursday, October 14, 2010

Cygwin: Update your packages / Install a new one in less than 5 minutes

[what is cygwin? like unix for windows. a better shell and command line.]
Actually, it's the same way you _install cygwin_ ..
Just faster because you don't have to download as much.

If you're installing cygwin for the first time, installing a single missing package,
or updating your install to the latest version, it's the same.
  1. Run cygwin's setup.exe -- the same one you used to install cygwin.
    This took me 2 minutes, because I couldn't remember where I put it.
    Better: just go to cygwin.com and click the Install or update Cygwin now! link and you'll have the latest installer.
  2. click, click, click, just click through, all your previous settings were saved.
    List of mirrors is downloaded
    ..hang?
    Pick a new mirror if you want. I used to think http: servers provided better downloads, but now I think they just hang more often. Use http: only if ftp: doesn't work for you (e.g. problems with ftp because you're behind a firewall).
  3. The list of packages is downloaded. This should be pretty quick; if you don't see any activity within 15 seconds or so, cancel and go back to 1.
  4. Select / search for the package(s) you want. Just type in the search area (e.g., cygrun) to find the package and select for install.
    (? if you don't know the package name.. where is a search for files ?)
    old ones are updated automatically ?
  5. Click next to install. All the package(s) are downloaded and installed.
    If it hangs, cancel and go back to 1. Maybe try a new mirror?
  6. "Can't install , file is in use" -- this can happen if
    1. you are running the .exe; for example, bash.exe and you have a bash.exe window open
    2. you are updating a .dll which is in use by your exe or service
    3. service is running, such as sshd. Do this:
    • open a cmd window
    • find the service(s) with the following command:
      net start | findstr /i cyg
      the service(s) names are printed
    • stop the service with
      net stop "CYGWIN sshd"
      replace with the name you have. (? other services besides CYGWIN ?)
    • click Retry on the dialog warning box
    • It should continue now. When you get to the end, remember to restart with
      net start "CYGWIN sshd"
      This is a generally useful way to stop/start services easily from the command line or from a script. If you prefer the slow way of clicking, you can run services.msc
  7. Finished!
    after updating my 1.5.x to 1.7.x, I get this for the cygrund package:
    Postinstall script errors
    Package: No package
    passwd-grp.sh exit code 1
    I got something like this when I first updated, but I haven't noticed any problem.
Actually, it could take more than 5 minutes, if there are slow downloads.
Once you get the hand of it though, it will probably only take two minutes to grab a missing package.

Because updating/adding a package is so easy, the first time you should click through and accept the defaults, then later adding missing features. I used to spend a lot of time going through all the packages, trying to decide if someday it might be useful. This just takes up more space, and more time later when upgrading.

Enhanced by Zemanta

Tuesday, October 5, 2010

OSX: Constant disk activity after attaching a disk to Mac

Mac
(windows and linux, keep reading)

What it probably is: spotlight indexing.
If you're just hooking up a drive to copy some data or look for something, then this can be a hindrance to your work.

Verify that it is this process with:
sudo fs_usage

this will show all I/O activity, which will be a lot because it will include every line of text coming out to the terminal as well. Filter it with something like

sudo fs_usage | egrep -v 'screen|grep|head' | head -20

If you see mdworker, that's spotlight indexing going on.
If you see backupd, that's Time Machine (but you may have noticed the spinning icon in the menu bar).

Turn off indexing with:
mdutil -i off /Volumes/mountname

It may take 30 seconds or so (depending how busy it is) before you see
Indexing disabled.

You can turn it back on later by specifying 'on' instead of 'off'.

There are many other usages; you can use fs_usage to find what configuration or plist file(s) a program is using, where your data is going to on disk, etc.

Here's a MacWorld article: Watch file system activity in real time

Windows
On windows, get fsmon; it's one of the sysinternals tools.
regmon will do the same thing for registry accesses.

I've used fsmon to discover trojan processes before.
Windows == virus.

Linux
atop is supposed to come with ubuntu.
I don't think it gives specific paths in output, but once you have the pid you can connect with strace and just look at the IO syscalls, or use lsof to find which files are currently in use.



any other tools of note?


Enhanced by Zemanta