Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 03/21/2013 in all areas

  1. My twitter wall doesn't stop showing me nice things to link to http://discover-devtools.codeschool.com/ I watched the first two videos and, even if they are very basic, I already learned something that wasn't aware of.
    7 points
  2. Hey Friends of Webanalytics, I've finished the main work on porting Wanzes GA into a PiwikAnalytics Module. Just uploaded it to the modules directory. It does pretty much the same like GAModule So take a look at the module post: http://processwire.com/talk/topic/1609-processgoogleanalytics/ You could download the module in the directory or directly from my site: http://misterui.de/site/assets/files/1087/piwikanalytics.zip Cheerio
    4 points
  3. Module: MinifyHTML Simple module, didn't even plan to add it to the forum untill owzim asked me to. Description: This module takes the HTML output and then minifies it, and removes all comments from it but leaving the conditional comments in place. Usage: Just install, nothing to configure, works automatically. URL: http://modules.processwire.com/modules/minify-html/
    4 points
  4. Once the multi-language page names module is stable and in production use. So will probably start developing the namespaces stuff in May. Namespaces are the primary aim, with PSR-0 being a natural extension of that. I plan to shoot for PSR-1 too if it looks like it'll benefit our audience. Also as a natural extension to these updates, I am interested in supporting Composer, and will do so if possible. I agree it's a great asset for PHP, though am less certain if it's as much of a draw for ProcessWire's primary audience. Throughout all of these 2.4 updates, I feel a lot of care will have to be taken to balance these updates with other improvements to the system. After all, our audience is primarily web designers and developers, and less purely PHP coders. I think a majority of our users doesn't actually care about namespaces, PSR standards and Composer, so I don't want to get too far off track, even if I personally have a strong desire for these things. But the driving aim of 2.4 is to help ProcessWire benefit from PHP 5.3+ as much as possible. This likely includes all of the things outlined. I've always been interested in this. PW started as just the content framework, and underneath it still is. I'd like to retain and reinforce those roots. But don't think I want to actively maintain PW as two projects until there is real need for it (just as a matter of resources). I'd like to make it easy for people to integrate components if they want to, and I think Composer is probably the way to do that. But don't currently see a need for any of our core components to come from another framework. Though I'm always open to the idea if there is a real benefit to our users. IoC is not a new concept. ProcessWire was written with an emphasis on best practices, patterns and concepts like this, everywhere beneficial to the project goals. The primary need for unit tests in PW has been with the selector engine, both DB and in-memory, and the consistency of the two. Luckily this is an active project, and it has already been hugely helpful and influential in ProcessWire 2.3 (thanks to Nik). In fact, I would probably consider the issues discovered and resulting solutions the most important upgrade to come with ProcessWire 2.3.
    4 points
  5. pw.aleady have proved.libraries for all this
    4 points
  6. Actually it has support now, and it's there in 2.3. But it's considered "beta", so I don't recommend using it on production sites until I'm at least using it on a production site (which should be about a month from now). But I think it's perfectly fine to go ahead and work with it now for testing and/or development.
    3 points
  7. Suggestions are very much welcome and I'd like to hear what Ryan thinks about this too. On the other hand, like @WillyC pointed out above, PW does many - if not all - of the things you've mentioned here very well and still has a lot of potential to grow and evolve. The way I see it, being geared towards slightly more specific needs than other popular frameworks (namely content management) allows PW to focus on what's really important there instead of trying to become everything for everyone. Don't get me wrong, though - I'm not saying that all other frameworks are somehow chaotic. I'm sure they all have their strong points and specialties, my point is that so does PW. Anyway, there have been discussions about integrating other libraries with PW around here and some people still use things like Flourish for certain tasks. I've personally used parts of Zend Framework in the past, but these days I seem to find very few reasons for that anymore, except for certain very specific things. PW is flexible enough to let you work exactly how you prefer and if you prefer to use other tools for some tasks there's nothing stopping you (even if those aren't bundled with PW code.) Last but not least I'd like to point out that unit tests for core code are on their way. Don't worry, we'll get there Edit: Forgot to mention that I'm not (yet) familiar with Composer, though it does sound interesting. Will have to take a closer look. Thanks for the tip!
    2 points
  8. I haven't given up on this, and I came quite far. It's been a couple of months since I worked on it - last couple of months have been kind of hectic for me, so I haven't made any recent progress. I do want to work on this, and still believe it's possible - since I gave up on using $trackChanges, the approach I'm using should be pretty safe. Probably a couple of weeks of work left on this at least though, and not sure when I'll get back to it...
    2 points
  9. In addition to what Nik mentioned, I would see if you can narrow down where the bottleneck is. Add the following to the beginning of each function: $timer = Debug::timer(); And add the following to the end of each function: echo "<p>" . __FUNCTION__ . " with page $category->path executed in " . Debug::timer($timer) . " seconds.</p>"; That might help to narrow it down. But if these function calls really are generating navigation with 400+ items, I probably wouldn't expect it to be lightning fast. It would be a good candidate for using MarkupCache. To use MarkupCache, replace all your "echo string" lines in the function with "$out .= string", so that you are populating a variable with the output rather than echoing it. Ideally your functions return the output so that the caller can do the echo, but you could also just put your echo at the bottom of the function. Once you've done that, you can use MarkupCache by putting this at the top of your function: $seconds = 86400; // 1 day, or 3600=1 hour $cache = wire('modules')->get('MarkupCache'); $out = $cache->get("homeHeader($category)", $seconds); if($out) return $out; // or echo $out; // ...the rest of your function code... $cache->save($out); return $out; // or echo $out;
    2 points
  10. HI Mark I tend to stay away from Videos myself, basically because I believe people should absorb information at their own pace - well, that and have you tried copying and pasting from a video?? I will come up with more tutorials; I have a couple planned..... Joss (PS: if you want to pay me to make videos, I am happy to oblige! Been in media production for 35 years .... I am not cheap, however )
    2 points
  11. Hi! Just finished my first module This module adds a new "Google-Analytics" Page in your Admin-Panel and displays various Statistics from a Google Analytics Account. It uses the JQuery plugin "jqplot" to display the charts. Github: https://github.com/w...GoogleAnalytics Modules directory: http://modules.proce...ogle-analytics/ Features Visits by Date (Chart) General Statistics about Visits (Total visits, Visit duration, New visitors, Returning visitors etc.) Demographics: Countries, Cities, Languages System: Browsers, Operating Systems, Screen Resolutions Mobile: Operating Systems, Screen Resolutions Pageviews by Date (Chart) Top Content Traffic Sources: Keywords, Referral Traffic by Domain and URI Choose a default date range displaying statistics: last 24 hours, 2 days, 1 week, 1 month etc. Custom date range by setting a "start date" and "end date" Requirements Google Account and Analytics Account A Project in the Google APIs Console cURL Installation 1) Create a Project in the Google APIs Console: Create a new Project in the APIs Console: code.google.com/apis/console/ Under Services, enable the Analytics API Under API Access: create an Oauth 2.0 Client-ID Give a Product Name, choose "Web-Application", Domain doesn't matter Enter a Redirect URI to the GA-Page in your Processwire Installation: http://yourdomain.com/processwire/google-analytics/ Notes: The redirect URI must exactly match with the URL from the new "Google Analytics" page in Processwire. Open the Page and copy the URL from the address-bar (localhost does work too!) The project created in the APIs Console can be reused for every Processwire installation using this module. You just have to enter more redirect URIs 2) Install the module: Place the module's files in /site/modules/ProcessGoogleAnalytics Install the Module via the Admin-Panel Enter Client-ID and Client-Secret keys from the created project in the module config Load the newly created page "Google-Analytics" and click on the button "authenticate" Grant the module access to the Analytics Data Choose a Google Analytics account (Domain) from the dropdown Done: You should see the statistics. Check out the module config options for further customization In order to let other users see the Google Analytics page, you must give their role access to the "ga-view" permission. Ps. Processwire is awesome and so is this community!
    1 point
  12. First of all: I love Processwire and feel a strong urge to migrate all my clients systems from MODx Still, I have a little problem just now: I need to add two direct children to my front page (the top of the tree, which is opened on page load). I want the front page to appear in my menu (Already did this with MarkupSimpleNavigation) and have two direct child pages. Is there any way to accomplish this? I thought about just using the top-element as an empty one and somehow mark another page, which can have as many children as I want, as the default front page.
    1 point
  13. Thought I'd point out a fantastic resource for placeholder images. Rather than the usual grey boxes or kittens... http://www.hhhhold.com The usual /300x400 urls apply. Also if you want to avoid seeing the same images crop up again and again, you can use a tiny js file https://github.com/ThisIsJohnBrown/hhhhold-js You won't go back!
    1 point
  14. Hi Mark, Thanks for the compliment. I'd agree with Joss that written tutorials are better for learning at ones own pace. I think video tutorials work in cases where I have show off some broad concepts - I usually record a tutorial for a client after I've finished a build just to cover the basics of how to do the main things they need to. I'd be reluctant to record any tutorial vids where code is involved for various reasons: The code I hash together might not be best practice considering my php noob status. *I* understand what I've written but it might not make sense to someone else - it's more than likely very verbose and not at all DRY videos aren't searchable as Joss pointed out Cheers Marty
    1 point
  15. There's really not much to it, it's nice and simple. This article is a great intro to Composer: http://blog.fortrabbit.com/handle-your-dependencies-with-php-composer/
    1 point
  16. I missed the last course and subscribed to their maillist to be informed for the next course. Received today my invitation to enlist on Human Computer Interaction, starting April 1st. So if anyone want to join too, here is the link: http://www.coursera.org/course/hci
    1 point
  17. Make it both Kidneys - oh, and your dog's kidney too. The one I really want to do is going to take the longest (for a variety of reasons), but I think I will do one about creating and managing blocks of information in traditional CMS style. Can't do it immediately, however, as I have some orchestral stuff to arrange first, which always messes my spare time up.
    1 point
  18. In this case, you'd probably have the reverse the logic of the addable() hook. You'd give them the template access. But your addable() and editable() hooks would take it away. That's one approach you could take anyway... But if the blank templates list was the only issue before, you might just want to edit that /wire/modules/Process/ProcessPageAdd/ProcessPageAdd.module file and prepend the getAllowedTemplates() function with 3 underscores, renaming it to: ___getAllowedTemplates(). Then it becomes hookable, and you can modify the value that it returns from your module. Currently in your case, it's returning nothing (since they have no edit access on the template). So you'd want to make your hook modify the return value to include the templates you want them to be able to select from. If you find this worthwhile, let me know and I will update the core to have that function hookable.
    1 point
  19. I think that some kind of aggregate fieldtype that encompasses others would be a fine way to go. I don't see it as something I would personally use all that often, but I can understand why others might find it useful–it's a worthwhile idea. From the implementation side, a single item repeater probably would be the quickest/simplest way to implement such a type of grouping. But there are some significant differences to the point where it may be better off as it's own fieldtype, perhaps that extends FieldtypeRepeater. Either that, or something new that just takes a similar approach. After all, an aggregate field wouldn't need but 1 "ready page", it wouldn't need a repeater parent page, and could be built around the Fieldtype class interface rather than the FieldtypeMulti interface. It would have less overhead than repeaters would in some areas. There are surely even more efficient ways it could be built, but the repeater-model approach would be the most likely way to make it something tangible in a shorter period. I'll keep marinating on it here.
    1 point
  20. Hello Ryan, In the introduction you write that there is an issue when using ProCache with the LanguageLocalizedURL module. Is this still an issue and if so when do you expect it will be save to use? Thanks BTW, and thank you and all contributors for making ProcessWire for what it is (and will be in the future). With Processwire I feel like starting to build what I want instead of first stripping what I don't want. I've tried several CMSs and examined how far I could get (with my limited coding capabilities) to make exactly what I want. Processwire is the first that hasn't stopped me and doesn't force me to make all kinds compromises.
    1 point
  21. I guess we have no further development on this. I suspect that the best option for most people is to just try to get their repeated-work process as painless as possible. One option I have used before is to actually have the entire workflow (including any work/edits that the "client" does) handled on a staging server/site and then just manually or automatically (cron job) mirror the entire thing to a live server/site. If you do it the manually-triggered-mirror way, you can still develop in a relatively safe place and let the client make edits etc, and perhaps just give them a simple one-button mechanism to trigger the mirror script. Unfortunately I think that anyone who has been around the block for a few years (myself included) would testify that there is no easy way to do this stuff and that it depends on the site/context etc. I've certainly never seen a perfect system that didn't have (at least) occasional problems or require some level of manual work for the developer. Not when it comes to anything more complex than a simple blog anyway. Throw e-commerce or large traffic into the mix and it gets even more painful! Perhaps time would be better spent discussing our own workflows so at least people have some ideas they can draw from. It seems a shame for any of the talented devs here to spend too much time banging their heads against a wall to only come up with part solutions or sidesteps that don't really solve the inherent problems of content management and deployment.
    1 point
  22. A tip. When you click on the number of each post (upper right corner of the post box) it gives you the direct link of the post so you can share it easily.
    1 point
  23. Yes, I have used Joomla for years and am abandoning it. My first sites were made with the Geocities site builder (1998 ish?), then hand coding, and eventually Dreamweaver. What disappointed me most about moving to things like Joomla and Wordpress was the loss of the design control I had with Dreamweaver, but I wanted the overall site management I got with the CMS. The joy of ProcessWire for me is that I can move back to to that Dreamweaver/raw coding design control (which is so much faster) while still retaining the power of a CMS. I dont have to design while worrying whether I can actually make this work in Joomla. Once you think of it in that direction, once you realise that PW is not restricting your basic layouts, then it all becomes much, much easier!
    1 point
  24. Yes it works. Page is added and image is saved to page. Working example is here: https://gist.github.com/somatonic/5207537
    1 point
  25. Hello my PHP addicted friends Since I see so many struggling with JS (read: jQuery) in the forums, here is a good learning resource via Cody Lindley's twitter http://superherojs.com/
    1 point
  26. i'm sure most of you know the mother of all tutorials which has been relaunched as a website (was an ebook before) recently: http://jqfundamentals.com/
    1 point
  27. hey i'll add to the rant @totoff - you mean themeforest i think ? i think the prefabs are necessary for some devs and users, and for certain projects; I'm a sworn PW user, but i have a site running joomla because there is a really good invoicing system called nBill; and some CMS have advanced prebuilt addons (a.k.a. plugins/modules/components etc..) like community, calendars etc.; so you have to do research and consider budgets before you choose the cms for the project. When you can use PW you'll be relieved, it has the best admin UI hands down of any CMS. i just got done converting a wordpress template, one that I liked a lot, to use in a processwire site – it was really educational; i was able to see how the wp theme was coded and it wasn't a pretty site. Tons of code bloat (but all necessary to make the theme usable to a wide audience); and then i was able to go and attain all of the functionality of the wordpress version and more using 1/20th of the code; and i'm able to do really cool things now with the content management, media (audio, video) that would be completely impossible in WP, or would be a ridiculous hack job...
    1 point
  28. We just launched a new e-commerce website built off of ProcessWire. We worked off of Apeisa's shopping cart module as a base and were able to get the system integrated with Authorize.net's DPM for payments. We had a to do a lot of custom programming for this client as they needed sales tax, promo codes, and different shipping rates for different zip codes. I was delighted throughout the whole process with how much I was able to tailor the editing experience for the client as well as the visitor's experience on the page. The client had several last minute requirements which we would never have been able to implement in the time we had if we were using a different CMS and didn't have PW's API and custom field system. I would like at some point to release some of the new shopping cart code (shipping rates by zip code, sales tax, promo codes) to the rest of the community, but as it stands it's not modularized/generic enough and the code is in too many different pieces to make it practical. If I have time outside of work I will try to see if I can make it more distributable so that I can give back something to PW Special thanks to Apeisa for his input when we were getting started with this. http://www.harkenslandscapesupply.com/
    1 point
  29. Thank you Ryan & Apeisa. You guys are the best Couldn't have done it without you!
    1 point
  30. Here's how to add your own styles in case someone is wondering. Before doing so, you need to add it into your text field under input, cke editor settings, cke toolbar, and add "Styles". Then you can modify styles.js under "inputfieldCKEditor/ckeditor-4.1.0/styles.js". Pretty cool. You can add block styling and inline styling. Though the block styling could cause problems with site layout and look if you are not careful.
    1 point
  31. fields in the (folder) - data1 ( populateted with the header value "color" forexample ) - data2 ( populateted with the header value "size" forexample ) - data3 ( populateted with the header value "amount" forexample ) - data4 ( not set ) if you know, that data4 is false, then you don't have to get data4 field from it's children. ( This way, you're able to have a three column table )
    1 point
  32. Ah, I understand now. Thanks, Ryan, back to building! I think you have managed to create a CMS that is, contrary to Wordpress, Joomla or Drupal, fun to develop in.
    1 point
  33. I'll get them committed here soon. But attached is a file that has them added: ImageSizer.php public function getFilename() { return $this->filename; } public function getExtension() { return $this->extension; } public function getImageType() { return $this->imageType; } public function getWidth() { return $this->image['width']; } public function getHeight() { return $this->image['height']; } public function isModified() { return $this->modified; } I love the video! well done.
    1 point
  34. In most cases there's not a lot to it: 1- Transfer all files from your local environment to the desired location on the 'webspace'. You would probably do this via ftp. I assume you know how to do this. Make sure to also transfer the .htaccess file, because sometimes this is hidden. 2- Make a database export of your local database (via PHPMyadmin or other tools). Do a database import of this stuff in your new database on the webserver. 3- Check the database credentials in the file site/config.php on the server (near the bottom of the files). If needed adjust to the online environment and databasename, login etc. That's it. All things should work now. There are a couple of things to keep in mind though: - if locally you developed the site in a subdirectory (e.g. localhost/test/) and you move the site to the webroot or subdomain, most probably links to files and images inside richtextarea's stop working. You would have to adjust the paths in your database export before importing it. - sometimes you need to change directory permissions for certain dirs to write permissions.
    1 point
  35. For backend hook include additional script. Take a look the InputfieldDatetime.module ___render() is hookable (three underscores) So you would roughly create an autoload module that hooks into InputfieldDatetime::render to initiate that a datetime field is rendered somewhere and a good point to add our script: $this->addHookBefore("InputfieldDatetime::render", $this, 'addScripts'); And in the function add the script like ryan showed. public function addScripts($event){ $this->config->scripts->add($this->config->urls->templates . "your/script.js"); } And it will add it to the admin, when a Datetime field is rendered. Ahhhh form builder! You can add that line from Ryan to form-builder.inc template... You can't change the InputfieldDatetime module itself with hooks, just to additional stuff when a datetime is "rendered".
    1 point
  36. I'm not quite sure why this would be any slower when using functions, but here's a couple of things that you could make a bit more effective. Some of it is mostly cosmetic though. This bit of code: $category = wire('pages')->get("/kategorije/$category/"); foreach($category->children as $subcategory) { $subcategories[] = $subcategory->id; } $array = implode("|",$subcategories); $articles = wire('pages')->find("subcategory=$array, template=article, sort=-date"); Could be written like this (letting the core do what you done yourself): $array = wire('pages')->find("parent=/kategorije/$category/"); $articles = wire('pages')->find("subcategory=$array, template=article, sort=-date"); The other two functions have the same bit of code, but with $subcategory->name. I would have thought that doesn't even work.. does it? I think you meant the same thing in all those cases anyway. Then, if you're calling the same functions for the same categories and they all do the same subcategory-thing commented above, it would be better to construct the subcategories just once and use the same array three times. Just give the subcategory array as an additional parameter to the functions you're calling. Maybe there's something there I didn't see right away, but I hope these help even a little bit . The effect isn't necessarily huge as ProcessWire does a good job caching previously fetched Page objects, but I guess it's worth a try anyway.
    1 point
  37. I see what you mean. This would be my setup: 1. Create the normal structure (without the homepage children) 2. Add a checkbox fieldtype called "homechild" to your templates 3. Add the pages you want to appear under home directly under home and select the checkbox Your pagestructure would look like this: - Home -- Page 1 --- Page 1 child -- HomeChild1 -- HomeChild2 Use code like this: Checkout this gist. (edited the original post I made tomorrow to use gist instead - thanks soma) Written in the browser, but you should get the idea!
    1 point
  38. Follow up note: jquery pagination for comments is very helpful. It keeps things nicely organized and compact. I used Pajinate but there are quite a few options. I'm probably not telling most on this board anything they didn't already know but for those that don't... there you go.
    1 point
  39. One day I will do this properly completel with examples, but for the moment, this is a hints and tips approach Creating a proper video tutorial First of all I have to say that I am not in favour of video tutorials for myself, especially covering a subject which is basically concerned with reading and writing. However, they do work well as an overview and many people like following them. The Big Wrong Things "So, what can go wrong? I mean, I know the subject, I sit there coding every day, this is my world - just turn on and record. What is the problem." The list is, sadly, endless. But here are a few things that can ruin your plans (and spoil my viewer experience): Mouse pointer waving around pointlessly Bad visual quality so it is unreadable at full screen Irrelevant windows all over the place Endless leaping between this screen and that screen and this and that folder, application and so on Muttering Repetitive, "I will just ... er,...not there ... oh yeah, that one.... oh, forgot a bit..." Forgetting to introduce not just the video but the various parts Tiny font size Buzz words, nicknames, unexplained short cuts ... Too long Trying to tackle a too complicated a subject And there are many more. So, how do the pros do it? I probably have a bit too much fun listing all the things I have done over the years just to confuse people, but the truth is that my main role has been rather bland - I have produced and/or recorded THOUSANDS of sound tracks for corporate productions, and video edited and even directed quite a few too. These have tended to be big budget affairs with professional camera operators, enormous Grass Valley editing suites, professional presenters and voice overs and so on. But that does not mean that the skills eat up the budget - it is just the fees that do. The skills are straightforward and logical and are free to anyone who wants to practice a bit. So here is a bullet pointed step-by-step guide. 1. Preparation Knowing what you are talking about ISN'T preparation - it is nothing more than a knowledge base. Most technical videos are written by people who do not know the subject but do the research and turn it into something meaningful. Trust me, even if you know the subject inside out you still need to do research and preparation: What level of expertise does the audience have? What is the conclusion of your tutorial? Do you know how to explain every action your will make? If you go through what you are trying to do correctly, you will find out there are lots of things that you know instinctively that you realise others might not know, or you have no idea how to explain. List them. Break it down. Remember that your audience cannot read your mind, so look for the things that you frequently skip over that may lose someone not living in your head. 2. Script Writing I cannot emphasis this enough - WRITE A SCRIPT!!! I don't care that YOU think you are the best ad libber around - you aint. I probably am, but I would never do a lesson unscripted. Even politicians who do long speeches "unscripted" don't really - they script every word and then learn it inside and out over days. Writing scripts scares the bejeesus out of people, which is why there are so many terrible, unscripted tutorials out there, but it is not as hard as it seems and it will make the rest of the process far easier in compensation. Start with a list. Coding tutorials, in particular, are nothing more than a list of actions - write this, press that, check this. So, when writing your script - start by doing that. Make each action as short as possible: "Open a new file" "Write <?php at the head" "Save file" and so on. It is as boring as hell, but you will not only get the lesson in the right order, you will quickly find out what is missing or what does not work. Break it into scenes. I think most people think that scenes in videos and film are three or four pages long. Well, to be honest, a lot of them are just a few lines. Think of it as a paragraph. Take my bullet points above; creating a new file and preparing it to be used as a php file is a complete action - it is a scene. The next scene maybe setting out two or three empty functions for one particular aspect, or perhaps preparing some other files. These scenes are intentionally short and this will become important later. Turn it into SPOKEN English/other language. This is distinct from language to be read. When we speak, we use short phrases, breath a lot, use huge amounts of semi-colons and frequently start sentences with "and." Your script will be spoken out loud and when you start turning your list of actions into sentences, you must remember this. Read each sentence out loud as you finish it; not in your head or mumbling, but right out loud at the volume at which you will record the finished video. Do not run words together, remember to hit the consonants NICE and clearly and look for the emphasis words; you can ALWAYS use capitals if that HELPS. Recording This is your make or break moment! Actually, no it isn't - you just did that when you wrote your script. If you have written the script well, the the next stages are predestined to be okay. You will make mistakes, but they will be easy to correct. It will only go wrong if you have left stuff out of your script, so read it through a few times to make sure it is perfect. Then PRINT IT OUT. Should you rehearse? Yes and no. You will not be recording this in one lump (that way lies madness) so it is a waste of time rehearsing the entire thing. However, rehearsing each section before recording is a good idea. You need to work out your moves between screens and how you speak the words. In the pro world we would only do a guide vocal at this point and then the voice over would come into my studio with a tidied script and we would re-record the final version. That is why pro stuff is so good. You can take that route if you wish, but the chances are you want to talk as you go. Take One You have written this in scenes, so only record one scene at a time. Play it back when you are happy and make sure it makes sense. These are now bite sized so are much more manageable that working in huge chunks. Put your screen recorder into record and wait a few seconds before you start talking or making screen actions - it will take the pressure off. In the pro world, when the director yells ACTION, there is always a pause while the performers get their brains into gear. And good thing too - otherwise their first words would be a reaction to the shouted word "action" and not as part of the scene as they should be. This applies as much to a corporate as it does to a drama. How many takes you do is up to you - but do not be pissed off if you have to do several. Coders are meant to be perfectionists, and doing a voice over and screen shots requires just the same attitude and degree of patience. What speed should you speak at? Slower than you think is right. This is not a commercial and you are not a professional voice over. Speaking clearly at speed takes YEARS of practice and even some of the best voice overs never get it right. But in corporate presentations, speaking fast is an absolute no-no. Speak evenly, in a considered, non-patronizing way, emphasising all the important words and resist the temptation to speed up towards the end of the sentence. Emphasis is a funny beast - many people believe that we emphasise by speaking louder. But in reality, we emphasise by slowing down the word and leaning on one particular syllable. Which word and syllable you emphasise is important too. There are two main forms of emphasis - importance and comparison. Importance is where you want to make something the most important bit of information. That can be a verb or an adverb or adjective. "It is VITAL that you shut the door." Vital is the important word here - you are emphasising the importance of the action "shut" by saying how vital it is. Comparison is when you are offering an either or - even if you are not explaining or referencing what the other thing might be. "It is vital that you shut the DOOR" Here it is now the door that is important and we are saying you should shut the door, rather than a window or cupboard or anything else. It is making a comparative. You can get it wrong. "What did you do in the nineteen seventies?" "I went to school in the nineteen SEVENTIES." That is the wrong answer, even though it is the correct words. You have made a comparative of the date. You should have said: "I went to SCHOOL in the nineteen seventies." On your printed script as you rehears, underline words that you should emphasise to make sure you don't start making it confusing simply by emphasising the WRONG words, and make marks / where pausing slightly / will also help with clarity. Your reading will be much better and the whole process much easier. Editing. You can ruin good footage in an edit, but you cannot do a great edit out of terrible footage. Do not rely on the edit to save you - get it right at the recording stage and the editing will be more fun. You have written this in scenes and when you edit, respect those scene breaks. You probably broke it up at logical points so it will not help if you try and run it altogether seamlessly. Pause between scenes - if there are major breaks, consider fading to black and slipping in a caption; it might give people break points to stop and take stock and it will help with the clarity. Do not put music over the main content - not that sort of video. Clean up the sound as you go - remove any paper rustles or next doors dog barking! Think about pace - keep the edit pace even. Avoid tricks. Just stick to fading in and out of black - don't spiral stuff in and out or do other things that your editor can do. Again, wrong sort of video. People are not looking at this for your editing skills, but your coding skills. They should not notice the edit at all - just absorb the wonderful knowledge that you wish to impart. Try to avoid zooming into a screen - the quality can fall apart very quickly and you will have achieved nothing. Presenting your final edit You have gone to the trouble of writing a script, so when you put your video up, maybe put the script up there with it - might help people as a quick reference! Make sure you précis your video with a good written summary of what it is about and what you hope the viewer will learn/achieve. And that is about it! I have not covered every single pitfall and problem you will encounter - that would be a book's worth and a boring one at that! But hopefully I have given you some fairly straightforward, easy to follow advice that will just help your next video turn the corner from "nice chatty person telling us something" to "expert giving serious guidance." Happy filming! Joss
    1 point
  40. I appreciate your concern, and I'll try my best to clarify. I'm the copyright owner of all code used in these modules (FormBuilder, ProCache). I'm also the copyright owner of the module interfaces and the ProcessWire core. I make a point not to rely on any code I've not written personally or that other people have contributed to. But I think you are looking for clarification on a bigger picture, so I'll instead focus on others that might want to create stuff in ProcessWire. We do not require that all websites and modules produced on top of ProcessWire's framework be free, and I don't know of any tool like PW that does. What I don't want people to be able to do is turn ProcessWire itself into a commercial product or be able to change ProcessWire's license. But I do want them to be able to use ProcessWire in the manner it was intended. ProcessWire is intended and built as a platform to manage and execute modules. I do not support extending ProcessWire itself with anything but GPL v2, but I do support ProcessWire being used as the tool it was meant for, without restriction. Years ago, in talking with other CMS developers for projects much bigger than ProcessWire, they'd suggested to use GPL v2 but make clear that the project encourages and supports an ecosystem that is not against commercial modules (which I've done on several occasions), so that there is no grey area. In fact, ProcessWire's API and architecture reflects this intention. When you build a site or module on top of ProcessWire, you are not extending ProcessWire--you are using it as a tool for exactly what it was designed for. For the sake of our users, I want to be clear that I consider a module running on ProcessWire no different than a website running on ProcessWire–they use the same API and in the same way. This architecture is intentional. And I certainly don't want people to think that their own websites, content, images, assets, etc. are GPL as a result of running on or being delivered by ProcessWire. For others making commercial modules, I am also okay with fees charged for 3rd party modules to be support/service/distribution fees rather than license fees (which is the route I like, though wouldn't require it). I don't support any kind of obfuscation though, and wouldn't list obfuscated modules in our directory. I need to be able to confirm that something is coded with attention towards security before I'd list it in our directory.
    1 point
  41. My suggestion: Start with the blog profile and build the rest of your site around. I just finished a site this way - the blog lives under a "blog" menu. The advantages: You have all the features of a blog "out of the box", in my case I didn't even need them all. Take a look at the blog profile: There's a file called "blog.inc.php" with functions for searching and listing posts, comments etc. which you can reuse also on other parts of the site. All the markup of the blog is separated in a folder "markup", should you want to change this. Cheers
    1 point
  42. Hi FuturShoc, There was this from Nico you might have seen: http://processwire.com/talk/topic/899-bundleblog/?hl=blog I'm in the process of adding blog sections to some existing PW sites and creating a couple of new dedicated blogs from scratch. What I'm finding is that each one will be different in terms of the functionality required. It's be nice to have something 'drop in' but I think it'd be difficult to cater for every need. Cheers Marty
    1 point
×
×
  • Create New...