Search Results

Search found 27152 results on 1087 pages for 'google cache'.

Page 829/1087 | < Previous Page | 825 826 827 828 829 830 831 832 833 834 835 836  | Next Page >

  • pfsense CARP - wan failure on firewall

    - by eldblz
    I have recently configured 2 firewall (on 2 DELL PowerEdge R210II with ESXI 5.1) with pfsense. We have several LANs and 2 WANs. Everything is running fine but i have a strange behavior: i can access internet from alla LANs but not from the firewall (itself). For example the firewall cannot retrive package information or if i setup a gatway monitor ip (like google 8.8.8.8 ) this fails. These are the screenshots of firewall configuration: http://imgur.com/a/LNuMz#0 ATM i kept firewall rules to minimum to avoid problem or conflicts. Any ideas how to solve the problem? Thank you in advance.

    Read the article

  • 3D Vector "End Point" Calculation for procedural Vector Graphics

    - by FrostFlame64
    Alright, So I need some help with some Vector Math. I've developing some game Engines that have Procedural Fractal Generation for Some Graphics, such as using Lindenmayer Systems for generating Trees and Plants. L-Systems, are drawn by using Turtle Graphics, which is a form of Vector graphics. I first created a system to draw in 2D Graphics, which works perfectly fine. But now I want to make a 3D equivalent, and I’ve run into an issue. For my 2D Version, I created a Method for quickly determining the “End Point” of a Vector-like movement. Given a starting point (X, Y), a direction (between 0 and 360 degrees), and a distance, the end point is calculated by these formulas: newX = startX + distance * Sin((PI * direction) / 180) newY = startY + distance * Cos((PI * direction) / 180) Now I need something Similarly Equivalent for performing this Calculation in 3D, But I haven’t been able to Google anything that could show me how to do this. I'm flexible enough to get whatever required information is needed for this method calculation, in any reasonable form (Vector3, Quaternion, ect). To summarize: Given a starting point/vector position in 3D space (X, Y, Z), a Direction in 3D space (Vector3, Quaternion, ect), and a Distance, I need to find the “End Point” in 3D Space. Thank you for your time and help.

    Read the article

  • how to install curl 13.04 with depency error

    - by whale_steward
    how to install curl in ubuntu 13.04? it always throw this error : Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: curl : Depends: libcurl3 (= 7.29.0-1ubuntu3) but 7.29.0-1ubuntu3.2 is to be installed E: Unable to correct problems, you have held broken packages. when using sudo apt-get update, it shows: 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. here are the steps i had done : using sudo apt-get install curl removing google-chrome-stable and chromium browser then sudo apt-get install curl use sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean then run the 1st step again. also i have tried : How do I resolve unmet dependencies? and still throw the same error. at this point i dont know what i did wrong, is curl impossible to install in ubuntu ?

    Read the article

  • Clonezilla multiple disks restore to single disk

    - by Farseeker
    I have a clonezilla image from a machine that had 3 seperate disks (one partition per disk). I want to know if I can restore that image to another computer that has a hard drive that's much larger than the original, but only has one drive. Clonezilla is stating that it can't do this automatically, and perhaps I should try cnvt-ocs-dev but I've no idea what that means (Google is less than forthcoming with information about it too). Ok so I found out what cnvt-ocs-dev is, and that allows me to move source/destination targets between physical disks, but it doesn't seem to be able to move the partition as well.

    Read the article

  • Nagios Check_hpjd giving me problems!

    - by Mister IT Guru
    When I run the following [root@host plugins]# ./check_hpjd -H printer1.mydomain.com : Timeout from host printer1.mydomain.com I have Net-snmp installed on my system, I noted that i didn't have net-snmp-utils installed, and then I was able to run [root@host plugins]# snmpwalk -Os -c public -v 1 printer1.mydomain.com system sysDescr.0 = STRING: HP ETHERNET MULTI-ENVIRONMENT sysObjectID.0 = OID: enterprises.11.2.3.9.1 sysUpTimeInstance = Timeticks: (325408663) 37 days, 15:54:46.63 sysContact.0 = STRING: sysName.0 = STRING: printer1 sysLocation.0 = STRING: sysServices.0 = INTEGER: 72 So I know that the printer is working as expected, (as far as SNMP is concerned). But when I run [root@host plugins]# ./check_hpjd -H printer1.mydomain.com -C public Error in packet () I get this error - From what I've tried so far, I know my host can communicate via SNMP, I know the printer responds via SNMP, so I guess I'm left to look at the plug-in, which I will be checking up on. I'm new to SNMP, I am investigating this with my good friend Google search, but I am on a learning curve here, so please forgive my questions if they sound stupid,

    Read the article

  • How to fetch a cpu status thought net-snmp

    - by Steve.DC.Tang
    I want to fetch a device's cpu and memory status thought net-snmp. I get my device's info with this command: snmpwalk -v 2c -c public 210.38.xxx.xxx system And I got this info: SNMPv2-MIB::sysDescr.0 = STRING: Ruijie High-density IPv6 10G Core Routing Switch(S8606) By Ruijie Network SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.4881.1.1.10.1.43 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (1978814424) 229 days, 0:42:24.24 SNMPv2-MIB::sysContact.0 = STRING: SNMPv2-MIB::sysName.0 = STRING: S8606 SNMPv2-MIB::sysLocation.0 = STRING: SNMPv2-MIB::sysServices.0 = INTEGER: 7 Now I want to fetch the cpu status, and I search my question on Google, somebody offer a oid for query the cpu status: snmpwalk -v 2c -c public 210.38.xxx.xxx usageOfCPU But it doesn't worked : No log handling enabled - using stderr logging usageOfCPU: Unknown Object Identifier (Sub-id not found: (top) - usageOfCPU) Somebody told me some switch has its private MIB, and you can use it to see its CPU status, is that right? I hope someone can solve me question......

    Read the article

  • How to Get AirVideo Features in Android for Free

    - by Zainul Franciscus
    AirVideo makes it possible for iPhone, iPad, or iPod Touch users to stream any video format on their devices. If you’re an Android user, then you are in luck, because you can get AirVideo’s features for free with VLC-Share. In today’s tutorial, we will start off by giving you an instruction on how to install VLC-Share, followed by configuring firewall and port forwarding, and we complete the tutorial with a walk through of VLC-Share features. Wallpaper available from our Naruto Customization set. Latest Features How-To Geek ETC How To Make Hundreds of Complex Photo Edits in Seconds With Photoshop Actions How to Enable User-Specific Wireless Networks in Windows 7 How to Use Google Chrome as Your Default PDF Reader (the Easy Way) How To Remove People and Objects From Photographs In Photoshop Ask How-To Geek: How Can I Monitor My Bandwidth Usage? Internet Explorer 9 RC Now Available: Here’s the Most Interesting New Stuff Smart Taskbar Is a Thumb Friendly Android Task Launcher Comix is an Awesome Comics Archive Viewer for Linux Get the MakeUseOf eBook Guide to Speeding Up Windows for Free Need Tech Support? Call the Star Wars Help Desk! [Video Classic] Reclaim Vertical UI Space by Adding a Toolbar to the Left or Right Side of Firefox Androidify Turns You into an Android-style Avatar

    Read the article

  • Desktop Fun: Wolves Wallpaper Collection

    - by Asian Angel
    Wolves represent aspects of nature that refuse to be tamed, seeking to remain forever free. If you feel a special kinship with these spirited creatures, then you will definitely want to bring this beautiful pack home to your desktop. Note: Click on the picture to see the full-size image—these wallpapers vary in size so you may need to crop, stretch, or place them on a colored background in order to best match them to your screen’s resolution. Latest Features How-To Geek ETC Should You Delete Windows 7 Service Pack Backup Files to Save Space? What Can Super Mario Teach Us About Graphics Technology? Windows 7 Service Pack 1 is Released: But Should You Install It? How To Make Hundreds of Complex Photo Edits in Seconds With Photoshop Actions How to Enable User-Specific Wireless Networks in Windows 7 How to Use Google Chrome as Your Default PDF Reader (the Easy Way) Bring a Touch of the Wild West to Your Desktop with the Rango Theme for Windows 7 Manage Your Favorite Social Accounts in Chrome and Iron with Seesmic E.T. II – Extinction [Fake Movie Sequel Video] Remastered King’s Quest Games Offer Classic Gaming on Modern Machines Compare Your Internet Cost and Speed to Global Averages [Infographic] Orbital Battle for Terra Wallpaper

    Read the article

  • What does drag lock do in boot camp?

    - by MacBookNewb
    In the control panel for my mac book pro I have an icon called Boot camp. Inside there and inside the trackpad tab I have an option called drag lock. It sounds useful to me as I sometimes find it awkward dragging long distances. I can't figure out how to use it though. Can someone explain how I can find out more info on drag lock? I can't find any references on google. Also even without the dragging option on I can drag.

    Read the article

  • Difference between two kinds of Bing URL Referers

    - by joshuahedlund
    Most of the referral URLS that I get from Bing have the following syntax: http://www.bing.com/search?q=keywords+keywords&[some other variables] However I just noticed that maybe 10-20% of them are coming in like this: http://www.bing.com/url?source=search&[some other variables]&url=http%3A%2F%2Fwww.example.com/user-landing-page-on-my-site&yrktarget=_top&q=keywords+keywords&[some other variables] The first syntax gives me the keywords the user typed in, but the second actually gives me the keywords the user typed in and their landing page on my site. I was originally unaware of this second kind altogether because I have a customized referral report that filters out URLs containing my domain. But now that I noticed them I want to know why they occur to see if I can get more to occur this way because the second syntax contains more valuable information. If I go to one of the first URLs, it gives me a typical Bing query page. The second URLs seem to just redirect me to the Bing home page. I'm not sure if it has to do with the kind of search being performed (I also get a few http://www.bing.com/shopping/search?q= referers) or some other metric. Does anyone know what causes some referral URLs from Bing to have the /search?q syntax and others to have the /url?source syntax? P.S. I have verified that I am getting both kinds of URLs from non-advertising clicks. P.P.S. I am not talking about data in Google Analytics or similar software but the raw $_SERVER['HTTP_REFERER'] value coming from the client's original request.

    Read the article

  • How can I make my monitor run at it's native resolution under Kubuntu 9.10?

    - by Adam Matan
    Hi, I have installed Kubuntu 9.10 afresh on an HP desktop computer with a Samsung SyncMaster 2243 and Intel integrated graphics card. The screen resolution is fixed on 1280x1024 instead of the native 1680x1050, which makes my eyes bleed. $ lspci -k |grep "VGA" -A2 00:02.0 VGA compatible controller: Intel Corporation 82G33/G31 Express Integrated Graphics Controller (rev 10) Kernel driver in use: i915 Kernel modules: i915 and my xorg.conf: /etc/X11$ cat xorg.conf Section "Device" Identifier "Configured Video Device" Driver "vesa" EndSection Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" EndSection Any ideas how to make this driver work? I found no working solutions on Google searches. Thanks, Adam

    Read the article

  • How do I configure Ruby On Rails on windows XP with APACHE and MYSQL

    - by Gaurav Sharma
    Hello Everyone, It has been quite some time I am struggling to get Ruby On Rails working on my System which is having Windows XP operating system. I am trying to configure ROR to use apache and mysql so that I do not have to install additional servers to run ruby on rails. I also tried InstantRails but faced same problems. I went through the tutorial mentioned in getting rails to wrok on a windows machine running xampp and did all the steps which were necessary. All went fine (installing rails, running the ruby, gem and rails command from command prompt) but when I tried to run my application by typing localhost:3000/say/hello nothing happened and I was redirected to the google page for searching to this keyword. Please help me Thanks

    Read the article

  • How can I limit CloudFront downloads

    - by Alex Crouzen
    I'm looking to use Amazon's CloudFront to host some content in the near future. Currently, I'm keeping it very simple and I'm just uploading my content to S3 and then making a distribution available via Cloudfront. However, because I have a limited budget, I'd like to be able to limit the number of downloads or the money spent on bandwidth. As far as I can see, I can't set any quotas or budgets like you can in Google's App Engine, so I'm looking for another way of doing this. Has anyone had any experience doing this? One approach I'm thinking of is having to place a webserver with redirects in between, but that kind of defeats the simplicity of CF for me.

    Read the article

  • developers-designers-testers interaction [closed]

    - by user29124
    Sorry for my bad English, and also you may not read this and waste your time, because it is just a lament of layman developer... Seems no one want to learn anything at my workplace. We have Mantis bug tracker, but our testers use google-docs for reports and only developers and team lead report bugs in Mantis. We have SVN for version control and use Smarty as template system, but our designers give us pure HTML (sometimes it's ugly for programmers, but mostly it's OK) in archives, and changes to design made by programmers go nowhere (I mean designers use their own obsolete HTML and CSS most of the time). We have a testing environment but designers don't have access with restricted accounts to it. So we can only ask them where to look for the problem and then investigate the problem by ourselves (and made changes to CSS by ourselves (that go nowhere most of the time...)). I will not mention legacy code without documentation, tests, or any requirements, just an absence of real interaction in triangle programmers-designers-testers. I'm not talking about using HAML, SASS, continuous integration, or something else, just about using basic tools by all participants of the development process. Maybe the absence of communication is not a problem in short-time projects, which will finish up in 2 months time but rather on the types of projects that lasts for years. Any comments please...

    Read the article

  • MongoDB on FreeBSD

    - by Hartator
    We are currently using MongoDB 2.0.0 on MacOS but our servers are running FreeBSD. The most recent port of MongoDB is the 1.8.3 version. I have tried to compile the 2.0.0 by hand but I came across errors that I didn't manage to fix. I came across on the Internet a few old resources which are saying that MongoDB does not run well on FreeBSD mainly for performance issue (memory mapped files). Is that true ? Does it mean we have to switch our server to another OS ? Thanks for your opinions! Sources : http://groups.google.com/group/mongodb-user/browse_thread/thread/8131b7e5a5c710d9 http://ivoras.net/blog/tree/2009-11-05.a-short-time-with-mongodb.html

    Read the article

  • Is It Possible to Change Default Windows Idle Time for Task Scheduler?

    - by alharaka
    From the official Microsoft docs: Detecting the Idle State The Task Scheduler service will verify that the computer is in an idle state every 15 minutes. The computer is considered idle if all the processors and all the disks were idle for more than 90% of the past 15 minutes and if there is no keyboard or mouse input during this period of time. Besides, any presentation type application that sets the ES_DISPLAY_REQUIRED flag will make Task Scheduler to not consider the system as being idle. In Windows 7, Task Scheduler considers a processor as idle even when low priority threads (thread priority < normal) execute. Is there any way to change the time to less than 15 minutes minutes? Am I assuming this hard-coded and impossible? My Google-fu has eluded me so far and I found nothing, but wanted to check here before giving up.

    Read the article

  • 3D rotation matrices deform object while rotating

    - by Kevin
    I'm writing a small 3D renderer (using an orthographic projection right now). I've run into some trouble with my 3D rotation matrices. They seem to squeeze my 3D object (a box primitive) at certain angles. Here's a live demo (only tested in Google Chrome): http://dl.dropbox.com/u/109400107/3D/index.html The box is viewed from the top along the Y axis and is rotating around the X and Z axis. These are my 3 rotation matrices (Only rX and rZ are being used): var rX = new Matrix([ [1, 0, 0], [0, Math.cos(radiants), -Math.sin(radiants)], [0, Math.sin(radiants), Math.cos(radiants)] ]); var rY = new Matrix([ [Math.cos(radiants), 0, Math.sin(radiants)], [0, 1, 0], [-Math.sin(radiants), 0, Math.cos(radiants)] ]); var rZ = new Matrix([ [Math.cos(radiants), -Math.sin(radiants), 0], [Math.sin(radiants), Math.cos(radiants), 0], [0, 0, 1] ]); Before projecting the verticies I multiply them by rZ and rX like so: vert1.multiply(rZ); vert1.multiply(rX); vert2.multiply(rZ); vert2.multiply(rX); vert3.multiply(rZ); vert3.multiply(rX); The projection itself looks like this: bX = (pos.x + (vert1.x*scale)); bY = (pos.y + (vert1.z*scale)); Where "pos.x" and "pos.y" is an offset for centering the box on the screen. I just can't seem to find a solution to this and I'm still relativly new to working with Matricies. You can view the source-code of the demo page if you want to see the whole thing.

    Read the article

  • CheckPoint VPN-1 SecureClient inability to navigate behind a Linksys WAG300N

    - by user46819
    I have a Linksys WAG300N, I'm accessing my LAN with Wifi and everything works fine on my Windows 7 Enterprise laptop. When I try to connect to my company's VPN the connection succeeds, but I cannot access any internet site either within my work network or public site like Yahoo or Google. In my Linksys control panel I already verified all types of VPNs are enable to passthrough. Normal IPSec and Windows VPN worked in the past without any problems. CheckPoint seems to have a solution, but I do not have the ability to change the IP in my client and of course using another NAT device in between is not a solution for me. Edit: adding link to the Checkpoint solution, https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doGoviewsolutiondetails=&solutionid=sk26189

    Read the article

  • IOUG SIG Webcast on October 30th : Performance Tuning your DB Cloud

    - by Anand Akela
    The Oracle Enterprise Manager Special Interest Group (SIG) is a growing body of IOUG members who manage or are interested in all aspects of Oracle Enterprise Manager. This IOUG SIG is managed by volunteers and supported by Oracle Enterprise Manager product managers and developers. The purpose of the SIG is to bring relevant information and education through webcasts, discussions and networking to users interested in learning more about the product, and to share user experiences. On October 30th at 10 AM pacific time, Oracle Enterprise Manager SIG is hosting a webcast on "Performance Tuning your DB Cloud in OEM 12c Cloud Control - 360 Degrees". In this webcast, Tariq Farooq , CEO, BrainSurface and Mike Ault, Oracle  will provide a tutorial on how to monitor and perform performance tuning of the Oracle database cloud environment. You will learn how to leverage Oracle Enterprise Manager for tuning, trouble-shooting & monitoring your Oracle Database Cloud Ecosystem. The session covers lessons learned, tips/tricks, recommendations, best practices, gotchas and a whole lot more on how to effectively use Oracle Enterprise Manager Cloud Control 12c for quick, easy & intuitive performance tuning of your Oracle Database Cloud. Session Objectives:• Leveraging OEM12c Cloud Control for Oracle DB Tuning/Monitoring • Limited Deep-Dive on AWR • Oracle DB Cloud Performance Tuning • Best Practices for DB Cloud Maintenance/Monitoring Register Now ! Stay Connected: Twitter |  Face book |  You Tube |  Linked in |  Google+ |  Newsletter

    Read the article

  • How do I install iTunes?

    - by David
    I have an iPhone and run Ubuntu on all of my personal computers. Since I did not want to keep a separate partition with Windows on it for the sole purpose of running iTunes, I attempted to install It using Wine. I installed Wine 1.4 from the Software Center and installed iTunes 10.6.3. When I tried to run it I got a slew of error messages. I hopped over to google where it was suggested that I install it through PlayOnLinux. I did so with the same result. Further googling revealed that iTunes 10.6.x is confirmed to work with Wine 1.5.1 and up. I installed Wine 1.5.1 following the instructions I found and was unable to get it to open. I did the same with 1.5.9 with the same results. I opened the Package Manager and installed the Wine 1.5.9 packages through it, and it appears to have installed properly. When trying to install iTunes I got he error "This iTunes installer requires Windows Vista 64 bit or later". Realizing that Wine uses XP as a default I ran winecfg and changed it to Windows 7. This changed nothing and I tried changing it through winetricks to no avail. I even changed it to Vista with the same results. Does anyone know what is going wrong here and how to fix it? Thanks

    Read the article

  • Cost effective way to provide static media content

    - by james
    I'd like to be able to deliver around 50MB of static content, either in about 30 individual files up to 10MB or grouped into 3 compressed files, around 5k to 20k times a day. Ideally I'd like to put some sort of very basic security around providing the data to ensure that a request is from the expected source, but if tossing the security for a big reduction in price is possible then it's an option. Does anyone have any suggestions other than what I've found: Google AppEngine is $0.12/GB & I believe has a file size limit of 10MB so I'd have to break the data up a bit. So a rough calculation would seem to be that this would cost me about $30 to $120 a day. Or I've seen something like what seems to be just public static content delivery with no type of logic capabilities like Usenet.nl at what I think calculates to about $0.025/GB which would cost me about $6 to $25 a day. Any idea if I'm going about these calculations right & if there might be a better option for just static content on a decently high volume delivery? Again some basic security would be great but if cost is greatly reduced without it then I'm up for that.

    Read the article

  • Prevent Firefox from going to first search result

    - by Dejan
    When I type some terms in the address bar (not the search box!) and hit enter, Firefox searches for those terms on Google, and, depending on some logic either takes me to the search results page or takes me to the first search result. Now, I want it to always take me to the search results page (like Chrome does). Is this possible? And, yes, I am aware that the search box does exactly that, but I'm using it for some other search engine. So, another solution would be to add additional search box, that can also work for me.

    Read the article

  • Internet connection very slow after Linksys configuration

    - by NLV
    Hello We have this network setup Server1 - DHCP server, Domain Controller, AD Lease line for Internet connection From lease line to Linksys router (we dont use wireless though) From linksys to Netgear (24 port Switch) and vonage (VoIP) Netgear to all our machines We configured Linsys with the static IP and DNS server addresses our ISP gave and we have routed it correctly. All our work machines are configured with Get IP automatically DNS server addresses our ISP gave The problem is that none of the sites are getting opened promptly. It is taking around 5 minutes to load google.com. But we are able to ping all the sites. What could be the problem?

    Read the article

  • Making a perfect map (not tile-based)

    - by Sri Harsha Chilakapati
    I would like to make a map system as in the GameMaker and the latest code is here. I've searched a lot in google and all of them resulted in tutorials about tile-maps. As tile maps do not fit for every type of game and GameMaker uses tiles for a different purpose, I want to make a "Sprite Based" map. The major problem I had experienced was collision detection being slow for large maps. So I wrote a QuadTree class here and the collision detection is fine upto 50000 objects in the map without PixelPerfect collision detection and 30000 objects with PixelPerferct collisions enabled. Now I need to implement the method "isObjectCollisionFree(float x, float y, boolean solid, GObject obj)". The existing implementation is becoming slow in Platformer games and I need suggestions on improvement. The current Implementation: /** * Checks if a specific position is collision free in the map. * * @param x The x-position of the object * @param y The y-position of the object * @param solid Whether to check only for solid object * @param object The object ( used for width and height ) * @return True if no-collision and false if it collides. */ public static boolean isObjectCollisionFree(float x, float y, boolean solid, GObject object){ boolean bool = true; Rectangle bounds = new Rectangle(Math.round(x), Math.round(y), object.getWidth(), object.getHeight()); ArrayList<GObject> collidables = quad.retrieve(bounds); for (int i=0; i<collidables.size(); i++){ GObject obj = collidables.get(i); if (obj.isSolid()==solid && obj != object){ if (obj.isAlive()){ if (bounds.intersects(obj.getBounds())){ bool = false; if (Global.USE_PIXELPERFECT_COLLISION){ bool = !GUtil.isPixelPerfectCollision(x, y, object.getAnimation().getBufferedImage(), obj.getX(), obj.getY(), obj.getAnimation().getBufferedImage()); } break; } } } } return bool; } Thanks.

    Read the article

  • Software development is (mostly) a trade, and what to do about it

    - by Jeff
    (This is another cross-post from my personal blog. I don’t even remember when I first started to write it, but I feel like my opinion is well enough baked to share.) I've been sitting on this for a long time, particularly as my opinion has changed dramatically over the last few years. That I've encountered more crappy code than maintainable, quality code in my career as a software developer only reinforces what I'm about to say. Software development is just a trade for most, and not a huge academic endeavor. For those of you with computer science degrees readying your pitchforks and collecting your algorithm interview questions, let me explain. This is not an assault on your way of life, and if you've been around, you know I'm right about the quality problem. You also know the HR problem is very real, or we wouldn't be paying top dollar for mediocre developers and importing people from all over the world to fill the jobs we can't fill. I'm going to try and outline what I see as some of the problems, and hopefully offer my views on how to address them. The recruiting problem I think a lot of companies are doing it wrong. Over the years, I've had two kinds of interview experiences. The first, and right, kind of experience involves talking about real life achievements, followed by some variation on white boarding in pseudo-code, drafting some basic system architecture, or even sitting down at a comprooder and pecking out some basic code to tackle a real problem. I can honestly say that I've had a job offer for every interview like this, save for one, because the task was to debug something and they didn't like me asking where to look ("everyone else in the company died in a plane crash"). The other interview experience, the wrong one, involves the classic torture test designed to make the candidate feel stupid and do things they never have, and never will do in their job. First they will question you about obscure academic material you've never seen, or don't care to remember. Then they'll ask you to white board some ridiculous algorithm involving prime numbers or some kind of string manipulation no one would ever do. In fact, if you had to do something like this, you'd Google for a solution instead of waste time on a solved problem. Some will tell you that the academic gauntlet interview is useful to see how people respond to pressure, how they engage in complex logic, etc. That might be true, unless of course you have someone who brushed up on the solutions to the silly puzzles, and they're playing you. But here's the real reason why the second experience is wrong: You're evaluating for things that aren't the job. These might have been useful tactics when you had to hire people to write machine language or C++, but in a world dominated by managed code in C#, or Java, people aren't managing memory or trying to be smarter than the compilers. They're using well known design patterns and techniques to deliver software. More to the point, these puzzle gauntlets don't evaluate things that really matter. They don't get into code design, issues of loose coupling and testability, knowledge of the basics around HTTP, or anything else that relates to building supportable and maintainable software. The first situation, involving real life problems, gives you an immediate idea of how the candidate will work out. One of my favorite experiences as an interviewee was with a guy who literally brought his work from that day and asked me how to deal with his problem. I had to demonstrate how I would design a class, make sure the unit testing coverage was solid, etc. I worked at that company for two years. So stop looking for algorithm puzzle crunchers, because a guy who can crush a Fibonacci sequence might also be a guy who writes a class with 5,000 lines of untestable code. Fashion your interview process on ways to reveal a developer who can write supportable and maintainable code. I would even go so far as to let them use the Google. If they want to cut-and-paste code, pass on them, but if they're looking for context or straight class references, hire them, because they're going to be life-long learners. The contractor problem I doubt anyone has ever worked in a place where contractors weren't used. The use of contractors seems like an obvious way to control costs. You can hire someone for just as long as you need them and then let them go. You can even give them the work that no one else wants to do. In practice, most places I've worked have retained and budgeted for the contractor year-round, meaning that the $90+ per hour they're paying (of which half goes to the person) would have been better spent on a full-time person with a $100k salary and benefits. But it's not even the cost that is an issue. It's the quality of work delivered. The accountability of a contractor is totally transient. They only need to deliver for as long as you keep them around, and chances are they'll never again touch the code. There's no incentive for them to get things right, there's little incentive to understand your system or learn anything. At the risk of making an unfair generalization, craftsmanship doesn't matter to most contractors. The education problem I don't know what they teach in college CS courses. I've believed for most of my adult life that a college degree was an essential part of being successful. Of course I would hold that bias, since I did it, and have the paper to show for it in a box somewhere in the basement. My first clue that maybe this wasn't a fully qualified opinion comes from the fact that I double-majored in journalism and radio/TV, not computer science. Eventually I worked with people who skipped college entirely, many of them at Microsoft. Then I worked with people who had a masters degree who sucked at writing code, next to the high school diploma types that rock it every day. I still think there's a lot to be said for the social development of someone who has the on-campus experience, but for software developers, college might not matter. As I mentioned before, most of us are not writing compilers, and we never will. It's actually surprising to find how many people are self-taught in the art of software development, and that should reveal some interesting truths about how we learn. The first truth is that we learn largely out of necessity. There's something that we want to achieve, so we do what I call just-in-time learning to meet those goals. We acquire knowledge when we need it. So what about the gaps in our knowledge? That's where the most valuable education occurs, via our mentors. They're the people we work next to and the people who write blogs. They are critical to our professional development. They don't need to be an encyclopedia of jargon, but they understand the craft. Even at this stage of my career, I probably can't tell you what SOLID stands for, but you can bet that I practice the principles behind that acronym every day. That comes from experience, augmented by my peers. I'm hell bent on passing that experience to others. Process issues If you're a manager type and don't do much in the way of writing code these days (shame on you for not messing around at least), then your job is to isolate your tradespeople from nonsense, while bringing your business into the realm of modern software development. That doesn't mean you slap up a white board with sticky notes and start calling yourself agile, it means getting all of your stakeholders to understand that frequent delivery of quality software is the best way to deal with change and evolving expectations. It also means that you have to play technical overlord to make sure the education and quality issues are dealt with. That's why I make the crack about sticky notes, because without the right technique being practiced among your code monkeys, you're just a guy with sticky notes. You're asking your business to accept frequent and iterative delivery, now make sure that the folks writing the code can handle the same thing. This means unit testing, the right instrumentation, integration tests, automated builds and deployments... all of the stuff that makes it easy to see when change breaks stuff. The prognosis I strongly believe that education is the most important part of what we do. I'm encouraged by things like The Starter League, and it's the kind of thing I'd love to see more of. I would go as far as to say I'd love to start something like this internally at an existing company. Most of all though, I can't emphasize enough how important it is that we mentor each other and share our knowledge. If you have people on your staff who don't want to learn, fire them. Seriously, get rid of them. A few months working with someone really good, who understands the craftsmanship required to build supportable and maintainable code, will change that person forever and increase their value immeasurably.

    Read the article

< Previous Page | 825 826 827 828 829 830 831 832 833 834 835 836  | Next Page >