Is the complete loss of static typing a high price to pay ? I don't think so. Much slower than Java: which benchmarks?
2005/04/18
2005/04/15
Don't throw the baby out with the bathwater
From my perspective this advice is OK:Simplicity Blog: "Wharton's Michael Useem nails one of the things our own Cincom research on business reorganization indicates as vital leading the internal team culture so that it can accept the kinds of change needed for success. 'Hurd should give thought to H-P's culture -- a problematic area for Fiorina, who clashed with longtime H-P employees accustomed to the collegial, time-honored 'H-P way. Here, Hurd should take his guidance from the great Lou Gerstner [former CEO at IBM]. After two years of working to transform IBM - in much the same way Hurd has to do now at H-P -- a barrier to the kind of performance Gerstner wanted was the inward-looking IBM culture. It had a resisting effect within IBM vis-a-vis the kinds of changes Gerstner sensed were critical to turning the company around. He worked hard on reconstituting the culture. For Hurd, the question is going to be whether the H-P culture is where it ought to be to make it the kind of company he wants.'"
but my experience is that the whole culture gets really knocked around - this needs to be done in such a way that the good parts of the culture are not lost. Otherwise you end up with an average (or below-average) company.
I think it is very easy for any company to become inward looking, and this what needs to be changed. Get your engineers/development mgrs/etc. out with customers and ensure that what they learn flows round the organisation. Make sure they haven't become so process bound that they can't breathe without permission. Make sure you change of ethos is real, and affects all the organisation. Again my experience is that the grass-roots devlopers are happy to get out more, but are often restricted by IP concerns, contractural concerns, projects which already take 80 hours a week. And you actually find ( especially when the company is in crisis) that the development managers are given stretch targets in terms of delivering products at the very time you need the developers to be more outward looking. So the top-brass trumpets a new culture, but do not play enough attention to the pragmatic day-to-day decisions that affect peoples careers: what targets are they being set, what behaviours will be rewarded at review time etc.
HP needs to keep the elements of its culture which lead to technologically savvy, high-quality products. A consensus is only a problem if it takes too long, or has only internal priorities to balance.
2005/04/14
2005/04/12
Worried?
UK to use passports to build national fingeprint database | The Register: "but the Government is said to contend that as passports are issued under royal prerogative, it doesn't need legislation to demand fingerprints from passport applicants."
2005/04/11
2005/04/08
2005/04/07
A keyhole on Norvig's Python And Lisp
Python for Lisp Programmers: "GUI, Web, etc. libraries Lisp: Not standard Python:GUI, Web libraries standard"
This is a key problem for Lisp
Scheme (and C) on developerWorks
Higher order functions: "Functions are the wonderful and powerful building blocks of computer programs. Functions allow you to break code down into simpler, more manageable steps. They also allow you to break programs into reusable parts -- parts that are both reusable within the program and in other programs as well. In this article, learn how to create new functions at runtime based on templates, how to create functions that are configurable at runtime using function parameters, and how the Scheme language can be a valuable tool with functions."
2005/04/06
Delocator
Last month I typed:KBM's Web Log: "Dave, run quick, BigCo tentacles have amost dragged you into their domain - perhaps you can still escape. Support your local coffee and book shops !!"
Now I find this: Delocator; need to enable pop-ups
Aftermath of BitKeeper
No More Free BitKeeper:
"A vocal group has long protested Linus' use of BitKeeper, considering Linux the free and open source flagship product. GNU Project founder Richard Stallman [interview] is among the protestors, harshly criticizing Linus' decision to use a non-free (as in freedom) tool "
I have to say I think Richard was right - why sacrifice so much to get a tool which forces Linus to look at things in less detail? Was there no other way?
Was the OSDL contractor working in his own time? Do we want a system where an open community turns into the Marine core to "discipline" its members? I don't think so.
Or have the BitKeeper folks realised that they need to focus on a different market? Why not just say so and leave quietly?
Spotted in Smalltalk Tidbits, Industry Rants
You don't have to live with text editors and command line compilers :)
One of my feelings with VAST (and I assume it would be the same with VW, Sueak etc.) is that integrating with tools ( other than those expressly designed for VW etc.) is expensive. I was delighted when VAJ left the "enclosed IDE" model.
Spotted in Ted Leung on the air
Is it really such a great achievement to be incorporating this feature 8 or 13 years after it appears in Emacs?
Some person had some reason for thinking it would be a good thing for somebody. And until we know what the reason was, we really cannot judge whether the reason was reasonable. It is extremely probable that we have overlooked some whole aspect of the question, if something set up by human beings like ourselves seems to be entirely meaningless and mysterious.
Via Brian Mastenbrook
2005/04/05
Lest we forget
Idle Words: "My own grandfather is older than modern Poland; being in Europe means we can now take the independence and continued existence of this country for granted, a remarkable luxury."
Of course, it depends what you mean by independence! And for how long ? I guess the Roman Empire lasted a few hundred years.
Take that !
Idle Words: "But you, sir, are no painter. And while you hack away at your terminal, or ride your homemade Segway, we painters and musicians are going to be right over here with all the wine, hash, and hot chicks."
One programmer/painter puts down another!
Craftsmanship
gapingvoid: this is a whole different league: "No, sorry. This isn't Designer Label. This isn't Madison Avenue. This is a whole different league."
2005/04/04
2005/04/02
Groan !
memoria technica | Gary Turner's Weblog: "Do you think it would be reasonable to characterise a mean spirited sense of competition existing between two landscape gardening companies, as a turf war?"
Gary will get Scottish humour a bad name.
2005/04/01
Kent Beck: Don't just hang on!
Hmm, food for thought for many I suspect - but what about the pension fund? :-)
Yahoo! Groups : xpbookdiscussiongroup Messages : Message 606 of 625: "Desperately
hanging onto a job by any means necessary doesn't lead to either personal
satisfaction or job security. I think integrity and accountability are
particularly important in a climate of fear. The culture of abundance is
inside your heart, not something you rely on someone else to hand you."
2005/03/30
Be there
So many thoughts and feelings ran through me when I read this:Julie Leung: Seedlings & Sprouts: He is not here: Easter morning 2005: "He is not here"
Maybe I will organise them to write about them, and relate this to my similar yet different experiences.
I thank Julie, and others, who share their deeply personal experiences; it enriches us all.
Heaven in Cubesville?
Joe Beda's EightyPercent.net: "Switching teams at Google is a very fluid process. An engineer can be 40% on one project, 40% on something completely different and 20% on his or her own thing. That mix can be adjusted as project requirements change. Switching groups should also not have an affect on your annual review score because of arbitrary team politics. Joining a new group is more about find a good mutual fit then going through HR and a formal interview loop. "
Worth reading the whole thing.... and showing to your boss ( unless s/he has pointy-hair)
2005/03/28
What is she talking about?
Chocolate and Vodka :: Main Page: "In reality, we're all a bit fiendish and a bit phobic, but understanding how your mind functions will help you to create a set of learning techniques which work best for you."
Diversity of suppliers in less popular languages
Bill Clementson's Blog: "CL Implementations for Mac OS X". Bill points to several different implementations of CL on Mac OS X. More the merrier? Hmm, actually none of them sound that good to me ! Would they be better off collaborating on fewer implementations, and being better at linking to multiple GUI's, stores, SOAP/WS-* for example?
I have similar experience: I have been playing with SBCL and McCLIM on Linux. If I want to continue playing when I only have my Laptop around then I have to do it under Windows. Well, SBCL doesn't run on Windows, but there are several other possible CL implementations. But wait, McCLIM doesn't run under Linux - there is talk about porting it, but that would probably need more people..... but they are too busy build multiple CL implementations.
Of course the answer is to shell out some Euros on a commercial CL implelentation, but that discourages newcomers ( or returners like me) in the early stages of experimentation. It's all about groundwell, folks?
smalltalk.dolphin
newsgroup also had a thread on the viability of Dolphin Smalltalk - this lead to s discussion of this versus VisualWorks. Sounds like the Dolphin guys are building a system for money - great idea ! But how could it be setup so that they don't have to try to maintain a language implementation, IDE etc. Should they start using Visual Works or Squeak? Or could they use a Smalltalk core and add components?
From a commercial point of view, is there an advantage in knowing there are many potential suppliers of a language? Probably. But what if half of them appear not to be small and not flourishing? Well, that coud be worse than just one viable one.
My passing observation is that there is a similar myriad of small Eiffel companies as well.
This situation plays into the hands of Java, C# etc.
What's to be done?
2005/03/27
What is Microsoft's MOF?
Jean Bezivin: "The big challenge is how to cope with the fragmentation problem, i.e. the co-existence of hundreds or even thousands of these DSLs."
I'm an outsider
Julie Leung: Seedlings & Sprouts: The Outsider: why high school never ends: "Doc is right too. We don't have to be like anyone else. The more we try to be like others, the less worth we have. Diversity is beauty."
2005/03/25
Another lesson from Lisp?
fare: What Makes Lisp Great: "What Makes Lisp Great"
Interesting discussion. In the comments, the point made about "pointy-haired managers" not stopping the uptake of Linux is interesting; I wonder whether the next popular language ( or language revival!) will be driven by uptake in the technical community on the Web? Is IBM's adoption of PHP a sign of this phenomenon? I think the adoption of Java was a combination of marketing and smart, quick moves getting Java into browsers.
Making it stick.: Preventing Death: "How much longer can our 'culture of life' continue to ignore millions of deaths a year? "
GPL 3
Free Software Foundation denies GPLv3 forking risk - ZDNet UK News: "'When it's all over people will say about the GPL 3, 'it's better, it's not that different, what's all the fuss about?'' said Moglen. 'People have to trust that we know what we're doing.' This echoes his previous statements where he said that the process was 'going to be a screaming match some days, but it is going to be a noble effort when it's over.'
"
The FSF anf EFF have done a great job so far, so they deserve some trust. There is no imminent crisis, so time can be taken. It would be great if GPL3 helped to staunch the multiplication of Open Source licences.
2005/03/23
2005/03/21
England a success
Spotted in Seth's Blog
In England more people are employed by Indian restaurants than in steelmaking, coal mining, and ship building combined
Obviously we have transitioned away from the old-fashioned manufacturing-based economy !
2005/03/18
Survival of the most flexible?
From James Robertson Smalltalk Tidbits, Industry Rants:
Patrick Logan says that Java and C# (et. al.) are not only dead ends, but doomed:
Not only did Lisp and Smalltalk languages and tools support evolution as well as backward compatibility, the culture and organization encouraged even drastic swings in features.
J/J and C/C do not have those benefits, neither technical nor organizational. They are ultimately doomed, so the word to the wise would seem obviously to get off those platforms ASAP. Invest in systems that have proven themselves already for decades."
So, the big question is, how do you get the advantages of Java/C# ( common libraries, low costs, a huge range of tool builders etc.) for good languages?
Code and Other Laws of CyberSpace updated by wiki
WikiHome: "Lawrence Lessig first published Code and Other Laws of Cyberspace in 1999. After five years in print and five years of changes in law, technology, and the context in which they reside, Code needs an update. But rather than do this alone, Professor Lessig is using this wiki to open the editing process to all, to draw upon the creativity and knowledge of the community. This is an online, collaborative book update; a first of its kind.
Once the the project nears completion, Professor Lessig will take the contents of this wiki and ready it for publication. The resulting book, Code v.2, will be published in late 2005 by Basic Books. All royalties, including the book advance, will be donated to Creative Commons."
Via Slashdot
2005/03/17
Steve Cook on Software Factories
Stage two involves what we’re developing here in Cambridge in conjunction with Redmond, which is the Microsoft Tools for DSL (Domain Specific Languages). These are a way of building customised modelling tools for Visual Studio, so you can essentially define your own modelling language and implement it very simply.
And Steve hasn't changed a bit.....
2005/03/16
Lessig right again
Lawrence Lessig:
"But why Europe would voluntarily adopt a policy that will only burden its software developers and only benefit US interests is beyond me.
They call it a 'democracy' that they're building in Europe. I don't see it. Instead, they have created a government of bureaucrats, more easily captured by special interests than anything in the US."
Couldn't have said it better myself.
2005/03/13
Thanks!
Spotted in The Doctor is in
You people who don't jump on the bleeding edge really should thank folks like me who do.
2005/03/11
2005/03/05
I hear you , brother!
James Governor's MonkChips: SOA = Some Other Acronym: "SOA? SOA What? What is important is discipline. Screw The S and the O. Its all about the A"
We need more A, less M and less H.... and we need D too.
What is brittle?
Spotted in Smalltalk Tidbits, Industry Rants
IBM's own Visual Age toolset was based on the Smalltalk language and "was getting increasingly brittle." The new development environment would have to remain flexible and allow dissimilar tools to plug into it and share files.
2005/03/04
Metacase and Smalltalk?
Steven Kelly on DSM: "Aside from being a Domain-Specific Modeling cheerleader, I'm a member of the 'I'll stop using Smalltalk when they pry it from my cold dead fingers' club."
Is Metacase a smalltalk app ?
Richard Gabriel: Lifetime Achievement
WebMink: "I see that my friend and inspiration Richard Gabriel has been awarded a lifetime achievement award by the ACM. It's richly deserved. He's an insightful and reflective person and has been the philosophical guide behind many startlingly new things Sun has done in the field of software development. "
I agree that Richard is a great influence.
Anyone seen a review of the book mentioned? Innovation Happens Elsewhere
SOA does have pictures
If you register for CDBI ( recommended if you are in this field) you can see some SOA pictures:Communicating SOA:
"We noted a recent ITWorld article by Sean McGrath that suggested that there are no commonly accepted pictures that represent SOA. He said, 'When I think of entity/relationship modeling I see pictures. When I think of data flow diagramming I see pictures. When I think of Jackson Systems Design I see pictures. And so on it goes through network databases to relational modeling to distributed objects. Until we arrive at some of today's buzzwords du jour. Service Oriented Architecture (SOA)'.
He went on to say, 'Without a good set of pictures, SOA might as well stand for Some Other Architecture. On today's pictorial evidence, perhaps it does.'
Well that's very strange. Hopefully CBDI subscribers will think differently because we have made hundreds of images available from our presentation and workshops.
Strangely enough CBDI had been discussing precisely this point recently and we had already set ourselves the task of coming up with just 6 diagrams that depict SOA. In the end we decided upon 11. This suggested set doesn't try to be comprehensive. Rather it attempts to communicate the basic concepts. If you like them we encourage you to use these images to communicate and explain the concepts to others. All we ask is please ensure that CBDI is attributed."
Of course the view in an earlier post about requiring more definite artefacts is still true. I'm interested in diagrams with precise semantics - too often the architecture/golfers diagrams make people feel safe, but say very little.
Practical Common Lisp - on-line forever
Spotted in Planet Lisp
I have on my desk a fully-executed addendum to my contract with Apress that will allow me to keep the full text of Practical Common Lisp online in perpetuity. I hope that having the book freely available will help bring new people to Lisp.
And I think this will help books sales
More on SOA hype
[Spotted in Smalltalk Tidbits, Industry Rants > http://www.cincomsmalltalk.com/blog/blogView?showComments=true&entry=3287310973]
The whole SOA myth makes for a great sales pitch by IBM types to high level 'architect' types whose job involves little more than doodling with crayons and going on IBM sponsored golfing trips. It does not, sadly, translate well to gruntspeak. us grunts are simple folk, we like code examples, we like concrete classes, and by god, we like xml. Anything else and most of us will be flailing about helplessly trying, and failing, to relate to the subject matter.
2005/03/01
I need to move
Scripting News: 3/1/2005: "Basic requirements for a place to live: Starbucks, Barnes and Noble, an NPR station within range."
Darn, Winchester has no Starbucks, no Barnes and Noble - and I was so happy here until Dave pulled the scales from my eyes.
Via Adam Curry, I started listening to Catholic Insider(http://www.rorate.com/catholicinsider/scripts/index.php). Yesterday's podcast was a tour around Trastevere in Rome ( my wife and I visited Rome 2 years ago at this time and loved it but missed this part); one of Fr. Roderick's remarks concerned how the people there had no need of Starbucks as their coffee shops were so wonderful.
Dave, run quick, BigCo tentacles have amost dragged you into their domain - perhaps you can still escape. Support your local coffee and book shops !!
Sean McGrath on SOA - where are the pictures?
ITworld.com - SOA = Some Other Architecture?
I think that one of the problems for SOA is that most of the key concepts are not new - at a conceptual level we are talking about interconnected components. At the level where new stuff starts to show up, e.g. use of Web Services, we are annotating diagrams. We could as easily use CORBA as WS-*
So I am not expecting new types of picture
2005/02/28
Teaching Kids to Program
Spotted in Simon Johnston's weblogGood stuff - Amazon UK doesn't carry the book - will scout around.
2005/02/25
Shinkuro
Cross-platform Groove? :
Spotted in Joi Ito's Web
Just down loaded it - will report back after playing !
2005/02/22
2005/02/21
2005/02/19
2005/02/10
Wow -this is speaking out !
Speaking Out: "Speaking Out":
He lied about the need for war. He knew there were no weapons of mass destruction, because Hans Blix had made that very clear. He knew that Osama Bin Laden wasn't working with Saddam, yet he worked to reinforce that impression. By lying about the need for war, he tricked people into thinking that it was necessary.
He lied about the cost of war. He said it would only take a matter of weeks. He said Iraq's oil stockpiles would cover the costs. He continues to avoid putting the war in the budget. By lying about the cost, he tricked people into thinking the war would be easy.
2005/02/04
2005/02/02
With Flash demo
2005/02/01
Hehehe
Times Online - Britain:
Mr Gates’s camp appeared supremely unconcerned, and had nothing to say beyond confirming that the doodles did, indeed, appear to belong to their man.
Surprisingly, there were no calls for the graphologists to explain how an unstable megalomaniac under enormous pressure became the world’s richest and most successful software entrepreneur, and a hugely generous charitable giver to boot.
Steve Balmer is obviously different
2005/01/28
Use GMAil ,James?
Spotted in Smalltalk Tidbits, Industry Rants
I am a recent convert to GMail - very neat, love the overlaying of a thread of notes, best Web interface to mail I have seen
2005/01/26
Paul Graham strikes again
Paul's latest essay is out:What You'll Wish You'd Known
Should I show it to my kids?
2005/01/20
Crossing-the-chasm for laggards
Via James Robertson:It's Time to Fix Tech Marketing - Computerworld: "'How many consultants does it take to make your software work?'"
Darn, more MBA update required.
Disruptive Programming Languages
Spotted in Bill Clementson's Blog
In that presentation, he used Clayton Christensen's excellent book The Innovator's Dilemma to illustrate how even entrenched programming languages such as Java and C could lose dominance and market share when confronted with disruptive changes in technology
I used "The Innovators Dilemma" for "Open Source in Software Development" in my MBA dissertation, so I am a real sucker for this type of analysis. It is interesting that more and more presentations on new languages seem to be popping up; dissatisfaction with the main languages is growing, or is this a quest for more research grants? My bet is that it is the former, and a language radically different from C/C++/Java will emerge ( hopefully sooner rather than later).
Good luck Bill
Good luck to Bill Clementson: Spotted in Bill Clementson's Blog Sometimes unplanned career changes really help - I hope this is the case for Bill and the many other PeopleSoft folk.
MDA Limitations?
Forrester Report Shows Developers Reluctant To Adopt MDA:
When companies hear about MDA, they are superficially interested, but when they realize what it entails, they back away. They fear MDA is rigid, is slow and will be difficult to implement
Awesome indeed
Spotted in Lemonodor
" "I became interested in Lisp-like languages mostly from hearing Python programmers look for x in the language, "because Lisp has it". So about two years ago, I armed myself with ANSI Common Lisp, and dived in. Since then, PAIP, The Little Schemer, The Seasoned Schemer, Lisp in Small Pieces, SICP, On Lisp (dead-tree version), EOPL, CLtL, etc. And I haven't looked back; it's over a year since I coded a program more than 100 lines in something other than CL/Scheme. As has been put in more eloquent ways on the RtL highlight reel, all other languages just look fundamentally wrong and unwieldy by comparison. More importantly, from c.l.l and p.l.o traffic, it seems that we're growing in number "
Awesome. "
Mid-rank nerd
Via WebMink:Wx Plotter Fun Tests - Nerd Quiz: "
"
How do I feel about this? Obviously WebMink is happy to be a Nerd - not sure I would be. But then perhaps it would be better to be totally unNerdy....
2005/01/18
Don't compare the Mac Mini to the usual PC
Macintosh: It's a User Thing: "The Mac Mini is a game changing system. This thing is so small and cheap, it's opening up new possibilities. Put a Mac wherever in the home it would be handy to have a computer. The Mac Mini is a wonderful example of Apple thinking different that's going to be very profitable for them, and grow their market share significantly. It's the best thing they've done in computers since the iMac. Hell, I never did like the iMac that much. Possibly it's the best thing Apple's done in computers since the original 128K Mac. Despite Apple's perennial lagging in the Java and office software spaces, I'm more bullish on Apple than I have been in a long time. It's a great time to be using Macs or selling Mac software."
"The real problem with this, and dozens of similar posts and articles I've seen around the Net, is that they aren't comparing oranges to oranges. Instead they're comparing tangerines to grapefruits. A Mac Mini is not equivalent to a $499 Gateway PC or white box. It is better than these boxes. Size and design matter. "
I've just got to see one of these things - and I'm someone who puts together computers for th home - erhaps I'm jus getting lazy!!
2005/01/17
Open Source Rexx
Catching up on James' blog:The Rexx Language Association - Press Release: "IBM Contributes Scripting Language to the Rexx Language Association"
I used to use Rexx ages ago, and a very good scripting language it was too.
But am I going to look at ObjectREXX now, after so much water has flowed under the bridge, and new languages, especially Python, seem to fil this spot now? Life is too short to investiage every new language......
How do you know want you want, if you don't know what is available?
Spotted in Smalltalk Tidbits, Industry Rants
I seem to remember Paul Graham making this point in "Hackers and Painters"; languages train you to think in their terms. Looking at a new language isn't enough - you have to get in there and try things out, otherwise you won't see the new; instead, look at what other exponents are doing and see whether it helps you - if it does how would you do it in your "normal" language?
Lip macros are a classic - hard to see why you might want them, especially if your language already has something clalled macros.
The New Analysts
Since James was kind enough to comment on this blog, here is a pointer. A supericial skim shows something interestin. deli.cio.us pointer added for follow-up.
Spotted in WebMink
2005/01/15
How to drive up your blog traffic!!
Jacqueline Mackie Paisley Passey: Blogger myths and facts!: "I frequently blog naked!"
PS: I don"T BTW!!
Via scoble
2005/01/12
David Soleimani-Meigooni sez: Curcumin also has many other clinical properties such as anti-cancer/anti-tumor, anti-inflamatory, and anti-oxidant properties."
Sound good ; where can I get thm in the UK?
Whiteboard UML /= UML 2 ?
Quest in Time: Unwanted Modeling Language: "That UML 2.0 is so geared towards Model Driven Architecture (MDA) that it will loose its focus as, and capability for, general analysis."
Fred also points to Martin Fowler's 2003 post with a similar theme.
But what are the specifics? What is missing or what was added that gets in the way ? I think some great diagrams have been added. And if you are sketching you can ignore the semantics that get in the way.
BTW the Rational's Eclipse based modeling tools referred to in Fred's earlier posting would be one of Rational Software Modeler(RSM) or Rational Software Architect, I assume. And they are both available .
2005/01/11
2005/01/07
Have Skype, will travel
Spotted in BeyondVC I think the combination of voice over IP and presence information is very good. BigCo IT departments are trying to stop this citing security and bandwidth problems. I have not seen mention of any Skype security concerns. On the subject of cost savings from Skype, they can be used to justify upgraded infrastructure.
If anyone has seen any case studies on adopting Skype ( or similar) in a corporate environment, let me know.
2005/01/06
Well done Southampton University
Quite old news but I missed it completely:Press Releases - University of Southampton
Crystal Balls
Graham Glass, etc.: "IBM announces a new open source language, intended as a successor to Java, that runs on existing JVMs and CLRs. This seems like a natural extension of their existing open-source strategy, and would allow such a language to evolve quicker than through the current means."
2005/01/05
Rumo[u]r mill - Live Journal
Six Apart to buy Live Journal?
So long as BizOrg still works with the resulting system I give my approval:-)
2005/01/04
Java IAQ
A very intersting resource for Java coders:Java IAQ: Infrequently Answered Questions: "Infrequently Answered Questions"
Via William Bland
2005/01/03
Scheme and Java
Making it stick.: 3MLOC: "and indeed, Scheme! Yes, the JVM source includes jscheme.jar, used to generate some CORBA classes"
Good luck Grady
Grady Booch faces a tough choice:developerWorks : Blogs
And he compares it with that great human disaster in the Indian Ocean. One personal choice, and the death and suffering of thousands ; life can be tough on any scale you care to look at it. There are no perfect solutions, no fail-safe prevention strategies -we just have to keep going.